DLA Presto支持自建HiveMetastore数据源

简介: DLA近期发布了支持访问用户自建HiveMetastore的功能,可以通过DLA分析自建HiveMetastore的数据。此外还能通过DLA Presto加速查询性能。

背景介绍

阿里云数据湖分析(DLA)产品提供一站式的数据湖分析与计算服务。DLA Presto可以实现高效的在线分析,主要面向用户探索式分析、报表以及轻量ETL的场景。


DLA Presto已经支持比较多的数据源,但对于用户自建的大数据集群(它元数据存储在HiveMetastore,数据存储在HDFS),有时也希望和OSS、RDS、AnalyticsDB、MaxCompute、TableStore、ElasticSearch等数据关联查询,但却较难实现。因此DLA近期发布了支持访问用户自建HiveMetastore的功能,可以通过DLA分析自建HiveMetastore的数据。此外还能通过DLA Presto加速查询性能。


操作步骤

1. 准备数据。

  • 在自建的HiveMetastore中创建库,表,并插入一条记录。
CREATE DATABASE testdb;
CREATE EXTERNAL TABLE if not exists testdb.testTable(
                id int,
                name string);
insert into testdb.testTable(id, name) values (1, "jack");

2.开通DLA Presto CU版

3. 绑定数据源网络。注意这里绑定的数据源网络和HiveMetastore要在同一个vpc下面,确保网络可以联通。

4. 连接DLA,创建库:

CREATE DATABASE `dladb`
WITH DBPROPERTIES (
    catalog = 'customer_hive',
    database = 'testdb',
    location = '172.16.199.34:9083',
    vpc_id = 'xxx',
    hdfs_properties = 'fs.defaultFS=hdfs://172.16.199.41:9000'
)

说明 您也可以通过MySQL客户端或者程序代码等方式链接DLA,然后执行SQL命令创建库。参数说明:

  • catalog 固定为customer_hive,表示数据源是用户的HiveMetastore数据。
  • database 指定用户HiveMetastore的HiveServer中的库名。
  • location 指定用户HiveMetastore的HiveServer地址。
  • vpc_id 指定HiveMetastore所在的vpc。
  • hdfs_properties指定HiveMetastore中默认的hdfs配置。包括两种情况:
  • 非HA的HDFS:
hdfs_properties='fs.defaultFS=hdfs://172.16.199.41:9000'
注释,这里的hdfs的配置为自建HDFS的地址,需要指定为IP或域名,不能为hostname。
  • HA的HDFS:
hdfs_properties='fs.defaultFS=hdfs://emr-cluster;dfs.nameservices=emr-cluster;dfs.client.failover.proxy.provider.emr-cluster=org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider;dfs.ha.namenodes.emr-cluster=nn1,nn2;dfs.nameservice.id=emr-cluster;dfs.namenode.rpc-address.emr-cluster.nn1=172.16.199.34:8020;dfs.namenode.rpc-address.emr-cluster.nn2=172.16.199.35:8020'
注释,这里的hdfs的配置为自建HA HDFS的配置,需要指定为IP或域名,不能为hostname。
  1. 建表,可以通过create table或msck两种方式修表。
  • 创建表映射
CREATE EXTERNAL TABLE if not exists dladb.testTable(
                id int,
                name string);

 说明 表名testTable需要和HiveMetastore中对于的db的表名相同。

  • msck创建表映射
msck repair database dladb;


  1. 查询表

查询或访问数据由于只有CU的计算资源和HiveMetastore网络可以联通,因此所有访问HiveMetastore表的SQL语句都需要指定hint: /*+cluster=your-vc-name*/ ,这样SQL就会在CU中执行。

示例:

mysql> /*+ cluster=vc-test */ select * from  dladb.testTable;
+------+------+
| id   | name |
+------+------+
|    1 | jack |
+------+------+
1 row in set (1.74 sec)

更多信息可参考DLA帮助文档。

使用DLA Presto的优势

DLA Presto(兼容Presto)的目标是提供比开源自建更高的性价比、开箱即用的体验、方便的数据摄入、MySQL生态带来的简单易用、内置各种优化的数据湖分析计算服务。用户可以先通过使用Serverless版本低成本试用,然后根据使用频率的高低、对资源是否有强独占的需求来决定生产环境使用Serverless版本还是CU版本。DLA Presto还在不断发展中,目前规划中的一些特性包含:

  • 按照时间段或者工作负载进行自动扩缩容,帮助用户节省成本。
  • 支持文件缓存机制,提升查询性能
  • 内置大数据最佳实践,自动拦截Bad SQL

欢迎大家关注我们的钉钉群获取最新的信息:



相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
SQL 分布式计算 DataWorks
DataWorks报错问题之集成hive数据源报错如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
|
3月前
|
分布式计算 DataWorks MaxCompute
DataWorks中odps到容器部署starrocks的单表同步遇到写入问题
【1月更文挑战第6天】【1月更文挑战第29篇】DataWorks中odps到容器部署starrocks的单表同步遇到写入问题
46 3
|
6月前
|
SQL 分布式计算 大数据
MaxCompute中,可以使用Presto连接器与MaxCompute进行交互
MaxCompute中,可以使用Presto连接器与MaxCompute进行交互
92 1
|
1月前
|
DataWorks NoSQL MongoDB
在DataWorks中添加MongoDB数据源时
【2月更文挑战第16天】在DataWorks中添加MongoDB数据源时
24 8
|
5月前
|
分布式计算 DataWorks 关系型数据库
MaxCompute支持通过DataWorks数据集成功能将其他数据源数据同步至MaxCompute
MaxCompute支持通过DataWorks数据集成功能将其他数据源数据同步至MaxCompute
37 1
|
SQL 分布式计算 关系型数据库
PolarDB-X 1.0-用户指南-数据导入导出-通过数据集成导入导出数据
本文介绍如何通过数据集成在PolarDB-X中进行数据导入和导出。 数据集成是阿里巴巴集团提供的数据同步平台。该平台具备可跨异构数据存储系统、可靠、安全、低成本、可弹性扩展等特点,可为20多种数据源提供不同网络环境下的离线(全量或增量)数据进出通道。
317 0
|
存储 SQL 运维
阿里云 E-MapReduce ClickHouse 操作指南 01期 — ClickHouse 概述
阿里云 E-MapReduce(简称EMR)是运行在阿里云平台上的一种大数据处理的系统解决方案。ClickHouse 作为开源的列式存储数据库,主要用于在线分析处理查询(OLAP),能够使用 SQL 查询实时生成分析数据报告。而阿里云 EMR ClickHouse 则提供了开源 OLAP 分析引擎 ClickHouse 的云上托管服务。
阿里云 E-MapReduce ClickHouse 操作指南 01期 — ClickHouse 概述
|
SQL 弹性计算 分布式计算
自建Hive数据仓库跨版本迁移到阿里云Databricks数据洞察
客户在IDC或者公有云环境自建Hadoop集群构建数据仓库和分析系统,购买阿里云Databricks数据洞察集群之后,涉及到数仓数据和元数据的迁移以及Hive版本的订正更新。
自建Hive数据仓库跨版本迁移到阿里云Databricks数据洞察
|
SQL 分布式计算 DataWorks
使用MaxCompute连接访问Hologres开发实践
很多客户使用MaxCompute和Hologres的集成方案同时满足大规模离线分析、实时运营分析、交互式查询及在线Serving等多业务场景。MaxCompute和Hologres之间支持相互读写对方数据,能够消除不必要的数据冗余,形成有效的数据分层并支持离线/实时统一视图和联合分析。本文重点介绍了MaxCompute如何访问Hologres数据的开发实践。
3501 1
使用MaxCompute连接访问Hologres开发实践
|
SQL 存储 缓存
DLA-Presto二月更新
大家过年好啊,阿里云数据湖分析DLA-Presto二月迭代轻磅发布,请查收。 分区投影: 帮您解决分区爆炸后查询慢的问题。 Cassandra Connector: 针对小表的性能优化比目前开源版本提高60多倍。 控制ETL结果文件数: 解决您的小文件多的问题。 CU支持指定默认Hint: 如果一个hint每个SQL都要写,那么我们配置到CU级别吧。