Apache Tajo - OpenStack Swift 集成



Swift 是一种分布式且一致的对象/blob 存储。Swift 为您提供云存储软件,以便您可以使用简单的 API 存储和检索大量数据。Tajo 支持 Swift 集成。

以下是 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 查询数据。

创建表

我们创建一个外部表来在 Tajo 中访问 Swift 对象,如下所示 −

default> create external table swift(num1 int, num2 text, num3 float) 
   using text with ('text.delimiter' = '|') location 'swift://bucket-name/table1';

创建表后,您可以运行 SQL 查询。

广告
© . All rights reserved.