I/O APIs
write_iceberg
描述:将数据写入指定的Iceberg表中。
语法格式:
write_iceberg(target_name, database, create_if_not_exists=False, overwrite=False, is_external=False, schema=None, explain = None, verbose = True)
输入参数:
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| target_name | 是 | str | 目标表的名称。 |
| database | 是 | str | 表所属的数据库。 |
| create_if_not_exists | 否 | bool | 如果为True,当表不存在时将自动创建该表。 |
| overwrite | 否 | bool | 如果为True,将覆盖表中现有的数据。 |
| is_external | 否 | bool | 如果为True,将表视为外部表。 |
| schema | 否 | 任意类型 | 表的结构定义,可选参数。 |
| explain | 否 | 字符串 | 可以设置为plan或者performance,分别表示单纯打印执行计划和打印执行的详细信息。 |
| verbose | 否 | bool | 如果为True,explain为plan时,会增加打印的信息。 |
返回值类型:str。
write_orc
描述:将数据写入指定的ORC表中。
语法格式:
write_orc(target_name, database, create_if_not_exists=False, overwrite=False, is_external=False, schema=None, explain = None, verbose = True)
输入参数:
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| target_name | 是 | str | 目标表的名称。 |
| database | 是 | str | 表所属的数据库。 |
| create_if_not_exists | 否 | bool | 如果为True,当表不存在时将自动创建该表。 |
| overwrite | 否 | bool | 如果为True,将覆盖表中现有的数据。 |
| is_external | 否 | bool | 如果为True,将表视为外部表。 |
| schema | 否 | 任意类型 | 表的结构定义,可选参数。 |
| explain | 否 | 字符串 | 可以设置为plan或者performance,分别表示单纯打印执行计划和打印执行的详细信息。 |
| verbose | 否 | bool | 如果为True,explain为plan时,会增加打印的信息。 |
返回值类型:str。
write_parquet
描述:将数据写入指定的parquet表中。
语法格式:
write_parquet(target_name, database, create_if_not_exists=False, overwrite=False, is_external=False, schema=None, explain = None, verbose = True)
输入参数:
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| target_name | 是 | str | 目标表的名称。 |
| database | 是 | str | 表所属的数据库。 |
| create_if_not_exists | 否 | bool | 如果为True,当表不存在时将自动创建该表。 |
| overwrite | 否 | bool | 如果为True,将覆盖表中现有的数据。 |
| is_external | 否 | bool | 如果为True,将表视为外部表。 |
| schema | 否 | 任意类型 | 表的结构定义,可选参数。 |
| explain | 否 | 字符串 | 可以设置为plan或者performance,分别表示单纯打印执行计划和打印执行的详细信息。 |
| verbose | 否 | bool | 如果为True,explain为plan时,会增加打印的信息。 |
返回值类型:str。
write_text
描述:将文本数据写入到指定路径的OBS中。
语法格式:
write_text(path, field_delim, max_rows_per_file=None)
输入参数:
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| path | 是 | str | OBS中存放文本的路径。 |
| field_delim | 是 | str | 指定TEXT数据文件行数据的字段分隔符,不能是'\\.abcdefghijklmnopqrstuvwxyz0123456789'。 |
| max_rows_per_file | 否 | int | 指定一个文件写入最大行数。 |
返回值类型:None。
write_json
描述:将JSON数据写入到指定路径的OBS中。
语法格式:
write_json(path, max_rows_per_file=None, ignore_null_fields=False, nested_separator=None)
输入参数:
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| path | 是 | str | OBS中存放JSON数据的路径。 |
| max_rows_per_file | 否 | int | 指定一个文件写入最大行数。 |
| ignore_null_fields | 否 | bool | 写入JSON对象时是否忽略JSON value为NULL的JSON key。 |
| nested_separator | 否 | str | 设置嵌套JSON key拼接分隔符,不能指定为# ,比如:设置'_'后,{"a":{"b":1}}映射到列a_b,列a_b值为1;默认不支持JSON嵌套读写。 |
返回值类型:None。
read_text
描述:从OBS指定的路径中读取TEXT文件到指定schema的Dataset中。
语法格式:
read_text(path, schema, field_delim='\t', drop_empty_lines=True, fill_missing_fields=False, ignore_extra_data=False)
输入参数:
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| path | 是 | str | OBS中存放文本文件的目录路径。 |
| schema | 是 | dict | 读取文本文件的列信息。 |
| field_delim | 否 | str | 指定TEXT数据文件行数据的字段分隔符,不能是'\\.abcdefghijklmnopqrstuvwxyz0123456789'。 |
| drop_empty_lines | 否 | bool | 是否丢弃文本中的空行或单行的\n 、\r、\t。 |
| fill_missing_fields | 否 | bool | 当行按照field_delim进行分隔时,是否在分隔结果小于列数时报错。 |
| ignore_extra_data | 否 | bool | 当行按照field_delim进行分隔时,是否在分隔结果多于列数时报错。 |
返回值类型:dataset,dataset是text文本集合。
read_json
描述:从OBS指定的路径中按照schema读取指定JSON key的JSON value。
语法格式:
read_json(path, schema, skip_empty_files=False, nested_separator=None)
输入参数:
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| path | 是 | str | OBS中存放JSON文件的目录路径。 |
| schema | 是 | dict | 读取指定key的列信息。 |
| skip_empty_files | 否 | bool | 是否跳过JSON内容为'{}'的内容。 |
| nested_separator | 否 | str | 设置嵌套JSON key拼接分隔符,不能指定为#,比如:设置'_'后,{"a":{"b":1}}映射到列a_b,列a_b值为1;默认不支持JSON嵌套读写。 |
返回值类型:dataset,dataset是JSON对象集合。