Введение в движок CONNECT
CONNECT — это не просто новый «YASE» (ещё один движок хранения данных), предоставляющий альтернативный способ хранения данных с дополнительными функциями. Он добавляет новую размерность MariaDB, уже являющейся одним из лучших продуктов для работы с традиционными транзакционными приложениями баз данных, ещё глубже погружая её в мир бизнес-аналитики и анализа данных, включая возможности NoSQL. Действительно, BI — это набор техник и инструментов для преобразования исходных данных в осмысленную и полезную информацию. А где находятся эти данные?
«Удивительно в эпоху господства реляционных баз данных в управлении данными, что так много информации всё ещё существует вне движков RDBMS в виде плоских файлов и других подобных конструкций. В большинстве предприятий данные передаются между различными системами с интенсивностью и скоростью, сопоставимой с самыми загруженными автомагистралями мира, причём значительная часть этих данных хранится в общих файлах с разделителями. Целевые системы перехватывают эти исходные файлы и, как правило, загружают их с помощью процессов ETL (извлечение, преобразование, загрузка) в базы данных, которые затем используют эту информацию для бизнес-аналитики, транзакционных функций или других стандартных операций. Задачи ETL и задания перемещения данных могут занимать значительное время и ресурсы, особенно если речь идёт о больших объёмах данных, требующих загрузки в базу данных. В связи с этим многие администраторы баз данных приветствуют альтернативные способы доступа и управления данными, хранящимися в формате файлов.»
- Робин Шумахер[1]
Он описывает то, что известно как Управление внешними данными (MED), позволяющее обрабатывать данные, не хранящиеся в базе данных DBMS, как если бы они хранились в таблицах. Существует стандарт ISO, описывающий один из способов реализации и использования MED в SQL путём определения внешних таблиц, для которых разработан внешний FDW (оболочка внешних данных) на C.
Однако, с момента написания этого текста, был разработан новый источник данных — «облако». Данные распространены по всему миру и, в частности, могут быть получены в формате JSON или XML в ответ на запросы REST. Начиная с Connect 1.06.0010, можно создавать таблицы JSON, XML или CSV на основе данных, полученных из таких запросов REST.
MED, как описано выше, является довольно сложным способом достижения этой цели, и MariaDB не поддерживает стандарт ISO SQL/MED. Но для удовлетворения потребностей, возможно, в транзакционных, но в основном в приложениях поддержки принятия решений, движок хранения CONNECT поддерживает MED значительно проще.
Основные особенности CONNECT:
- Нет необходимости в дополнительных расширениях языка SQL.
- Встроенные оболочки для многих типов внешних данных (файлы, источники данных, виртуальные).
- Возможности запросов NoSQL для JSON, XML, HTML-файлов и использования JSON UDF.
- Данные NoSQL, полученные из запросов REST (требуется cpprestsdk).
- Новый тип данных NoSQL MONGO, предоставляющий доступ к коллекциям MongoDB как к реляционным таблицам.
- Чтение/запись внешних файлов наиболее распространённых форматов.
- Прямой доступ к большинству внешних источников данных через ODBC, JDBC и API MySQL или MongoDB.
- Из внешнего сканирования извлекаются только используемые столбцы.
- При необходимости, «сдвиг вниз» условий WHERE.
- Поддержка специальных и виртуальных столбцов.
- Параллельное выполнение запросов к нескольким таблицам (в настоящее время недоступно).
- Поддержка разбиения по подфайлам или по подтаблицам (что позволяет выполнять фрагментацию таблиц).
- Поддержка MRR для SELECT, UPDATE и DELETE.
- Предоставляет удалённое, блочное, динамическое и виртуальное индексирование.
- Возможность выполнения сложных запросов на удалённых серверах.
- Предоставляет API, позволяющее писать дополнительные FDW на C++.
С CONNECT, MariaDB имеет одну из самых продвинутых реализаций MED и NoSQL без необходимости сложных дополнений к синтаксису SQL (внешние таблицы — это «обычные» таблицы, использующие движок CONNECT).
Предоставление MariaDB простого и естественного доступа к внешним данным позволяет использовать все её мощные функции и возможности обработки SQL для разработки приложений бизнес-аналитики.
Начиная с версии 1.07 CONNECT, доступ к данным из запросов REST доступен во всех бинарных дистрибутивах MariaDB, а начиная с 1.07.002, CONNECT позволяет использовать рабочие области размером более 4 ГБ.
- ↑ Робин Шумахер — вице-президент по продуктам в DataStax и бывший директор по продуктовому менеджменту в MySQL. У него более 13 лет опыта работы с базами данных в DB2, MySQL, Oracle, SQL Server и других движках баз данных.
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/introduction-to-the-connect-engine/