Представлен первый стабильный релиз СУБД SciDB
Примечательно, что инициатором проекта SciDB выступил Майкл Стоунбрейкер, создатель СУБД Ingres, VoltDB и PostgreSQL, а в разработку были вовлечены российские научные учреждения, такие как НИИСИ РАН и ГАИШ МГУ (сотрудники данных организаций давно участвуют в разработке СУБД PostgreSQL). SciDB не похожа на классические СУБД и в ущерб поддержке некоторых привычных возможностей оптимизирована для обработки и анализа "сырых" данных, которые интенсивно читаются, но почти не изменяются. СУБД не рассчитана на обработку транзакций в реальном времени (OLTP), не поддерживает ACID (атомарность, непротиворечивость, изоляция, долговечность) и журналирование, обеспечивая транзакции лишь на минимальном уровне.
Возможности SciDB сосредоточены вокруг сложной аналитики, для которой стандартная реляционная модель оказывается неэффективной - хранилище оптимизировано для единовременной записи мало структурированных данных и их последующего интенсивного чтения. Вместо добавления отдельных строк, применяется подход загрузки сразу больших порций данных. Хранение данных организовано в виде многомерных вложенных массивов, для обработки которых вместо SQL задействованы языки AQL (Array Query Language) и AFL (Array Functional Language).
AQL напоминает SQL, но предназначен для формирования запросов к многомерным массивам вместо множеств, т.е. позволяющий учитывать соседние позиции элементов при помощи оператора REGRID, выполняющего действия сходные с MapReduce. Для обработки данных внутри СУБД подготовлен язык AFL, которые позволяет создавать встраиваемые процедуры. Пример обработки данных подробно описан в данной статье.
Важной особенностью SciDB является наличие поддержки версионного контроля данных и учета всех операций над ними, что позволяет отследить все манипуляции, выполняемые над данными, и при необходимости в точности повторить аналитический запрос (над тем же набором данных в состоянии на момент прошлого запроса) или выполнить его в измененном виде (откорректировать алгоритм). Подобный подход, в сочетании с гибкими средствами обмена данными (экспорт не только данных, но и истории операций над ними), позволяет сторонним исследователям на своих локальных системах повторять эксперименты других групп. Аналитические дополнения к SciDB можно разрабатывать на языках, подобных C++ и Python. Присутствуют готовые модули для интеграции с такими вычислительными пакетами, как R, Matlab и IDL, позволяя использовать уже существующие алгоритмы обработки данных.
Источник: http://www.opennet.ru/opennews/art.shtml?num=30983
|
0 | Tweet | Нравится |
|