DLA实现跨地域、跨实例的多AnalyticDB读写访问

1. 介绍

  • 实时数据仓库ADB(AnalyticDB)云产品:https://www.aliyun.com/product/ads
  • 数据湖分析服务DLA(Data Lake Analytics)云产品:https://www.aliyun.com/product/datalakeanalytics
  • 数据湖分析DLA简介:https://yq.aliyun.com/articles/635516

DLA作为数据湖数据分析场景中的中枢,能够对云上众多数据存储、数据库等系统进行融合数据分析,为用户提供统一操作视角,打通系统边界,对分析结果进行回流。

目前已经支持的数据存储、数据库系统包括:

数据系统源(查询目标(数据回流)
OSS支持支持
Table Store支持支持
AnalyticDB支持支持
RDS for MySQL支持支持
用户自建MySQL支持支持
RDS for PostgreSQL支持支持
用户自建PostgreSQL支持支持
RDS for SQL Server支持支持
用户自建SQL Server支持支持
云数据库Redis支持暂不支持
用户自建Redis支持暂不支持
云数据库MongoDB支持暂不支持
用户自建MongoDB支持暂不支持
PolarDB支持支持

通过弹性网络技术,目前DLA支持了跨地域(region)的数据访问能力,上述的多个数据源同时通过DLA也具备了跨多个地域的融合分析能力,能够帮助用户实现多云(Multicloud: https://en.wikipedia.org/wiki/Multicloud)场景下的数据融合分析。

本文重点介绍通过DLA实现跨地域、跨实例的多AnalyticDB读写访问。涉及的网络结构如下图所示,假设用户使用的DLA服务位于上海region。

2. 场景示例

ADB中的数据

假设ADB的两个实例中,都已经存在如下两张表,对应ADB的DDL为:

CREATE TABLE customer (c_custkey int COMMENT '',c_name varchar COMMENT '',c_address varchar COMMENT '',c_nationkey int COMMENT '',c_phone varchar COMMENT '',c_acctbal double COMMENT '',c_mktsegment varchar COMMENT '',c_comment varchar COMMENT '',PRIMARY KEY (C_CUSTKEY,C_NATIONKEY)
)
PARTITION BY HASH KEY (C_CUSTKEY) PARTITION NUM 32
TABLEGROUP tpch_50x_group
OPTIONS (UPDATETYPE='realtime')
COMMENT '';CREATE DIMENSION TABLE nation (n_nationkey int COMMENT '',n_name varchar COMMENT '',n_regionkey int COMMENT '',n_comment varchar COMMENT '',PRIMARY KEY (N_NATIONKEY)
)
OPTIONS (UPDATETYPE='realtime')
COMMENT '';

其中customer表有7,500,000条数据,nation表有25条数据。

DLA映射北京region的ADB实例

由于使用的是上海region的DLA服务,所以,需要通过公网访问该北京region的ADB实例的经典网络地址:ads-dla-test-f508cb23.cn-beijing-1.ads.aliyuncs.com:10006(跨region访问不能走VPC,网络不通)

连接上海region的DLA服务,执行如下建库和建表命令,映射指向北京region ADB实例和customer表。

CREATE DATABASE `beijing_public_ads_dla_test`
WITH DBPROPERTIES (catalog = 'ads',location = 'jdbc:mysql://ads-dla-test-f508cb23.cn-beijing-1.ads.aliyuncs.com:10006/ads_dla_test',instance = 'ads_dla_test',user = 'L*T',password = '****'
)
COMMENT '';CREATE EXTERNAL TABLE IF NOT EXISTS `customer` (`c_custkey` INT NULL COMMENT '',`c_name` STRING NULL COMMENT '',`c_address` STRING NULL COMMENT '',`c_nationkey` INT NULL COMMENT '',`c_phone` STRING NULL COMMENT '',`c_acctbal` DOUBLE NULL COMMENT '',`c_mktsegment` STRING NULL COMMENT '',`c_comment` STRING NULL COMMENT ''
);CREATE EXTERNAL TABLE IF NOT EXISTS nation (n_nationkey int COMMENT '',n_name varchar COMMENT '',n_regionkey int COMMENT '',n_comment varchar COMMENT ''
);

DLA映射上海region的ADB实例

由于使用的是上海region的DLA服务,所以,可以通过VPC网络地址访问同上海region的ADB实例:dla-data-4d5443bf-vpc.cn-shanghai-1.ads.aliyuncs.com:10001


注意:为ADB生成的VPC URL必须是为

连接上海region的DLA服务,执行如下建库和建表命令,映射指向上海region ADB实例和customer表。

CREATE DATABASE `shanghai_vpc_dla_data`
WITH DBPROPERTIES (catalog = 'ads',location = 'jdbc:mysql://dla-data-4d5443bf-vpc.cn-shanghai-1.ads.aliyuncs.com:10001/dla_data',instance = 'dla_data',user = 'L*M',password = '****'
)
COMMENT '';CREATE EXTERNAL TABLE IF NOT EXISTS `customer` (`c_custkey` INT NULL COMMENT '',`c_name` STRING NULL COMMENT '',`c_address` STRING NULL COMMENT '',`c_nationkey` INT NULL COMMENT '',`c_phone` STRING NULL COMMENT '',`c_acctbal` DOUBLE NULL COMMENT '',`c_mktsegment` STRING NULL COMMENT '',`c_comment` STRING NULL COMMENT ''
);CREATE EXTERNAL TABLE IF NOT EXISTS nation (n_nationkey int COMMENT '',n_name varchar COMMENT '',n_regionkey int COMMENT '',n_comment varchar COMMENT ''
);

查询

如下是按照国家统计客户的数量的查询示例,由于上述两个ADB实例中的两张表的数据相同,所以通过DLA查询,下面四个查询的结果是相同的。查询是通过上海region的DLA执行的:

  • 查询1:北京region ADB的customer表join北京region ADB的nation表;
SELECT a.c_nationkey, b.n_name, count(*) as cnt
FROM beijing_public_ads_dla_test.customer a
JOIN beijing_public_ads_dla_test.nation b ON a.c_nationkey = b.n_nationkey
GROUP BY a.c_nationkey, b.n_name
ORDER BY cnt DESC;
  • 查询2:上海region ADB的customer表join上海region ADB的nation表;
SELECT a.c_nationkey, b.n_name, count(*) as cnt
FROM shanghai_vpc_dla_data.customer a
JOIN shanghai_vpc_dla_data.nation b ON a.c_nationkey = b.n_nationkey
GROUP BY a.c_nationkey, b.n_name
ORDER BY cnt DESC;
  • 查询3:上海region ADB的customer表join北京region ADB的nation表;
SELECT a.c_nationkey, b.n_name, count(*) as cnt
FROM shanghai_vpc_dla_data.customer a
JOIN beijing_public_ads_dla_test.nation b ON a.c_nationkey = b.n_nationkey
GROUP BY a.c_nationkey, b.n_name
ORDER BY cnt DESC;
  • 查询4:北京region ADB的customer表join上海region ADB的nation表;
SELECT a.c_nationkey, b.n_name, count(*) as cnt
FROM beijing_public_ads_dla_test.customer a
JOIN shanghai_vpc_dla_data.nation b ON a.c_nationkey = b.n_nationkey
GROUP BY a.c_nationkey, b.n_name
ORDER BY cnt DESC;

写入

通过DLA执行INSERT from SELECT,将其他数据源的查询结果写入ADB数据源中。

在DLA中执行如下语句,指向上海region的OSS bucket建库、建表:

CREATE DATABASE `tpch_50x_text`
WITH DBPROPERTIES (catalog = 'oss',location = 'oss://oss-****/datasets/tpch/50x/text_date/'
)
COMMENT '';CREATE EXTERNAL TABLE `tpch_50x_text`.`nation` (`n_nationkey` int,`n_name` string,`n_regionkey` int,`n_comment` string
)
ROW FORMAT DELIMITEDFIELDS TERMINATED BY '|'
STORED AS `TEXTFILE`
LOCATION 'oss://oss-****/datasets/tpch/50x/text_date/nation_text';

更多关于DLA对OSS的数据查询,请参考:
https://yq.aliyun.com/articles/623282 (教程:使用Data Lake Analytics + OSS分析CSV格式的TPC-H数据集)
https://yq.aliyun.com/articles/623246 (教程:Data Lake Analytics + OSS数据文件格式处理大全)
https://yq.aliyun.com/articles/623247 (Data Lake Analytics中OSS LOCATION的使用说明)
https://yq.aliyun.com/articles/624151 (教程:如何使用Data Lake Analytics创建分区表)
https://yq.aliyun.com/articles/679405 (使用Data Lake Analytics快速分析OSS上的日志文件)
https://yq.aliyun.com/articles/672475 (教程:如何通过DLA实现数据文件格式转换)

如下示例场景:

  • 通过上海region DLA服务,将上海region的OSS bucket数据写入上海region的ADB中:
INSERT INTO shanghai_vpc_dla_data.nation 
SELECT * FROM tpch_50x_text.nation;
  • 通过上海region DLA服务,将上海region的OSS bucket数据写入北京region的ADB中:(由于需要跨region的公网访问,建议该模式下数据量不要太大)
INSERT INTO beijing_public_ads_dla_test.nation 
SELECT * FROM tpch_50x_text.nation;
  • 通过上海region DLA服务,将上海region的ADB数据写入北京region的ADB中:(由于需要跨region的公网访问,建议该模式下数据量不要太大)
INSERT INTO beijing_public_ads_dla_test.nation 
SELECT * FROM shanghai_vpc_dla_data.nation;
  • 通过上海region DLA服务,将北京region的ADB数据写入上海region的ADB中:(由于需要跨region的公网访问,建议该模式下数据量不要太大)
INSERT INTO shanghai_vpc_dla_data.nation 
SELECT * FROM beijing_public_ads_dla_test.nation;

 


原文链接
本文为云栖社区原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/519818.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Data Lake Analytics: 以SQL方式查询Redis数据

Data Lake Analytics 作为云上数据处理的枢纽,最近加入了对于Redis 的支持, 这篇教程带你玩转 DLA 的 Redis 支持。 创建数据库 在 DLA 里面创建一个底层映射到 Redis 的数据库的语法如下: CREATE DATABASE redis_test WITH DBPROPERTIES (catalog redis,locati…

云上中国年,阿里云CDN猪年春节高峰流量再创新高

虽然科技拉近了时空距离,但是大部分中国人还是在春节前穿越了千山万水,为的就是能与家人吃一顿年夜饭,这是中国人不变的情结。 过春节,红包可是少不了的关键词,互联网赋予了红包更多元的意义。各大平台每年都会有新玩…

分布式事务中间件 Fescar—RM 模块源码解读

前言 在SOA、微服务架构流行的年代,许多复杂业务上需要支持多资源占用场景,而在分布式系统中因为某个资源不足而导致其它资源占用回滚的系统设计一直是个难点。我所在的团队也遇到了这个问题,为解决这个问题上,团队采用的是阿里开…

腾讯多媒体实验室:基于三维卷积神经网络的全参考视频质量评估算法

腾讯有多个视频业务线,点播视频有腾讯视频、企鹅影视,短视频有微视、K歌,直播类有Now直播、企鹅电竞,实时传输类有QQ和微信的音视频通话、无线投屏和腾讯会议等。 用户对不同的产品有不同程度的期待:比如理想网络环境…

使用 QuickBI 搭建酷炫可视化分析

随着各行各业大数据的渗透,BI 类数据分析需求与日俱增,如何让可视化更好的展现数据的价值,是 BI 类产品一直努力的方向。对此国内外的BI产品都有自己的方法,如国外大牌的 PowerBI、Tableau,还有国内的 FineBI、BDP、Qu…

深度学习原来还可以这么学!

最近身边很多朋友在讨论人工智能,讨论人工智能在我们生活中的应用,随之而来就开始讨论深度学习技术,但是由于深度学习的涉及面比较广,对数学的要求比较高,所以想学也不太敢学,生怕认真学了却没学会。其实可…

spring-security登录和权限管理

spring security spring security 主要的两个功能是认证和授权 认证的大概流程: Username password AuthenticationFilter(自定义usernamepassword拦截器) UserDetailService (查询用户密码的service接口) Userdetail…

官宣!阿里Blink和Flink合并计划出炉

apache已公开合并计划,点击可阅读原文《Batch as a Special Case of Streaming and Alibabas contribution of Blink》,由AI前线进行了翻译。 **春节前一周,经过社区内部讨论,阿里巴巴大数据引擎 Blink 作为 Flink 的分支 正式开源…

第四章、项目整合管理【PMP】

文章目录1. 简介2. 项目整合管理涉及的方面3. 项目整合管理的过程包括2. 制定项目章程3. 制定项目章程:输入4. 制定项目管理计划5. 指导和管理项目工作6. 管理项目知识7. 监督项目工作8. 监控项目工作9. 实施整体变更控制10. 结束项目或阶段1. 简介 项目整合管理是…

龙芯新款处理器发布;Citrix 产品曝“惊天漏洞”,影响全球 8 万家公司; AMD发布年度5大里程碑 ……...

关注并标星星CSDN云计算 速递、最新、绝对有料。这里有企业新动、这里有业界要闻,打起十二分精神,紧跟fashion你可以的!每周两次,打卡即read更快、更全了解泛云圈精彩newsgo go go铠侠(东芝)开发新型闪存&a…

开源SQL-on-Hadoop系统一览

引言 查询分析是大数据要解决的核心问题之一,而SQL作为查询分析中使用最简单、最广泛的的语言之一,必然而然的催生了许多支持在Hadoop上使用SQL的系统,这就是所谓的SQL-on-Hadoop系统,其中大众熟知的Hive就是最早的SQL-on-Hadoop…

PL/SQL中查询Oracle大数(17位以上)时显示科学计数法的解决方法

PL/SQL查询时,如果Number(17)以上的大数,会显示为科学计数法 解决方法: TOOLS->PREFERENCES->WINDOW TYPE->SQL WINDOW下选中Number fields to_char即可。

虎牙直播在微服务改造方面的实践和总结

相比文字和图片,直播提供了人与人之间更丰富的沟通形式,其对平台稳定性的考验很大,那么倡导“以技术驱动娱乐”的虎牙直播(以下简称“虎牙”)是如何在技术上赋能娱乐,本文将为您介绍虎牙在DNS、服务注册、C…

区块链人才缺口明年将达顶峰,核心开发者年入百万很正常

区块链技术一直备受争议,庞氏骗局、泡沫明显、去中心化无意义,技术无法真正建立信任、区块链技术并不能真正履行货币职能、比特币矿机耗电量大、浪费资源等等。2018年,加密货币市场总价值损失超过80%,链圈就此进入阴影。区块链技术…

阿里云移动端播放器高级功能---截图和音频波形

基本介绍 如果用户对视频播放中的某一帧画面特别感兴趣,可以使用截图功能将这一帧视频保存起来。另外有一种场景想知道是否有声音,或者想感知声音的大小震动频率等,可以通过显示一个声音的波形来形象的表示。如下图所示: 那么播放…

AES和RSA前后端加解密

先了解AES和RSA加密算法 AES算法 1、运算速度快,在有反馈模式、无反馈模式的软硬件中,Rijndael都表现出非常好的性能。 2、对内存的需求非常低,适合于受限环境。 3、Rijndael 是一个分组迭代密码, 分组长度和密钥长度设计灵活。 4、AES标…

PMBOK第六版最新十大大知识领域ITTO思维导图-干货!

PMBOK学习过程中,ITTO(输入、工具、技术、输出)是每年必考的内容,掌握ITTO的脉络,对学习和梳理PMP非常有帮助。知道这个过程要做什么,为什么做,做完有什么成果。也是项目经理必备的技能之一。 …

这个情人节,工程师用阿里云来试着表达不一样的爱意

年轻的时候谈的恋爱就像TCP链接,恋爱时三次握手即可,可分手时却分了四次。而常常久久的爱情,更像是icmp协议,无论对方身在何处,无论是否是可靠连接,无论你何时去ping她/他,她/他都默默地响应你。…

云+X案例展 | 金融类:金山云为新网银行重塑金融服务提供云计算动力

本案例由金山云投递并参与评选,CSDN云计算独家全网首发;更多关于【云X 案例征集】的相关信息,点击了解详情丨挖掘展现更多优秀案例,为不同行业领域带来启迪,进而推动整个“云行业”的健康发展。作为国内第三家、中西部…