mapreduce 计算excel_批计算_E-MapReduce SQL_Spark/SparkSQL_计算与分析_表格存储 Tablestore - 阿里云...

本文介绍了如何在E-MapReduce集群中使用Spark SQL与Tablestore进行批处理计算,包括如何创建Spark外表、连接全局二级索引和多元索引,以及展示不同查询场景下的性能优化。
摘要由CSDN通过智能技术生成

通过在E-MapReduce集群中使用Spark SQL访问表格存储。对于批计算,Tablestore on Spark提供索引选择、分区裁剪、Projection列和Filter下推、动态指定分区大小等功能,利用表格存储的全局二级索引或者多元索引可以加速查询。

前提条件已创建E-MapReduce Hadoop集群。具体操作,请参见

创建集群时,请确保打开挂载公网开关,将集群挂载到公网,用于Shell远程登录服务器。

说明

本文使用Shell命令演示,如果需要使用E-MapReduce的图形化页面进行数据开发。具体操作,请参见

Spark连接表格存储数据表和全局二级索引

Spark连接到表格存储数据表和全局二级索引后,通过Spark外表查询数据时,系统会根据查询条件中设置的列条件自动选择索引表进行查询。在表格存储侧创建数据表或全局二级索引。创建表格存储的数据表。具体操作,请参见

本示例中数据表名称为tpch_lineitem_perf,主键列为l_orderkey(LONG类型)、l_linenumber(LONG类型),属性列分别为l_comment(STRING类型)、l_commitdate(STRING类型)、l_discount(DOUBLE类型)、l_extendedprice(DOUBLE类型)、l_linestatus(STRING类型)、l_partkey(LONG类型)、l_quantity(DOUBLE类型)、l_receiptdate(STRING类型)等14列,数据条数为384016850,数据样例如下图所示。

(可选)在数据表上创建全局二级索引。具体操作,请参见

说明

当查询条件中需要使用数据表的非主键列,建议创建全局二级索引加速查询。

全局二级索引支持在指定列上建立索引,生成的索引表中数据按指定的索引列进行排序,数据表的每一个数据写入都将自动以异步方式同步到索引表。

在EMR集群侧创建Spark外表。登录EMR Header服务器。

执行如下命令启动spark-sql命令行,用于Spark外表创建和后续的SQL实战操作。

其中Spark的标准启动参数为--num-executors 32 --executor-memory 2g --executor-cores 2,可以根据具体的集群配置进行自定义调整。表示上传jar包的版本信息,请根据实际填写,例如2.1.0-SNAPSHOT。spark-sql --jars emr-datasources_shaded_2.11-.jar --master yarn --num-executors 32 --executor-memory 2g --executor-cores 2

创建Spark外表同时连接全局二级索引。参数参数说明endpoint表格存储实例访问地址,EMR集群中使用VPC地址。

access.key.id阿里云账号的AccessKey ID。

access.key.secret阿里

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值