写点什么

使用 Databend 加速 Hive 查询

作者:Databend
  • 2022-12-02
    中国台湾
  • 本文字数:1108 字

    阅读完需:约 4 分钟

使用 Databend 加速 Hive 查询

作者:房孝敬  快手大数据架构


在快手大数据团队和 Databend 的共同努力下,终于支持基于 Hive Catalog 运行 Hive 上的查询。这个文档展示了如何设置 Databend 和 Hive 环境集成及运行 SQL 查询 Hive 上数据 。

如何搭建 Databend 和 Hive 集成环境

HiveServer &  metastore & HDFS 应该是预先安装的。


  1. 目前官方还没放出来支持 Hive 的二进制 Databend-release。现在只能从源代码构建含 Hive 支持的 Databend。


## make sure JAVA_HOME is setexport JAVA_HOME=/path/to/javaexport LD_LIBRARY_PATH=${JAVA_HOME}/lib/server:${LD_LIBRARY_PATH}cargo build --features hive,storage-hdfs
复制代码


  1. 设置 Databend 集群,参考[deploying-databend](https://databend.rs/doc/deploy/deploying-databend)

  2. 将 Hive 目录和 HDFS 存储添加到 databend-query.toml


[storage]type = "hdfs"
[storage.hdfs]# hdfs namenode address,such as 127.0.0.1:8020name_node = "xx"root = ""
[catalogs.hive]type = "hive"# hive metastore address, such as 127.0.0.1:9083address = "xx"
复制代码


  1. 使用 java & Hadoop 环境运行 databend-query


export HADOOP_HOME=xxxexport JAVA_HOME=xxx, such as /Library/Java/JavaVirtualMachines/openjdk-11.jdk/Contents/Homeexport LD_LIBRARY_PATH=$JAVA_HOME/lib/server:$LD_LIBRARY_PATH
./bin/databend-query -c ./databend-query.toml > query.log 2>&1 &
复制代码


  1. 使用 mysql 客户端设置 Hive 相关设置


set global sql_dialect = 'hive';
复制代码


建议设置:


-- for chinese usersset global timezone = 'Asia/Shanghai';set global max_execute_time = 180000;
-- support hive nvl functioncreate FUNCTION nvl as (a,b) -> ifnull(a,b);
复制代码


  1. 使用 mysql 客户端或 mysql jdbc 客户端查询 Hive 数据。注意:Hive 表必须被引用为 "hive.db.table"


select * from hive.$db.$table limit 10;
复制代码

限制

  1. 只支持 parquet table,不支持 orc,txt

  2. 不支持 struct & map & decimal 这些 Hive 的数据类型

  3. 只支持 Hive SELECT 查询,不支持 DDL、INSERT、DML 操作

  4. 不支持 Hive udfs,Hive 函数支持有限


Hive 功能现在处于测试阶段,如使用中遇到问题和建议,随时反馈到 Databend [issue](https://github.com/datafuselabs/databend/issues)

关于 Databend

Databend 是一款开源、弹性、低成本,基于对象存储也可以做实时分析的新式数仓。期待您的关注,一起探索云原生数仓解决方案,打造新一代开源 Data Cloud。


  • Databend 文档:https://databend.rs/

  • Twitter:https://twitter.com/Datafuse_Labs

  • Slack:https://datafusecloud.slack.com/

  • Wechat:Databend

  • GitHub :https://github.com/datafuselabs/databend

用户头像

Databend

关注

还未添加个人签名 2022-08-25 加入

还未添加个人简介

评论

发布
暂无评论
使用 Databend 加速 Hive 查询_Databend_InfoQ写作社区