Apache Tajo - Интеграция OpenStack Swift
Swift - это распределенное и согласованное хранилище объектов / BLOB-объектов. Swift предлагает программное обеспечение для облачного хранилища, так что вы можете хранить и извлекать большой объем данных с помощью простого API. Tajo поддерживает интеграцию со Swift.
Ниже приведены предварительные условия для быстрой интеграции.
- Swift
- Hadoop
Core-site.xml
Добавьте следующие изменения в файл hadoop «core-site.xml»:
<property>
<name>fs.swift.impl</name>
<value>org.apache.hadoop.fs.swift.snative.SwiftNativeFileSystem</value>
<description>File system implementation for Swift</description>
</property>
<property>
<name>fs.swift.blocksize</name>
<value>131072</value>
<description>Split size in KB</description>
</property>
Это будет использоваться Hadoop для доступа к объектам Swift. После внесения всех изменений перейдите в каталог Tajo, чтобы установить переменную среды Swift.
conf / tajo-env.h
Откройте файл конфигурации Tajo и добавьте переменную среды следующим образом:
$ vi conf/tajo-env.h
export TAJO_CLASSPATH = $HADOOP_HOME/share/hadoop/tools/lib/hadoop-openstack-x.x.x.jar
Теперь Tajo сможет запрашивать данные с помощью Swift.
Создать таблицу
Давайте создадим внешнюю таблицу для доступа к объектам Swift в Tajo следующим образом:
default> create external table swift(num1 int, num2 text, num3 float)
using text with ('text.delimiter' = '|') location 'swift://bucket-name/table1';
После создания таблицы вы можете выполнять запросы SQL.