本文介绍如何在E-MapReduce中通过Hive作业来处理TableStore中的数据。
前提条件
确保将实例部署在E-MapReduce集群相同的VPC环境下。
步骤一:创建Hadoop集群
步骤二:获取JAR包并上传到Hadoop集群
步骤三:重启Hive服务
步骤四:配置Table存储
在TableStore上创建表格,具体请参见创建数据表。
创建好后如下截图。

本文介绍如何在E-MapReduce中通过Hive作业来处理TableStore中的数据。
确保将实例部署在E-MapReduce集群相同的VPC环境下。
JAR包 | 获取方法 |
---|---|
emr-tablestore-X.X.X.jar | Maven库中下载:emr-tablestore。 |
hadoop-lzo-X.X.X-SNAPSHOT.jar | 登录Hadoop集群的emr-header-1主机,在/opt/apps/ecm/service/hadoop/x.x.x-x.x.x/package/hadoop-x.x.x-x.x.x/lib/下获取JAR包。 |
hive-exec-X.X.X.jar | 登录Hadoop集群的emr-header-1主机,在/opt/apps/ecm/service/hive/x.x.x-x.x.x/package/apache-hive-x.x.x-x.x.x-bin/lib/下获取JAR包。 |
joda-time-X.X.X.jar | 登录Hadoop集群的emr-header-1主机,在/opt/apps/ecm/service/hive/x.x.x-x.x.x/package/apache-hive-x.x.x-x.x.x-bin/lib/下获取JAR包。 |
tablestore-X.X.X-jar-with-dependencies.jar | 下载EMR SDK相关的依赖包:tablestore。 |
su hadoop
scp <file> emr-worker-1:/tmp
CREATE EXTERNAL TABLE pet(name STRING, owner STRING, species STRING, sex STRING, birth STRING, death STRING)
STORED BY 'com.aliyun.openservices.tablestore.hive.TableStoreStorageHandler'
WITH SERDEPROPERTIES(
"tablestore.columns.mapping"="name,owner,species,sex,birth,death")
TBLPROPERTIES (
"tablestore.endpoint"="https://XXX.cn-beijing.ots-internal.aliyuncs.com",
"tablestore.access_key_id"="LTAIbUa7OYIO****",
"tablestore.access_key_secret"="u2yOdykvSNXiPChyoqbCoawZnt****",
"tablestore.table.name"="pet");
当回显信息提示OK
时,表示表格创建成功。
INSERT INTO pet VALUES("Fluffy", "Harold", "cat", "f", "1993-02-04", null);
当回显信息提示OK
时,表示数据插入成功。
hive> SELECT * FROM pet;
OK
Fluffy Harold cat f 1993-02-04 NULL
Time taken: 0.23 seconds, Fetched: 3 row(s)
当回显信息包含OK
时,表示查询成功。
在文档使用中是否遇到以下问题
更多建议
匿名提交