云服务器内容精选
-
手动导入 通过主页面的“更多功能”选项或单击左上角搜索框旁边的,可以展示当前支持的导入选项,可根据需要选择。 导入文件 选择响应格式的文件并上传,然后选择文件中系统识别出来的接口和数据模型导入。 Postman支持Collections和Environment数据集ZIP包的全量导入,也支持单个Collection文件导入。 Postman支持接口和接口用例的前置脚本及后置脚本导入。 导入URL 选择“导入Swagger URL”,输入URL,即可完成文档导入。 通过Swagger URL导入时,需要填写json数据文件的URL,而非Swagger UI的URL。
-
手动导入 通过主页面的“更多功能”选项或单击左上角搜索框旁边的,可以展示当前支持的导入选项,可根据需要选择。 导入文件 选择响应格式的文件并上传,然后选择文件中系统识别出来的接口和数据模型导入。 Postman支持Collections和Environment数据集ZIP包的全量导入,也支持单个Collection文件导入。 Postman支持接口和接口用例的前置脚本及后置脚本导入。 导入URL 选择“导入Swagger URL”,输入URL,即可完成文档导入。 通过Swagger URL导入时,需要填写json数据文件的URL,而非Swagger UI的URL。
-
总结 智能修正模式与严格校验模式可以结合使用,且智能修正模式具有优先级。在进行COPY导入时,若已明确指定对数据异常采用智能修正,那么该行数据的处理将不会触发严格校验模式。这意味着错误表不会记录相应数据,同时也不会扣除reject limit次数。建议用户根据自身实际情况,权衡是否自动修正列异常与字符异常后入库,还是直接舍弃。 对于严格校验模式的两个级别,推荐用户默认选择Level1。这是因为Level1所支持的错误类型较为常见,并且不会对导入性能产生任何影响。而Level2目前仅在集中式A兼容环境下支持,开启该特性会额外消耗导入性能和内存资源。具体信息请参见COPY支持约束冲突容错能力。因此,不建议用户默认使用Level2,仅在明确数据存在约束类型冲突时再开启。
-
典型场景使用示例 针对独立零字符的基础处理逻辑相对简单,本文重点展示复合型异常场景的解决方案,即数据流中同时存在零字符(\0)与非法编码字符的容错处理过程: 构造UTF8的零字符与非法字符数据。 gaussdb=# create database db_utf8 encoding='UTF-8' LC_COLLATE='en_US.UTF-8' LC_CTYPE ='en_US.UTF-8' dbcompatibility = 'A'; CREATE DATABASE gaussdb=# \c db_utf8 Non-SSL connection (SSL connection is recommended when requiring high-security) You are now connected to database "db_utf8" as user "omm". db_utf8=# create table test_encodings(id int, content text); CREATE TABLE db_utf8=# insert into test_encodings values(1, dbe_raw.cast_to_varchar2(dbe_raw.concat(dbe_raw.cast_from_varchar2_to_raw('导入'), hextoraw('00'), dbe_raw.cast_from_varchar2_to_raw('导出')))); INSERT 0 1 db_utf8=# insert into test_encodings values(2, dbe_raw.cast_to_varchar2(dbe_raw.concat(hextoraw('2297'), dbe_raw.cast_from_varchar2_to_raw('导入导出')))); INSERT 0 1 db_utf8=# show client_encoding; client_encoding ----------------- UTF8 (1 row) --在id为1的行中,content包含零字符;在id为2的行中,content含有不属于UTF-8字符集的字符。 db_utf8=# select *, dbe_raw.cast_from_varchar2_to_raw(content) from test_encodings; id | content | cast_from_varchar2_to_raw ----+-----------+------------------------------ 1 | 导入 | E5AFBCE585A500E5AFBCE587BA 2 | "导入导出 | 2297E5AFBCE585A5E5AFBCE587BA (2 rows) 在导出文件时,若选择与服务端相同的字符集,无需进行转码操作,文件默认能够顺利导出。然而,当选择与服务端不同的字符集时,则需要进行转码处理。在转码过程中,一旦识别到UTF-8编码中的非法字符0x97,系统将报错。此时,只需开启compatible_illegal_chars参数,文件便可成功导出。 db_utf8=# copy test_encodings to '/home/xy/encodings.txt.utf8' encoding 'utf-8'; COPY 2 db_utf8=# copy test_encodings to '/home/xy/encodings.txt.gb18030' encoding 'gb18030'; ERROR: invalid byte sequence for encoding "UTF8": 0x97 db_utf8=# copy test_encodings to '/home/xy/encodings.txt.gb18030' encoding 'gb18030' compatible_illegal_chars; COPY 2 使用UTF-8编码打开文件/home/xy/encodings.txt.utf8,当前示例未针对A进行兼容处理,且未开启support_zero_character选项和compatible_illegal_chars参数。以下结果显示:第一行第二列的数据被截断;第二行第二列存在乱码,虽然在显示上未呈现明显异常,但通过hexdump命令可查看出乱码数据。用户可参考此示例进行复现操作,具体数据在此不再详述。 1 导入 2 "导入导出 使用gb18030编码打开文件/home/xy/encodings.txt.gb18030,以下结果表明:文件中第一行第二列的零字符被替换为空格;第二行第二列的非法字符被替换为“?”。 1 导入 导出 2 "?导入导出
-
导出编码一致性处理原则 当客户端编码(client_encoding)与服务端编码(server_encoding)一致时: 执行原生数据导出; 保证数据完整性和原始性; 无需进行字符集转换。 当客户端编码(client_encoding)与服务端编码(server_encoding)不一致时: 采用客户端编码作为导出文件目标编码标准; 内核中对已有数据先基于服务端编码进行编码合法性校验,存在非法编码的数据会进行报错; 内核再将数据进行转码处理,对无法转码(源字符集存在码位,目标字符集不存在码位)的字符进行报错。
-
非法编码处理方案 当用户的数据库中存在非法编码入库的数据,想要导出时不进行报错,推荐以下两种方案。 首选方案:保持客户端编码与服务端编码保持一致后,将数据以数据库服务端编码进行导出,不进行转码。 查询数据库服务端编码 gaussdb=# show server_encoding; 查询数据库客户端编码 gaussdb=# show client_encoding; 设置客户端编码与服务端编码一致 gaussdb=# set client_encoding = '{server_encoding}'; 执行COPY将数据以标准的 CS V格式导出到文件中 gaussdb=# COPY test_copy TO '/data/test_copy.csv' CSV; 次选方案:需要依赖数据库内核的转码能力,并对非法编码的字节通过占位符('?')进行替换,导出的数据内容会发生变化。 查询数据库服务端编码。 gaussdb=# show server_encoding; 设置数据库客户端编码为目标编码。 gaussdb=# set client_encoding = {target_encoding}; 依赖内核转码能力进行导出,将非法编码的字节进行替换。 gaussdb=# COPY test_copy TO '/data/test_copy.csv' CSV COMPATIBLE_ILLEGAL_CHARS;
-
严格校验模式(精准入库) 处理原则:以数据准确性优先,确保入库数据的绝对合规性。 适用场景:在医疗记录、金融交易等对数据精度要求极高的领域,若担心智能修正模式在导入数据时自动修正会影响数据准确性,可采用此模式。 处理流程: 执行多级校验(列数异常、字符异常、数据类型转换异常及约束冲突异常)。 生成错误诊断报告(含行号、错误类型、错误数据)。 建立错误数据隔离区。 仅通过校验的原始数据直接入库。 输出结果:纯净数据集以及错误明细报告(通过gs_copy_error_log与gs_copy_summary查看)。 容错级别:适用于智能修正模式处理的所有异常,如多列、缺列、废弃列、数据类型转换错误、字段超长、转码异常等。具体使用方法如下: 1 2 3 4 --当导入数据过程中出现数据类型错误的次数不超过 100 次时,导入不会报错,会继续导入下一行。若超过 100 次,则正常报错。错误数据的详情及行号会记录在gs_copy_error_log表中。 gaussdb=# COPY test_copy FROM '/home/omm/temp/test.csv' log errors reject LIMIT '100' CSV; --相较于上条语句,下面这条会在gs_copy_error_log中额外记录错误行的完整数据,在无数据安全风险的场景下推荐使用。该语句需要系统管理员权限。 gaussdb=# copy test_copy from '/home/omm/temp/test.csv' log errors data reject limit '100' csv;
-
导出编码一致性处理原则 当客户端编码(client_encoding)与服务端编码(server_encoding)一致时: 执行原生数据导出; 保证数据完整性和原始性; 无需进行字符集转换。 当客户端编码(client_encoding)与服务端编码(server_encoding)不一致时: 采用客户端编码作为导出文件目标编码标准; 内核中对已有数据先基于服务端编码进行编码合法性校验,存在非法编码的数据会进行报错; 内核再将数据进行转码处理,对无法转码(源字符集存在码位,目标字符集不存在码位)的字符进行报错。
-
非法编码处理方案 当用户的数据库中存在非法编码入库的数据,想要导出时不进行报错,推荐以下两种方案。 首选方案:保持客户端编码与服务端编码保持一致后,将数据以数据库服务端编码进行导出,不进行转码。 查询数据库服务端编码。 gaussdb=# SHOW server_encoding; 查询数据库客户端编码。 gaussdb=# SHOW client_encoding; 设置客户端编码与服务端编码一致。 gaussdb=# SET client_encoding = '{server_encoding}'; 执行COPY将数据以标准的CSV格式导出到文件中。 gaussdb=# COPY test_copy TO '/data/test_copy.csv' CSV; 次选方案:需要依赖数据库内核的转码能力,并对非法编码的字节通过占位符('?')进行替换,导出的数据内容会发生变化。 查询数据库服务端编码。 gaussdb=# SHOW server_encoding; 设置数据库客户端编码为目标编码。 gaussdb=# SET client_encoding = {target_encoding}; 依赖内核转码能力进行导出,将非法编码的字节进行替换。 gaussdb=# COPY test_copy TO '/data/test_copy.csv' CSV COMPATIBLE_ILLEGAL_CHARS;
-
响应示例 状态码: 200 ok { "func_urn" : "urn:fss:{region}:46b6f338fc3445b8846c71dfb1fbd9e8:function:default:test_v1_2", "func_name" : "test_v1_2", "domain_id" : "14ee2e35****a7998b******aa24cabf", "namespace" : "46b6f338fc3445b8846c71dfb1fbd9e8", "project_name" : "{region}", "package" : "default", "runtime" : "Node.js6.10", "timeout" : 3, "handler" : "index.handler", "memory_size" : 128, "cpu" : 300, "code_type" : "zip", "code_filename" : "index.zip", "code_size" : 6709, "digest" : "faa825575c45437cddd4e369bea69893bcbe195d478178462ad90984fe72993f3f59d15f41c5373f807f3e05fb9af322c55dabeb16565c386e402413458e6068", "version" : "latest", "image_name" : "latest-191025153727@zehht", "last_modified" : "2019-10-25 15:37:27", "strategy_config" : { "concurrency" : -1 }, "enterprise_project_id" : "46b6f338fc3445b8846c71dfb1fbxxxx" } 状态码: 409 Conflict { "error_code" : "FSS.1061", "error_msg" : "The function has existed" }
-
请求示例 导入函数,文件名为"test.zip",类型为zip,文件base64编码为"xxx"。 POST https://{Endpoint}/v2/{project_id}/fgs/functions/import { "func_name" : "test", "file_name" : "test.zip", "file_type" : "zip", "file_code" : "xxxxxxxxxxxxxxxxxxxxx" }
-
响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 func_urn String 函数的URN(Uniform Resource Name),唯一标识函数。 func_name String 函数名称。 domain_id String 域名 id。 namespace String 租户的project id。 project_name String 租户的project name。 package String 函数所属的分组Package,用于用户针对函数的自定义分组。 runtime String FunctionGraph函数的执行环境 Python2.7: Python语言2.7版本。 Python3.6: python语言3.6版本。Python3.9: Python语言3.9版本。 Python3.10: Python语言3.10版本。Go1.x: Go语言1.x版本。Java8: Java语言8版本。Java11: Java语言11版本。Node.js6.10: Nodejs语言6.10版本。Node.js8.10: Nodejs语言8.10版本。Node.js10.16: Nodejs语言10.16版本。Node.js12.13: Nodejs语言12.13版本。Node.js14.18: Nodejs语言14.18版本。Node.js16.17: Nodejs语言16.17版本。Node.js18.15: Nodejs语言18.15版本。C#(.NET Core 2.1): C#语言2.1版本。C#(.NET Core 3.1): C#语言3.1版本。Custom: 自定义运行时。PHP7.3: Php语言7.3版本。Cangjie1.0:仓颉语言1.0版本。http: HTTP函数。Custom Image: 自定义镜像函数。 枚举值: Java8 Java11 Node.js6.10 Node.js8.10 Node.js10.16 Node.js12.13 Node.js14.18 Node.js16.17 Node.js18.15 Python2.7 Python3.6 Python3.10 Go1.x C#(.NET Core 2.1) C#(.NET Core 3.1) Custom PHP7.3 Python3.9 http Custom Image Cangjie1.0 timeout Integer 函数执行超时时间,超时函数将被强行停止,范围3~259200秒。 handler String 函数执行入口 规则:xx.xx,必须包含“. ” 举例:对于node.js函数:myfunction.handler,则表示函数的文件名为myfunction.js,执行的入口函数名为handler。长度不超过128个字符。 最小长度:3 最大长度:128 memory_size Integer 函数消耗的内存。 单位M。 取值范围为:128、256、512、768、1024、1280、1536、1792、2048、2560、3072、3584、4096。 最小值为128,最大值为4096。 gpu_memory Integer 函数消耗的显存,只支持自定义运行时与自定义镜像函数配置GPU。 单位MB。 取值范围为:1024、2048、3072、4096、5120、6144、7168、8192、9216、10240、11264、12288、13312、14336、15360、16384。 最小值为1024,最大值为16384。 cpu Integer 函数占用的cpu资源。 单位为millicore(1 core=1000 millicores)。 取值与MemorySize成比例,默认是128M内存占0.1个核(100 millicores)。 code_type String 函数代码类型,取值有5种。 inline: UI在线编辑代码。 zip: 函数代码为zip包。 obs: 函数代码来源于obs存储。 jar: 函数代码为jar包,主要针对Java函数。 Custom-Image-Swr: 函数代码来源于SWR自定义镜像。 枚举值: inline zip obs jar Custom-Image-Swr code_url String 当code_type为obs时,该值为函数代码包在OBS上的地址,code_type为其他值时,该字段为空。 code_filename String 函数的文件名,当code_type为jar/zip时必须提供该字段,inline和obs不需要提供。 code_size Long 函数大小,单位:字节。 user_data String 用户自定义的name/value信息。 在函数中使用的参数。 举例:如函数要访问某个主机,可以设置自定义参数:Host={host_ip},最多定义20个,总长度不超过4KB。 digest String 函数代码SHA512 hash值,用于判断函数是否变化。 version String 函数版本号,由系统自动生成,规则:vYYYYMMDD-HHMMSS(v+年月日-时分秒)。 image_name String 函数版本的内部标识。 xrole String 函数使用的权限委托名称,需要 IAM 支持,并在IAM界面创建委托,当函数需要访问其他服务时,必须提供该字段。 app_xrole String 函数app使用的权限委托名称,需要IAM支持,并在IAM界面创建委托,当函数需要访问其他服务时,必须提供该字段。 description String 函数描述。 version_description String 函数版本描述。 last_modified String 函数最后一次更新时间。 func_vpc FuncVpc object 函数vpc配置。需同时为函数配置具有vpc权限的委托。 depend_list Array of strings 依赖id列表 depend_version_list Array of strings 依赖版本id列表 strategy_config StrategyConfig object 函数策略配置。 extend_config String 函数扩展配置。 initializer_handler String 函数初始化入口,规则:xx.xx,必须包含“. ”。当配置初始化函数时,此参数必填。 举例:对于node.js函数:myfunction.initializer,则表示函数的文件名为myfunction.js,初始化的入口函数名为initializer。 initializer_timeout Integer 初始化超时时间,超时函数将被强行停止,范围1~300秒。当配置初始化函数时,此参数必填。 pre_stop_handler String 函数预停止函数的入口,规则:xx.xx,必须包含“. ”。 举例:对于node.js函数:myfunction.pre_stop_handler,则表示函数的文件名为myfunction.js,初始化的入口函数名为pre_stop_handler。 pre_stop_timeout Integer 初始化超时时间,超时函数将被强行停止,范围1~90秒。 enterprise_project_id String 企业项目ID,在企业用户创建函数时必填。 表5 FuncVpc 参数 参数类型 描述 domain_id String 域名id。 namespace String 租户的project id。 vpc_name String 虚拟私有云名称。 vpc_id String 虚拟私有云唯一标识。 subnet_name String 子网名称。 subnet_id String 子网编号。 cidr String 子网掩码。 gateway String 网关。 security_groups Array of strings 安全组 表6 StrategyConfig 参数 参数类型 描述 concurrency Integer 单函数最大实例数,v1取值0和-1,v2取值-1到1000 -1代表该函数实例数无限制 0代表该函数被禁用 concurrent_num Integer 单实例并发数,v2版本才支持,取值1到1000 状态码: 409 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误信息 状态码: 500 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误信息
-
请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 Content-Type 是 String 消息体的类型(格式) 表3 请求Body参数 参数 是否必选 参数类型 描述 func_name 是 String 函数名 file_name 是 String 文件名 file_type 是 String 文件类型 file_code 是 String 函数代码。代码必须要进行base64编码 package 否 String 应用名称,默认为default
-
从GDS导入数据到DWS实践指南 安装GDS前必须确认GDS所在服务器环境的系统参数是否和数据库集群的系统参数一致。 GDS与 GaussDB (DWS)通信要求物理网络畅通,尽量使用万兆网。因为千兆网无法承载高速的数据传输压力,极易出现断连,使用千兆网时GaussDB(DWS)无法提供通信保障。满足万兆网的同时,要求数据磁盘组I/O性能大于GDS单核处理能力上限(约400MB/s),才能保证单文件导入速率最大化。 提前做好服务部署规划,数据服务器上,建议一个Raid只布1~2个GDS。GDS跟DN的数据比例建议在1:3至1:6之间。一台加载机的GDS进程不宜部署太多,千兆网卡部署1个GDS进程即可,万兆网卡机器建议部署不大于4个进程。 提前对GDS导入导出的数据目录做好层次划分,避免一个数据目录包含过多的文件,并及时清理过期文件。 合理规划目标数据库的字符集,强烈建议使用UTF8作为数据库的字符集,不建议使用sql_ascii编码,因为极易引起混合编码问题。GDS导出时保证外表的字符集和客户端字符集一致即可,导入时保证客户端编码,数据文件内容编码和客户端一致。 如果存在无法变更数据库,客户端,外表字符集时,可以尝试使用iconv命令进行手动转换。 1 2 #注意 -f 表示源文件的字符集,-t为目标字符集 iconv -f utf8 -t gbk utf8.txt -o gbk.txt 关于GDS导入实践可参考使用GDS导入数据。 GDS支持CSV、TEXT、FIXED三种格式,缺省为TEXT格式。不支持二进制格式,但是可以使用encode/decode函数处理二进制类型。例如: 对二进制表导出: 1 2 3 4 5 6 7 8 9 10 11 12 --创建表。 CREATE TABLE blob_type_t1 ( BT_COL BYTEA ) DISTRIBUTE BY REPLICATION; -- 创建外表 CREATE FOREIGN TABLE f_blob_type_t1( BT_COL text ) SERVER gsmpp_server OPTIONS (LOCATION 'gsfs://127.0.0.1:7789/', FORMAT 'text', DELIMITER E'\x08', NULL '', EOL '0x0a' ) WRITE ONLY; INSERT INTO blob_type_t1 VALUES(E'\\xDEADBEEF'); INSERT INTO blob_type_t1 VALUES(E'\\xDEADBEEF'); INSERT INTO blob_type_t1 VALUES(E'\\xDEADBEEF'); INSERT INTO blob_type_t1 VALUES(E'\\xDEADBEEF'); INSERT INTO f_blob_type_t1 select encode(BT_COL,'base64') from blob_type_t1; 对二进制表导入: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 --创建表。 CREATE TABLE blob_type_t2 ( BT_COL BYTEA ) DISTRIBUTE BY REPLICATION; -- 创建外表 CREATE FOREIGN TABLE f_blob_type_t2( BT_COL text ) SERVER gsmpp_server OPTIONS (LOCATION 'gsfs://127.0.0.1:7789/f_blob_type_t1.dat.0', FORMAT 'text', DELIMITER E'\x08', NULL '', EOL '0x0a' ); insert into blob_type_t2 select decode(BT_COL,'base64') from f_blob_type_t2; SELECT * FROM blob_type_t2; bt_col ------------ \xdeadbeef \xdeadbeef \xdeadbeef \xdeadbeef (4 rows) 对同一张外表重复导出会覆盖之前的文件,因此不要对同一个外表重复导出。 若不确定文件是否为标准的csv格式,推荐将quote参数设置为0x07,0x08或0x1b等不可见字符来进行GDS导入导出,避免文件格式问题导致任务失败。 1 2 3 4 5 CREATE FOREIGN TABLE foreign_HR_staffS_ft1 ( MANAGER_ID NUMBER(6), section_ID NUMBER(4) ) SERVER gsmpp_server OPTIONS (location 'file:///input_data/*', format 'csv', mode 'private', quote '0x07', delimiter ',') WITH err_HR_staffS_ft1; GDS支持并发导入导出,gds -t参数用于设置gds的工作线程池大小,控制并发场景下同时工作的工作线程数且不会加速单个sql任务。gds -t缺省值为8,上限值为200。在使用管道功能进行导入导出时,-t参数应不低于业务并发数。 GDS外表参数delimiter是多字符时,建议TEXT格式下字符不要完全相同。例如,不建议使用delimiter '---'。 GDS多表并行导入同一个文件提升导入性能(仅支持text和csv文件)。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 -- 创建目标表。 CREATE TABLE pipegds_widetb_1 (city integer, tel_num varchar(16), card_code varchar(15), phone_code varchar(16), region_code varchar(6), station_id varchar(10), tmsi varchar(20), rec_date integer(6), rec_time integer(6), rec_type numeric(2), switch_id varchar(15), attach_city varchar(6), opc varchar(20), dpc varchar(20)); -- 创建带有file_sequence字段的外表。 CREATE FOREIGN TABLE gds_pip_csv_r_1( like pipegds_widetb_1) SERVER gsmpp_server OPTIONS (LOCATION 'gsfs://127.0.0.1:8781/wide_tb.txt', FORMAT 'text', DELIMITER E'|+|', NULL '', file_sequence '5-1'); CREATE FOREIGN TABLE gds_pip_csv_r_2( like pipegds_widetb_1) SERVER gsmpp_server OPTIONS (LOCATION 'gsfs://127.0.0.1:8781/wide_tb.txt', FORMAT 'text', DELIMITER E'|+|', NULL '', file_sequence '5-2'); CREATE FOREIGN TABLE gds_pip_csv_r_3( like pipegds_widetb_1) SERVER gsmpp_server OPTIONS (LOCATION 'gsfs://127.0.0.1:8781/wide_tb.txt', FORMAT 'text', DELIMITER E'|+|', NULL '', file_sequence '5-3'); CREATE FOREIGN TABLE gds_pip_csv_r_4( like pipegds_widetb_1) SERVER gsmpp_server OPTIONS (LOCATION 'gsfs://127.0.0.1:8781/wide_tb.txt', FORMAT 'text', DELIMITER E'|+|', NULL '', file_sequence '5-4'); CREATE FOREIGN TABLE gds_pip_csv_r_5( like pipegds_widetb_1) SERVER gsmpp_server OPTIONS (LOCATION 'gsfs://127.0.0.1:8781/wide_tb.txt', FORMAT 'text', DELIMITER E'|+|', NULL '', file_sequence '5-5'); --将wide_tb.txt并发导入到pipegds_widetb_1。 \parallel on INSERT INTO pipegds_widetb_1 SELECT * FROM gds_pip_csv_r_1; INSERT INTO pipegds_widetb_1 SELECT * FROM gds_pip_csv_r_2; INSERT INTO pipegds_widetb_1 SELECT * FROM gds_pip_csv_r_3; INSERT INTO pipegds_widetb_1 SELECT * FROM gds_pip_csv_r_4; INSERT INTO pipegds_widetb_1 SELECT * FROM gds_pip_csv_r_5; \parallel off file_sequence参数详细内容,可参考CREATE FOREIGN TABLE (GDS导入导出)章节。 父主题: 导入导出
-
请求示例 示例1 如下请求创建了一个仅执行一次的数据导出任务,执行时间为2020-05-31 00:00:00,导出的文件格式为csv,编码格式为utf-8,需要导出的对象通过名为“myTemplate”的模板指定,未指定任何导出筛选条件。 POST https://华为云Astro轻应用域名/u-route/baas/bulk/v1.0/export/data?flag=template&file_type=csv { "scheduleMode": 1, "firstScheduleDate": "2020-05-31 00:00:00", "encodeType": "utf-8", "templateName": "myTemplate" } 示例2 如下请求创建了周期性执行的数据导出任务,首次执行时间为2020-06-01 00:00:00,往后每隔一个月执行一次,导出的文件格式为txt,编码格式为GBK,需要导出的对象以数组的形式列在objects中,同时设定筛选条件,仅导出创建者id(createBy)为“1234567890xyz”的数据。 POST https://华为云Astro轻应用域名/u-route/baas/bulk/v1.0/export/data?flag=template&file_type=txt { "scheduleMode": 2, "firstScheduleDate": "2020-06-01 00:00:00", "scheduleInterval": 1, "intervalUnit": "Month", "templateName": "template01", "encodeType": "gbk", "objects": [ "Flow", "Page" ], "cond": { "conjunction": "AND", "conditions": [ { "field": "createdBy", "operator": "eq", "value": "1234567890xyz" } ] } }