DLA 分析 AnalyticDB for PostgreSQL 数据源的数据

简介: 简介 数据湖分析(Data Lake Analytics,DLA)是无服务器(Serverless)化的云上交互式查询分析服务。无需ETL,就可通过DLA在云上通过标准JDBC直接对阿里云OSS,TableStore,RDS,MongoDB等不同数据源中存储的数据进行查询和分析。

简介

数据湖分析(Data Lake Analytics,DLA)是无服务器(Serverless)化的云上交互式查询分析服务。无需ETL,就可通过DLA在云上通过标准JDBC直接对阿里云OSS,TableStore,RDS,MongoDB等不同数据源中存储的数据进行查询和分析。DLA无缝集成各类商业分析工具,提供便捷的数据可视化。

DLA提供了几大核心亮点:

  • 轻松分析多源数据:OSS,TableStore,RDS等,让不同存储源中沉睡已久的数据,具备分析能力。
  • 能够对异构数据源做关联分析。
  • 全Serverless结构,无需长期持有成本,完全按需使用,更灵活,资源伸缩方便,升级无感知。

AnalyticDB for PostgreSQL 中文名为分析型数据库PostgreSQL版(原HybridDB for PostgreSQL)是一种简单、快速、经济高效的 PB 级云端数据仓库解决方案。分析型数据库PostgreSQL版 兼容 Greenplum 开源数据仓库,为一种采用 MPP 全并行架构的数仓服务,其广泛兼容 PostgreSQL/Oracle 的语法生态,新一代向量引擎性能超越传统数据库引擎 10 倍以上,分布式SQL优化器实现复杂查询语句免调优。通过分析型数据库PostgreSQL版可以实现对海量数据的即席查询分析、ETL 处理及可视化探索,是各行业有竞争力的云上数据仓库解决方案。

随着 DLA 使用的用户数越来越多,通过 DLA 读写 AnalyticDB for PostgreSQL 并和其他数据源整合分析已经成为客户一个很重要的需求,基于这个情况,我们为 DLA 添加了读写 AnalyticDB for PostgreSQL 数据源的功能。

如何使用

AnalyticDB for PostgreSQL 数据准备

我们先在已经购买好的 AnalyticDB for PostgreSQL 里面建一张表吧,如下:

CREATE TABLE products ( 
         product_no integer PRIMARY KEY,
         name text,
         price numeric)
DISTRIBUTED BY (product_no);

image

这张表默认是创建在名为 postgres 的数据库里面,对应的 Schema 为 public,我们往里面插入几条数据:

INSERT INTO products (product_no, name, price) VALUES
    (1, 'Cheese', 9.99),
    (2, 'Bread', 1.99),
    (3, 'Milk', 2.99);

image
我们可以查看下已经插入进去的数据
image

通过 DLA 操作 AnalyticDB for PostgreSQL

为了让 DLA 能够访问 AnalyticDB for PostgreSQL,需要到 AnalyticDB for PostgreSQL 对应的实例里面添加 100.104.0.0/16 IP 白名单。
image

现在我们可以在 DLA 里面读写这张表了,具体如下。通过 DLA 控制台创建一张数据库:

CREATE SCHEMA `dla_adbpg_test_db` WITH DBPROPERTIES (
  CATALOG = 'adbpg',
  LOCATION = 'jdbc:postgresql://gp-xxxxx.gpdb.rds.aliyuncs.com:3432/postgres',
  USER = 'xxxx',
  PASSWORD = 'xxxxx',
  INSTANCE_ID = 'xxxxxx',
  VPC_ID = 'x'xxx
); 

image
说明:

  • 这里 CATALOG 需要写 adbpg,代表数据源是 AnalyticDB for PostgreSQL
  • LOCATION:这里到你 AnalyticDB for PostgreSQL 控制台里面看下对应 AnalyticDB for PostgreSQL 实例的内网地址,因为我这里是默认的数据库,所以写 postgres。这里需要根据你实际情况写对应的数据库名称。
  • USER 和 PASSWORD 对应的是你 AnalyticDB for PostgreSQL 的用户名和密码;
  • INSTANCE_ID:对应 AnalyticDB for PostgreSQL 实例ID
  • VPC_ID: 对应的是 VPC id。

建表语法

语法一

create external table dla_tablename (
       column1 datatype,
       column2 datatype,
       column3 datatype
) tblproperties(
  table_mapping = 'schema_name.adbpg_tablename'
);

语法二

create external table dla_tablename like mapping('schema_name.adbpg_tablename');

语法二

msck repair database dla_adbpg_db

注意:因为 AnalyticDB for PostgreSQL 里面一个 db 里面会有多个 schema,不同 schema 里面的表名可能会有重复,所以目前 msck repair database 只能识别出 public schema 里面的表。

我们使用上面的建表语法一,在 DLA 里面创建一张表和刚刚 AnalyticDB for PostgreSQL 上面的 products 表映射:

create external table products (
       product_no int,
       name varchar(1023),
       price double
) tblproperties(
  table_mapping = 'public.products'
);

当然,如果我们不知道 AnalyticDB for PostgreSQL 中对应库里面有什么表,或者表太多,我不想一张一张到 DLA 里面建立映射,那我们也可以使用下面命令自动识别 AnalyticDB for PostgreSQL 对应库里面的表:

msck repair database dla_adbpg_test_db

现在我们可以通过 DLA 查询 AnalyticDB for PostgreSQL 里面 products 表中的数据:
image
当然,我们也可以通过 DLA 往 AnalyticDB for PostgreSQL 中的 products 表插入数据:

insert into dla_adbpg_test_db.products values(4, 'Apple', 10.1)

image

为了确定这条数据的确插入到 AnalyticDB for PostgreSQL 中的 products 表里面,我们到 DMS 中查看这张表的数据:
image
可以看到,这条数据确实插进去了。

快去体验 DLA 读写 AnalyticDB for PostgreSQL 里面的表吧。

相关实践学习
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
相关文章
|
9天前
|
存储 人工智能 关系型数据库
阿里云AnalyticDB for PostgreSQL 入选VLDB 2025:统一架构破局HTAP,Beam+Laser引擎赋能Data+AI融合新范式
在数据驱动与人工智能深度融合的时代,企业对数据仓库的需求早已超越“查得快”这一基础能力。面对传统数仓挑战,阿里云瑶池数据库AnalyticDB for PostgreSQL(简称ADB-PG)创新性地构建了统一架构下的Shared-Nothing与Shared-Storage双模融合体系,并自主研发Beam混合存储引擎与Laser向量化执行引擎,全面解决HTAP场景下性能、弹性、成本与实时性的矛盾。 近日,相关研究成果发表于在英国伦敦召开的数据库领域顶级会议 VLDB 2025,标志着中国自研云数仓技术再次登上国际舞台。
86 0
|
2月前
|
SQL DataWorks 关系型数据库
DataWorks+Hologres:打造企业级实时数仓与高效OLAP分析平台
本方案基于阿里云DataWorks与实时数仓Hologres,实现数据库RDS数据实时同步至Hologres,并通过Hologres高性能OLAP分析能力,完成一站式实时数据分析。DataWorks提供全链路数据集成与治理,Hologres支持实时写入与极速查询,二者深度融合构建离在线一体化数仓,助力企业加速数字化升级。
|
4月前
|
存储 缓存 分布式计算
StarRocks x Iceberg:云原生湖仓分析技术揭秘与最佳实践
本文将深入探讨基于 StarRocks 和 Iceberg 构建的云原生湖仓分析技术,详细解析两者结合如何实现高效的查询性能优化。内容涵盖 StarRocks Lakehouse 架构、与 Iceberg 的性能协同、最佳实践应用以及未来的发展规划,为您提供全面的技术解读。 作者:杨关锁,北京镜舟科技研发工程师
StarRocks x Iceberg:云原生湖仓分析技术揭秘与最佳实践
|
6月前
|
SQL 分布式计算 数据挖掘
从湖仓分离到湖仓一体,四川航空基于 SelectDB 的多源数据联邦分析实践
川航选择引入 SelectDB 建设湖仓一体大数据分析引擎,取得了数据导入效率提升 3-6 倍,查询分析性能提升 10-18 倍、实时性提升至 5 秒内等收益。
462 63
从湖仓分离到湖仓一体,四川航空基于 SelectDB 的多源数据联邦分析实践
|
7月前
|
SQL 运维 BI
湖仓分析|浙江霖梓基于 Doris + Paimon 打造实时/离线一体化湖仓架构
浙江霖梓早期基于 Apache Doris 进行整体架构与表结构的重构,并基于湖仓一体和查询加速展开深度探索与实践,打造了 Doris + Paimon 的实时/离线一体化湖仓架构,实现查询提速 30 倍、资源成本节省 67% 等显著成效。
356 3
湖仓分析|浙江霖梓基于 Doris + Paimon 打造实时/离线一体化湖仓架构
|
6月前
|
关系型数据库 MySQL OLAP
无缝集成 MySQL,解锁秒级 OLAP 分析性能极限,完成任务可领取三合一数据线!
通过 AnalyticDB MySQL 版、DMS、DTS 和 RDS MySQL 版协同工作,解决大规模业务数据统计难题,参与活动完成任务即可领取三合一数据线(限量200个),还有机会抽取蓝牙音箱大奖!
|
6月前
|
SQL 关系型数据库 PostgreSQL
【YashanDB 知识库】从 PostgreSQL 迁移到 YashanDB 如何进行数据行数比对
【YashanDB 知识库】从 PostgreSQL 迁移到 YashanDB 如何进行数据行数比对
|
6月前
|
SQL Oracle 关系型数据库
【YashanDB知识库】从PostgreSQL迁移到YashanDB如何进行数据行数比对
本文介绍了通过Oracle视图`v$sql`和`v$sql_plan`分析SQL性能的方法。首先,可通过`plan_hash_value`从`v$sql_plan`获取SQL执行计划,结合示例展示了具体查询方式。文章还创建了一个UDF函数`REPEAT`用于格式化输出,便于阅读复杂执行计划。最后,通过实例展示了如何根据`plan_hash_value`获取SQL文本及其内存中的执行计划,帮助优化性能问题。
|
9月前
|
SQL 存储 缓存
EMR Serverless StarRocks 全面升级:重新定义实时湖仓分析
本文介绍了EMR Serverless StarRocks的发展路径及其架构演进。首先回顾了Serverless Spark在EMR中的发展,并指出2021年9月StarRocks开源后,OLAP引擎迅速向其靠拢。随后,EMR引入StarRocks并推出全托管产品,至2023年8月商业化,已有500家客户使用,覆盖20多个行业。 文章重点阐述了EMR Serverless StarRocks 1.0的存算一体架构,包括健康诊断、SQL调优和物化视图等核心功能。接着分析了存算一体架构的挑战,如湖访问不优雅、资源隔离不足及冷热数据分层困难等。
|
11月前
|
SQL 分布式计算 Serverless
EMR Serverless Spark:一站式全托管湖仓分析利器
本文根据2024云栖大会阿里云 EMR 团队负责人李钰(绝顶) 演讲实录整理而成
561 58

热门文章

最新文章

推荐镜像

更多