前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Presto Hive连接器

Presto Hive连接器

作者头像
sparkle123
发布2020-10-29 11:12:53
2.1K0
发布2020-10-29 11:12:53
举报
文章被收录于专栏:大数据-Hadoop、Spark

概览

Hive连接器允许查询存储在Hive数据仓库中的数据。Hive是由三个部分组成。

  • 各种格式的数据文件通常存储在Hadoop分布式文件系统(HDFS)或Amazon S3中。
  • 有关如何将数据文件映射到schemas 和表的元数据。此元数据存储在数据库(例如MySQL)中,并可通过Hive Metastore服务进行访问。
  • 一种称为HiveQL的查询语言。该查询语言在MapReduce或Tez的分布式计算框架上执行。

Presto仅使用前两个组件:数据和元数据。它不使用HiveQL或Hive执行环境的任何一部分。

支持的文件类型

  • ORC
  • Parquet
  • Avro
  • RCFile
  • SequenceFile
  • JSON
  • Text

配置

Hive连接器支持Apache Hadoop 2.x及其衍生版本,如Cloudera CDH 5Hortonworks Data Platform (HDP).

创建etc/catalog/hive.properties,

代码语言:javascript
复制
#随意
connector.name=hive-hadoop2 
#用Hive Metastore Thrift服务的正确主机和端口替换example.net:9083
hive.metastore.uri=thrift://example.net:9083

多个Hive集群

根据需要可以创建任意数量的catalog,如果有其他Hive集群服务,只需将另一个属性文件添加到etc/catalog中,并使用不同的名称(确保以.properties结尾)。例如,如果命名属性文件sales.properties,Presto将使用配置的连接器创建一个名为salescatalog.

HDFS 配置

一般来说,Presto会自动配置HDFS客户端,不需要任何配置文件。在某些情况下,例如使用联邦HDFS或NameNode高可用性时,有必要指定其他HDFS客户端选项以访问的HDFS集群。所以,添加hive.config.resources属性以引用HDFS配置文件.

代码语言:javascript
复制
hive.config.resources=/etc/hadoop/conf/core-site.xml,/etc/hadoop/conf/hdfs-site.xml

仅在需要时指定其他配置文件。我们还建议减少配置文件,使其具有最少的必需属性集,因为其他属性可能会引起问题。

配置文件必须存在于所有Presto节点上。如果要引用现有的Hadoop配置文件,请确保将它们复制到任何未运行Hadoop的Presto节点。

HDFS Username

当不使用Kerberos时,Presto将使用Presto进程所在的OS用户访问HDFS。我们可以通过在Presto JVM Config中设置HADOOP_USER_NAME系统属性来覆盖此用户名.

代码语言:javascript
复制
#将hdfs_user替换为适当的用户名
-DHADOOP_USER_NAME=hdfs_user

Hive配置属性

Amazon S3 配置

Hive连接器可以读写存储在S3中的表。使表或数据库使用S3前缀而不是HDFS前缀来实现。

Presto将其自己的S3文件系统用于URI前缀s3://s3n://s3a://

S3SelectPushdown

S3SelectPushdown可以将投影(SELECT)和谓词(WHERE)处理下推到S3 Select。使用S3SelectPushdown,Presto仅从S3而不是整个S3对象中检索所需的数据,从而减少了延迟和网络使用率。

Alluxio 配置

Presto可以利用Alluxio的分布式块级读/写缓存功能读取和写入存储在Alluxio中的表。必须使用alluxio://前缀创建表,存储在Hive元存储库中(有关详细信息和示例,请参阅 https://docs.alluxio.io/os/user/2.1/en/compute/Hive.html)。然后,Presto将透明地从各种不同的存储系统(包括HDFS和S3)中检索和缓存文件或对象。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 概览
  • 支持的文件类型
  • 配置
    • 多个Hive集群
      • HDFS 配置
        • HDFS Username
        • Hive配置属性
          • Amazon S3 配置
            • S3SelectPushdown
          • Alluxio 配置
          相关产品与服务
          对象存储
          对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档