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

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



相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
SQL 分布式计算 大数据
MaxCompute中,可以使用Presto连接器与MaxCompute进行交互
MaxCompute中,可以使用Presto连接器与MaxCompute进行交互
163 1
|
5月前
|
SQL 分布式计算 大数据
MaxCompute产品使用合集之自建的mysql是否支持外部表
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
3月前
|
分布式计算 DataWorks 调度
MaxCompute产品使用合集之如何将数据迁移到CDH Hive
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
4月前
|
SQL 数据处理 API
实时计算 Flink版产品使用问题之怎么新建自建的doris catalog
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
4月前
|
分布式计算 DataWorks 监控
MaxCompute产品使用问题之如何将MaxCompute中的数据同步到ClickHouse的分区表中
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
5月前
|
DataWorks NoSQL MongoDB
在DataWorks中添加MongoDB数据源时
【2月更文挑战第16天】在DataWorks中添加MongoDB数据源时
54 8
|
11月前
|
分布式计算 DataWorks 关系型数据库
MaxCompute支持通过DataWorks数据集成功能将其他数据源数据同步至MaxCompute
MaxCompute支持通过DataWorks数据集成功能将其他数据源数据同步至MaxCompute
65 1
|
SQL 分布式计算 DataWorks
使用MaxCompute连接访问Hologres开发实践
很多客户使用MaxCompute和Hologres的集成方案同时满足大规模离线分析、实时运营分析、交互式查询及在线Serving等多业务场景。MaxCompute和Hologres之间支持相互读写对方数据,能够消除不必要的数据冗余,形成有效的数据分层并支持离线/实时统一视图和联合分析。本文重点介绍了MaxCompute如何访问Hologres数据的开发实践。
3748 1
使用MaxCompute连接访问Hologres开发实践
|
SQL 弹性计算 分布式计算
自建Hive数据仓库跨版本迁移到阿里云Databricks数据洞察
客户在IDC或者公有云环境自建Hadoop集群构建数据仓库和分析系统,购买阿里云Databricks数据洞察集群之后,涉及到数仓数据和元数据的迁移以及Hive版本的订正更新。
自建Hive数据仓库跨版本迁移到阿里云Databricks数据洞察
|
SQL 缓存 分布式计算
DLA Presto支持大查询
DLA Presto独享版推出大查询功能,能让相同规格的虚拟集群,分析的数据量提升十倍。