CrateDB 2.0 — распределённая СУБД с поддержкой SQL для машинных данных
На этой неделе состоялся второй крупный релиз CrateDB — СУБД с открытым кодом, поддерживающей язык SQL и созданной быть распределённой.
Проектируя CrateDB, авторы этой новой системы управления базами данных задавались тремя ключевыми целями: предоставить SQL для обработки данных любого вида (структурированных и неструктурированных), выполнять SQL-запросы (включая JOIN’ы и агрегации) в реальном времени, сделать горизонтальное масштабирование простым. CrateDB не поддерживает ACID-транзакции с откатом операций до предыдущего состояния, но обеспечивает Optimistic Concurrency Control (внутренние версии для данных, позволяющие обнаруживать и решать конфликты при записи). Наиболее популярное применение CrateDB — хранение и обработка машинных данных (machine data).
В релизе CrateDB 2.0, который пока имеет статус пробного, представлены улучшения в поддержке SQL (добавлены агрегации и GROUP BY для JOIN-запросов, группировка в подзапросах) и в прослойке кластеризации СБУД (заметно улучшена производительность таких операций, как агрегации, JOIN, обработка геопространственных данных и т.п.), а в административном интерфейсе (выполнен как веб-приложение) добавлена функция переименования таблиц.
Исходный код СУБД CrateDB написан на языке Java и распространяется на условиях свободной лицензии Apache License 2.0, опубликован на GitHub. У проекта также есть коммерческая версия продукта — CrateDB Enterprise Edition.
Дмитрий Шурупов по материалам Crate.io.