Apache Kylin — это распределенное хранилище аналитических данных с открытым исходным кодом, разработанное для обеспечения возможностей OLAP (онлайн-аналитической обработки) в эпоху Big Data. Распределенные вычисления и хранение данных обеспечивают ряд преимуществ, таких как масштабируемость, отказоустойчивость и балансировку нагрузки.
При разработке OLAP-куба Kylin, необходимо организовать заполнение Data Lake (Hadoop), данные из которого будут процессироваться в куб. Один из самых распространенных кейсов по заполнению Hadoop – это импорт данных из реляционных баз данных. Чтобы покрыть указанный кейс, компанией Apache было разработано специальное ПО – Apache Sqoop.
Apache Sqoop(TM) – это инструмент, предназначенный для эффективной передачи массовых данных между Apache Hadoop и структурированными хранилищами, такими как реляционные базы данных. Высокая производительность импорта и экспорта данных, при использовании Sqoop, достигается за счет использования инфраструктуры MapReduce, что обеспечивает параллелизм в обработке данных.
В нашей компании Sqoop использовался для реализации интеграции данных из SQL Server в распределенную файловую систему Hadoop (HDFS), которая была развернута в docker-контейнере kylin, запущенного на основе images apachekylin/apache-kylin-standalone:kylin-4.0.1-mondrian из docker hub; в этот же docker-контейнер и был установлен Sqoop, ниже описаны подробные шаги по установки и настройки конфигурации Sqoop.
- Загрузка архива Sqoop в docker-контейнер. Для импорта архива Sqoop в текущую директорию, необходимо воспользоваться следующей командой: wget https://archive.apache.org/dist/sqoop/1.4.4/sqoop-1.4.4.bin__hadoop-2.0.4-alpha.tar.gz