Классика баз данных - статьи



         

Сомнения и размышления - часть 2


Заметим, что речь идет о приложениях категории OLAP, в которых принципиально участвуют непредвиденные («ad hoc») запросы аналитиков. В частности, в этих приложениях могут запрашиваться не только агрегатные, но и «атомарные» данные. Но при этом хорошо известно, что в СУБД с хранением данных по столбцам операция извлечения строк таблицы является очень дорогостоящей. Так что нужно еще разобраться, до каких пределов Vertica будет побеждать СУБД с хранением данных по строкам. Здесь все не так очевидно.

Что касается преимуществ H-Store в приложениях OLTP, то, конечно, очень впечатляют примеры классов транзакций, для которых свойства ACID обеспечиваются автоматически, без накладных расходов на управление транзакциями. Очень радуют возможности достижения высокого уровня доступности за счет репликации данных. Однако рассмотрим более внимательно, за счет чего на основе H-Store удалось добиться таких высоких показателей на тестовом наборе TPC-C.

  1. Приведение классов транзакций TPC-C к форме, в которой для сериализации не требуются средства управления транзакциями. Не знаю, сколько времени это заняло у авторов статьи, но задача эта явно не тривиальна, поскольку для ее решения потребовалось специальным образом разделять и реплицировать базу данных. Конечно, авторы говорят, что в будущем у них должны появиться специальные инструменты, автоматизирующие этот процесс, но, насколько я понимаю, подходы к созданию таких инструментов очень туманны. Для транзакций, не обладающих специальными свойствами, преимущества H-Store не оценивались.
  2. Отсутствие сетевых взаимодействий между приложением и СУБД за счет использования для разработки приложения механизма хранимых процедур. Более того, хранимая процедура в среде H-Store выполняется в том же адресном пространстве, что и СУБД. Другими словами, фактически мы имеем дело с СУБД, встроенной в приложение. И здесь возникают сразу два сомнения.

    Во-первых, какой механизм разработки приложений, в конце концов, будет предложен пользователям? Пока, насколько я понимаю, в среде H-Store нет никакого механизма разработки приложений (используется программирование на языке C++ на том же уровне, что и программирование самой СУБД).


    Содержание  Назад  Вперед