云上快速入门,热门云上应用快速查找
丰富的线上&线下活动,深入探索云世界
做任务,得社区积分和周边
最真实的开发者用云体验
让每位学生受益于普惠算力
让创作激发创新
资深技术专家手把手带教
遇见技术追梦人
畅聊无限,分享你的技术见解
技术交流,直击现场
海量开发者使用工具、手册,免费下载
极速、全面、稳定、安全的开源镜像
开发手册、白皮书、案例集等实战精华
为开发者定制的Chrome浏览器插件
热门
阿里云支持通过oss_fdw插件将OSS中的数据加载到PostgreSQL和PPAS数据库中,也支持将PostgreSQL和PPAS数据库中的数据写入OSS中。 oss_fdw 参数 oss_fdw和其他fdw接口一样,对外部数据OSS中的数据进行封装。用户可以像使用数据表一样通过oss_fdw读取OSS中存放的数据。oss_fdw提供独有的参数用于连接和解析OSS上的文件数据。 [tr=transparent] [/url]说明[tr=transparent]oss_flush_block_size和oss_flush_block_size两个参数对导入模式无效。辅助函数FUNCTION oss_fdw_list_file (relname text, schema text DEFAULT ‘public’) 用于获得某个外部表所匹配的OSS上的文件名和文件的大小。文件大小的单位是字节。select * from oss_fdw_list_file('t_oss'); name | size--------------------------------+----------- oss_test/test.gz.1 | 739698350 oss_test/test.gz.2 | 739413041 oss_test/test.gz.3 | 739562048(3 rows)辅助功能oss_fdw.rds_read_one_file:在读模式下,指定某个外表匹配的文件。设置后,该外部表在数据导入中只匹配被设置的一个文件。例如,set oss_fdw.rds_read_one_file = ‘oss_test/example16.csv.1’;set oss_fdw.rds_read_one_file = 'oss_test/test.gz.2';select * from oss_fdw_list_file('t_oss'); name | size--------------------------------+----------- oss_test/test.gz.2 | 739413041(1 rows)oss_fdw用例# 创建插件create extension oss_fdw;# 创建 server CREATE SERVER ossserver FOREIGN DATA WRAPPER oss_fdw OPTIONS(host 'oss-cn-hangzhou.aliyuncs.com' , id 'xxx', key 'xxx',bucket 'mybucket');# 创建 oss 外部表CREATE FOREIGN TABLE ossexample(date text, time text, open float,high float, low float, volume int)SERVER ossserverOPTIONS ( filepath 'osstest/example.csv', delimiter ',' ,format 'csv', encoding 'utf8', PARSE_ERRORS '100');# 创建表,数据就装载到这张表中create table example(date text, time text, open float,high float, low float, volume int);# 数据从 ossexample 装载到 example 中。insert into example select * from ossexample;# 可以看到# oss_fdw 能够正确估计 oss 上的文件大小,正确的规划查询计划。explain insert into example select * from ossexample;QUERY PLAN---------------------------------------------------------------------Insert on example (cost=0.00..1.60 rows=6 width=92)-> Foreign Scan on ossexample (cost=0.00..1.60 rows=6 width=92)Foreign OssFile: osstest/example.csv.0Foreign OssFile Size: 728(4 rows)# 表 example 中的数据写出到 OSS 中。insert into ossexample select * from example;explain insert into ossexample select * from example;QUERY PLAN-----------------------------------------------------------------Insert on ossexample (cost=0.00..16.60 rows=660 width=92)-> Seq Scan on example (cost=0.00..16.60 rows=660 width=92)(2 rows)oss_fdw 注意事项
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。