tencent cloud

腾讯云数据仓库 TCHouse-P

产品动态
产品简介
产品概述
应用场景
节点规格
集群架构
购买指南
计费概述
购买方式
欠费说明
快速入门
操作指南
管理集群
访问数据仓库
监控告警
访问管理
性能指标
TPC-B
工具及下载
数据接入
使用 DataX 离线导入 TencentDB 数据
DataX 增量同步导入 MySQL 数据
使用外表高速导入或导出 COS 数据
使用外表同步 EMR 数据
使用 rule 规则实现云数据仓库 PostgreSQL upsert 操作
数仓开发
云上搭建 Airflow
API 文档
History
Introduction
API Category
Making API Requests
Information Query APIs
Instance APIs
Query APIs
Cluster Management APIs
Cluster Operation APIs
Data Types
Error Codes
实践教程
数仓表开发
表分布键选择
表存储格式选择
表分区使用
插件使用
冷备数据
统计信息和空间维护
常见问题
联系我们

使用外表同步 EMR 数据

PDF
聚焦模式
字号
最后更新时间: 2024-11-27 15:36:05

背景说明

在数据仓库的建设中,通常我们使用 Hive 处理原始数据(PB 级别),进行耗时较长的 ETL 工作,再将结果数据(TB 级别)交由准实时的计算引擎(例如腾讯云数据仓库 TCHouse-P)对接 BI 工具,保证报表的准实时展现。
本文介绍了如何将 EMR 上 Hive 的数据通过 COS 导入到腾讯云数据仓库 TCHouse-P 的过程。

操作步骤

注意:
腾讯云数据仓库 TCHouse-P 不支持 ORC、Parquet 等格式,仅支持 CSV 等文本格式及其对应的 GZIP 压缩格式。
腾讯云数据仓库 TCHouse-P 侧导入 COS 数据的效率与文件的个数有一定关系,建议个数为腾讯云数据仓库 TCHouse-P 计算节点个数的 N 倍。
1. 开启 EMR 读写对象存储能力 首先需要保证 EMR 具备读写 COS 的能力,可在创建 EMR 时,勾选开启对象存储。
2. 创建 Hive 本地表并写入数据
create table hive_local_table(c1 int, c2 string, c3 int, c4 string);
insert into hive_local_table values(1001, 'c2', 99, 'c4'),(1002, 'c2', 100, 'c4'),(1003, 'c2', 101, 'c4'),(1004, 'c2', 100, 'c4'),(1005, 'c2', 101, 'c4')
3. 创建 Hive COS 外表
create table hive_cos_table(c1 int, c2 string, c3 int, c4 string)
row format delimited fields terminated by ','
LINES TERMINATED BY '\\n'
stored as textfile location 'cosn://{bucket_name}/{dir_name}';
详细信息可以参考 EMR 文档 基于对象存储 COS 的数据仓库
4. 将本地数据导入 COS
insert into hive_cos_table select * from hive_local_table;
成功写入后,可以在对应的 COS 目录下看到文件。
5. 在腾讯云数据仓库 TCHouse-P 侧创建 COS 外表
CREATE READABLE EXTERNAL TABLE snova_cos_table (c1 int, c2 varchar(32), c3 int, c4 varchar(32))
LOCATION('cos:// {BUCKET}-{APPID}.cos.{REGION}.myqcloud.com/{PREFIX} secretKey=**** secretId=***')
FORMAT 'csv';
6. 在腾讯云数据仓库 TCHouse-P 侧创建本地表并导入数据
create table snova_local_table(c1 int, c2 text, c3 int, c4 text);
insert into snova_local_table select * from snova_cos_table;

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈