Apache CarbonData 2.0 开发实用系列之三:与Presto SQL集成使用

举报
david_caiqiang 发表于 2020/08/31 17:04:03 2020/08/31
【摘要】 在Presto SQL集成使用CarbonData


【内容提要】

本文介绍如何使用presto sql查询在spark中已生成的carbondata表


【创建carbondata表】

使用Spark SQL创建carbondata表并入库数据

请参考[Apache CarbonData 2.0 开发实用系列之一:与Spark SQL集成使用](https://bbs.huaweicloud.com/blogs/169357)


【准备Hadoop】

请参考[Apache CarbonData 2.0 开发实用系列之二:与Hive集成使用](https://bbs.huaweicloud.com/blogs/170472)


【准备hive metastore】

1. 下载hive 1.2.2并解压

https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-1.2.2/apache-hive-1.2.2-bin.tar.gz


2. 升级derby

拷贝SPARK_HOME/jars/derby-10.12.1.1.jar覆盖derby-10.10.2.0.jar


3. 修改配置

hive-site.xml


4. 启动metastore

export HADOOP_HOME=/opt/bigdata/hadoop-2.7.7
./hive --service metastore


【准备carbon依赖包】

git clone https://github.com/apache/carbondata.git
cd carbondata
mvn -DskipTests -Pspark-2.4 -Pprestosql clean package


【准备presto】

1. 下载presto-server-316.tar.gz

下载页面:https://repo1.maven.org/maven2/io/prestosql/presto-server/316/


2. 配置presto

参考文档:https://github.com/apache/carbondata/blob/master/docs/prestosql-guide.md#presto-single-node-setup-for-carbondata

或者解压附件etc.zip后,拷贝到$PRESTO_HOME/etc


3. 部署carbondata

$PRESTO_HOME/plugin下创建carbondata目录,拷贝carbondata/integration/presto/target/carbondata-presto-x.x.x-SNAPSHOT下所有jars包至$PRESTO_HOME/plugin/carbondata


4 启动presto sql

bin/launcher start


5. 下载并启动presto CLI

链接地址:https://repo1.maven.org/maven2/io/prestosql/presto-cli/316/presto-cli-316-executable.jar


启动CLI

java -jar presto-cli-316-.jar --server localhost:8086 --catalog carbondata --schema carbondb


输入show tables后系统报错,

Query 20200831_084250_00002_9u6tk failed: com.google.common.util.concurrent.UncheckedExecutionException: java.lang.reflect.UndeclaredThrowableException


presto server日志信息如下:

Caused by: NoSuchObjectException(message:information_schema.tables table not found)

at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$get_table_result$get_table_resultStandardScheme.read(ThriftHiveMetastore.java)

at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$get_table_result$get_table_resultStandardScheme.read(ThriftHiveMetastore.java)

at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$get_table_result.read(ThriftHiveMetastore.java)

at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:86)

at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.recv_get_table(ThriftHiveMetastore.java:1993)

at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.get_table(ThriftHiveMetastore.java:1979)

... 74 more


未完待续, 修复后更新......


  • 1.65KB 下载次数:1

    附件下载

  • etc.zip 1.65KB 下载次数:1
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。