Apache Tajo-OpenStack Swift 통합
Swift는 분산되고 일관된 개체 / Blob 저장소입니다. Swift는 간단한 API로 많은 데이터를 저장하고 검색 할 수 있도록 클라우드 스토리지 소프트웨어를 제공합니다. Tajo는 Swift 통합을 지원합니다.
다음은 Swift Integration의 전제 조건입니다-
- 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를 사용하여 데이터를 쿼리 할 수 있습니다.
테이블 생성
다음과 같이 Tajo에서 Swift 객체에 액세스하기위한 외부 테이블을 생성 해 보겠습니다.
default> create external table swift(num1 int, num2 text, num3 float)
using text with ('text.delimiter' = '|') location 'swift://bucket-name/table1';
테이블이 생성 된 후 SQL 쿼리를 실행할 수 있습니다.