HybridDB PG中,如何输出单个文件到OSS

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,内容安全 1000次 1年
对象存储 OSS,恶意文件检测 1000次 1年
简介: 使用HybridDB PG的外部表输出数据到OSS时,一般会输出成多个文件(文件个数一般与节点数个数一致)。如何输出为一个文件呢?步骤如下: 1)创建示例表: create table test( A1 char(30), A2 char(30), A3 varchar(255).

使用HybridDB PG的外部表输出数据到OSS时,一般会输出成多个文件(文件个数一般与节点数个数一致)。如何输出为一个文件呢?步骤如下:

1)创建示例表:

create table test(
  A1  char(30),
  A2  char(30),
  A3  varchar(255),
  A4  varchar(255)
)  with (appendonly=true, orientation=column, compresstype=zlib, checksum=false, fillfactor=100) distributed randomly;

2)插入数据:

insert into test values('xxxxxxx','yyyyy','zzzzz','wwwww');
insert into test select * from test;
insert into test select * from test;
insert into test select * from test;
insert into test select * from test;
insert into test select * from test;
insert into test select * from test;

3)创建外部表写表,按源数据表的结构创建外部表。注意:

  1. 相对于本地源表的表结构,需要添加一个临时字段,例如dummy_col,最好作为第一个字段。
  2. 添加output_generator_col=false
    file_name_generator_col=dummy_col这两个选项。file_name_generator_col这个参数指定a.中添加的字段。
create writable external table test_oss_write(
  dummy_col text,
  A1  text,
  A2  text,
  A3  text,
  A4  text
)
location('oss://oss-cn-shanghai-internal.aliyuncs.com
dir=oncall_test/
id=xx
key=xx
bucket=osshuadong2
oss_connect_timeout=60
oss_dns_cache_timeout=300
output_generator_col=false
file_name_generator_col=dummy_col
') FORMAT 'csv'  ( DELIMITER ',') 
distributed by (dummy_col)
;

4) 将test数据写入到oss中。这里为了避开我们的一些limitation,写成了如下形式,将A1-A4和表test换成用户的字段和表名即可。

set rds_write_oss_file_by_distribution_column=on;   


explain insert into test_oss_write select x, A1, A2, A3, A4 from (select row_number() over (partition by dummy_col||dummy_col) as RN, dummy_col||dummy_col as x, A1, A2, A3, A4 from (select y as dummy_col, A1, A2, A3, A4 from test, (values(1)) as q1(y)) as q2 ) as q3;
相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
目录
相关文章
|
2月前
|
文字识别 算法 API
视觉智能开放平台产品使用合集之上传素材文件不在同一地域的OSS,怎么上传多张图片
视觉智能开放平台是指提供一系列基于视觉识别技术的API和服务的平台,这些服务通常包括图像识别、人脸识别、物体检测、文字识别、场景理解等。企业或开发者可以通过调用这些API,快速将视觉智能功能集成到自己的应用或服务中,而无需从零开始研发相关算法和技术。以下是一些常见的视觉智能开放平台产品及其应用场景的概览。
39 1
|
2月前
|
存储 运维 Serverless
函数计算产品使用问题之OSS触发器是否可以只设置文件前缀
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
2月前
|
存储 关系型数据库 对象存储
MPP架构数据仓库使用问题之OSS的RT相比ESSD云盘较高,ADB PG这一问题是如何解决的
MPP架构数据仓库使用问题之OSS的RT相比ESSD云盘较高,ADB PG这一问题是如何解决的
|
3月前
|
消息中间件 分布式计算 DataWorks
DataWorks产品使用合集之如何使用Python和阿里云SDK读取OSS中的文件
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
3月前
|
分布式计算 DataWorks 调度
DataWorks产品使用合集之在使用MaxCompute进行数据集成同步到OSS时,出现表名和OSS文件名不一致且多了后缀,该如何处理
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
3月前
|
运维 Serverless 对象存储
函数计算产品使用问题之如何配合OSS实现接口收到的图片或文件直接存入OSS
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
4月前
|
SQL 分布式计算 大数据
MaxCompute产品使用问题之如果oss文件过大,如何在不调整oss源文件大小的情况下优化查询sql
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
3月前
|
分布式计算 DataWorks 数据管理
DataWorks操作报错合集之使用OSS读取CSV文件到ODPS时遇到报错,一般是什么导致的
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
4月前
|
文字识别 算法 API
视觉智能开放平台产品使用合集之在调用接口传入的图片URL参数,文件在本地或者非上海地域OSS链接,该怎么办
视觉智能开放平台是指提供一系列基于视觉识别技术的API和服务的平台,这些服务通常包括图像识别、人脸识别、物体检测、文字识别、场景理解等。企业或开发者可以通过调用这些API,快速将视觉智能功能集成到自己的应用或服务中,而无需从零开始研发相关算法和技术。以下是一些常见的视觉智能开放平台产品及其应用场景的概览。
|
4月前
|
Java 对象存储
阿里云OSS上传下载文件java
阿里云OSS上传下载文件java
311 0

热门文章

最新文章