阿里云AnalyticDB数据导出到E-MapReduce实践

本文涉及的产品
EMR Serverless StarRocks,5000CU*H 48000GB*H
简介: 阿里云的分析型数据库(AnalyticDB)和E-MapReduce(简称EMR)在大数据场景下非常有用,本文将介绍如何尝试打通两个产品,将通过EMR中自带的开源工具Sqoop来完成这个任务。

阿里云的分析型数据库(AnalyticDB)和E-MapReduce(简称EMR)在大数据场景下非常有用,本文将介绍如何尝试打通两个产品,将通过EMR中自带的开源工具Sqoop来完成这个任务。

AnalyticDB数据准备

DMS For Analytic DB控制台可以新建数据库和表。数据库和表名分别是:

  • 数据库:test_emr_0
  • 数据表:test1(注意新建表的时候选择更新方式为“实时更新”,这样就可以在DMS里增加数据)
CREATE TABLE test_emr_0.test1 (
a varchar NOT NULL , 
b int NOT NULL , 
primary key (a)
) 
PARTITION BY HASH KEY(a) PARTITION NUM 100
TABLEGROUP test_group
OPTIONS(UPDATETYPE='realtime');

插入数据

insert into test1 (a, b) values ('ads', 1);
insert into test1 (a, b) values ('bds', 2);
insert into test1 (a, b) values ('emr', 3);
insert into test1 (a, b) values ('oss', 4);
insert into test1 (a, b) values ('hadoop', 5);

注意:因为Sqoop工具访问AnalyticDB时使用更加通用的SQL格式,所以默认的LM计算引擎并不适合。需要你提工单将分析型数据库的默认引擎修改成MPP

网络环境准备

AnalyticDB 默认可以用公网访问,比如刚才新建的数据库可用如下地址访问到:test-emr-0-6e2c83b1.cn-hangzhou-1.ads.aliyuncs.com。但是EMR环境只有Master节点可以访问公网,为了使用Sqoop工具(Sqoop作业运行在Worker节点上),需要使用AnalyticDB VPC网络功能,打通EMR VPC网络和AnalyticDB的网络环境。

临时方案也可以为每台EMR worker节点绑定弹性VIP,这样所有的节点都有了公网访问能力(不推荐)。

从AnalyticDB导入数据到Hive

你可以登录EMR Master节点,也可以使用EMR执行计划作业启动Sqoop程序。

下面的命令将AnalyticDB中的test1表导入到EMR Hive中同名表:

sqoop import 
  --connect jdbc:mysql://test-emr-0-6e2c83b1.cn-hangzhou-1.ads.aliyuncs.com:10152/test_emr_0 
  --username <access-key-id> --password <access-key-secret> 
  --table test1 --fields-terminated-by '\001' 
  --hive-import --target-dir /user/hive/warehouse/test1 
  --hive-table test1 --columns a,b --split-by a

看一下Hive表的导入结果:

$ hive -e "select * from test1"
Logging initialized using configuration in file:/etc/ecm/hive-conf-2.3.2-1.0.1/hive-log4j2.properties Async: true
OK
ads     1
bds     2
hadoop  5
emr     3
oss     4
Time taken: 3.602 seconds, Fetched: 5 row(s)

总结

本文介绍了AnalyticDB导出数据到EMR Hive表的过程,希望对你有帮助。

相关实践学习
AnalyticDB MySQL海量数据秒级分析体验
快速上手AnalyticDB MySQL,玩转SQL开发等功能!本教程介绍如何在AnalyticDB MySQL中,一键加载内置数据集,并基于自动生成的查询脚本,运行复杂查询语句,秒级生成查询结果。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
目录
相关文章
|
7天前
|
数据采集 分布式计算 Hadoop
使用Hadoop MapReduce进行大规模数据爬取
使用Hadoop MapReduce进行大规模数据爬取
|
2月前
|
人工智能 自然语言处理 关系型数据库
阿里云云原生数据仓库 AnalyticDB PostgreSQL 版已完成和开源LLMOps平台Dify官方集成
近日,阿里云云原生数据仓库 AnalyticDB PostgreSQL 版已完成和开源LLMOps平台Dify官方集成。
|
2月前
|
人工智能 分布式计算 数据管理
阿里云位居 IDC MarketScape 中国实时湖仓评估领导者类别
国际数据公司( IDC )首次发布了《IDC MarketScape: 中国实时湖仓市场 2024 年厂商评估》,阿里云在首次报告发布即位居领导者类别。
|
2月前
|
SQL 分布式计算 数据挖掘
加速数据分析:阿里云Hologres在实时数仓中的应用实践
【10月更文挑战第9天】随着大数据技术的发展,企业对于数据处理和分析的需求日益增长。特别是在面对海量数据时,如何快速、准确地进行数据查询和分析成为了关键问题。阿里云Hologres作为一个高性能的实时交互式分析服务,为解决这些问题提供了强大的支持。本文将深入探讨Hologres的特点及其在实时数仓中的应用,并通过具体的代码示例来展示其实际应用。
221 0
|
2月前
|
SQL 分布式计算 关系型数据库
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
96 0
|
2月前
|
SQL 分布式计算 关系型数据库
Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
43 0
|
2月前
|
SQL 分布式计算 关系型数据库
Hadoop-22 Sqoop 数据MySQL到HDFS(全量) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-22 Sqoop 数据MySQL到HDFS(全量) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
56 0
|
3月前
|
运维 数据挖掘 OLAP
阿里云Hologres:一站式轻量级OLAP分析平台的全面评测
在数据驱动决策的今天,企业对高效、灵活的数据分析平台的需求日益增长。阿里云的Hologres,作为一站式实时数仓引擎,提供了强大的OLAP(在线分析处理)分析能力。本文将对Hologres进行深入评测,探讨其在多源集成、性能、易用性以及成本效益方面的表现。
155 7
|
2月前
|
分布式计算 资源调度 Hadoop
Hadoop-10-HDFS集群 Java实现MapReduce WordCount计算 Hadoop序列化 编写Mapper和Reducer和Driver 附带POM 详细代码 图文等内容
Hadoop-10-HDFS集群 Java实现MapReduce WordCount计算 Hadoop序列化 编写Mapper和Reducer和Driver 附带POM 详细代码 图文等内容
100 3
|
6月前
|
分布式计算 Hadoop Java
Hadoop MapReduce编程
该教程指导编写Hadoop MapReduce程序处理天气数据。任务包括计算每个城市ID的最高、最低气温、气温出现次数和平均气温。在读取数据时需忽略表头,且数据应为整数。教程中提供了环境变量设置、Java编译、jar包创建及MapReduce执行的步骤说明,但假设读者已具备基础操作技能。此外,还提到一个扩展练习,通过分区功能将具有相同尾数的数字分组到不同文件。
65 1