Вышел новый выпуск Apache Kylin с улучшениями, включая механизм кубирования «все в Spark» и поддержку использования MySQL для хранилища метаданных Kylin.
Kylin — это механизм распределенной аналитики с открытым исходным кодом, предназначенный для обеспечения интерфейса SQL и многомерного анализа (OLAP) на Apache. Первоначально он был разработан на eBay, прежде чем стать проектом Apache.
Kylin OLAP Engine состоит из механизма метаданных, механизма запросов, механизма заданий и механизма хранения. Он также включает REST-сервер для обслуживания клиентских запросов. Механизм запросов основан на Apache Calcite.
Новый движок кубов «все в Spark» означает, что движок Kylin Spark теперь будет запускать все распределенные задания в Spark, включая получение различных значений измерений, преобразование файлов кубовидной формы в HBase HFile, объединение сегментов и объединение словарей. Разработчики говорят, что конфигурации по умолчанию настроены таким образом, чтобы пользователь мог получить готовый опыт, и что производительность, как ожидается, улучшится. Управление заданиями для Spark также было улучшено, так что вы можете получить ссылку на задание в веб-консоли после запуска Spark. Если вы откажетесь от задания, Kylin убьет задание Spark, чтобы освободить ресурс, а если Kylin перезапущен, он может возобновить работу с предыдущего задания вместо повторной отправки нового задания.
В предыдущих версиях единственным вариантом для хранения метаданных Kylin был HBase, но в этом выпуске вместо него можно использовать MySQL. Это решит проблемы, вызванные тем, что реплицированный HBase доступен только для чтения, поэтому на самом деле не работает при использовании для высокой доступности Kylin в кластерной структуре. В таких случаях MySQL сможет работать правильно, хотя функция в настоящее время находится в стадии бета-тестирования.
Следующее улучшение — это возможность создавать гибридные модели в настраиваемом веб-интерфейсе. Гибрид — это расширенная модель для создания нескольких кубов, и ее можно использовать для решения проблемы изменения схемы куба. В прошлом эта функция не имела графического интерфейса, поэтому использовалась лишь небольшой частью пользователей Kylin. В этой версии Kylin добавлен веб-интерфейс, упрощающий использование.
Еще одно улучшение, связанное с кубом, — включение по умолчанию планировщика куба — функции, добавленной в Kylin 2.3 для оптимизации структуры куба. Планировщик куба может не только оптимизировать структуру куба, но и тем самым использовать меньше вычислительных ресурсов и / или ресурсов хранения и повысить производительность запросов. Алгоритм автоматически оптимизирует куб по вашей статистике данных при первой сборке.
В этом выпуске также предлагается улучшенная обрезка сегментов для уменьшения дискового и сетевого ввода-вывода. До сих пор Kylin удалял сегменты только по значению столбца раздела, но в этой версии записываются минимальные и максимальные значения для всех измерений на уровне сегмента.
Другие улучшения включают возможность выполнять слияние словарей в YARN, а не в JVM Kylin; лучшая оценка размера куба для мер TOPN и COUNT DISTINCT; и поддержка Hadoop 3 и HBase 2.