创建OSS外部表云原生大数据计算服务MaxCompute(MaxCompute)

在创建OSS外部表前,请确认执行操作的账号已满足如下条件:

在使用OSS外部表时,您需要注意:

OSS外部表不支持cluster属性。

MaxCompute支持您在如下平台创建OSS外部表。

创建方式

平台

基于MaxComputeSQL创建OSS外部表

以可视化方式创建OSS外部表

场景

语法格式

支持读取或写入OSS的数据文件格式

示例

通过内置文本数据解析器创建外部表

CREATEEXTERNALTABLE[IFNOTEXISTS](,...)[partitionedBY(,...)]storedBY''WITHserdeproperties([''='',...])location'';通过内置开源数据解析器创建外部表

CREATEEXTERNALTABLE[IFNOTEXISTS](,...)[partitionedBY(,...)][rowformatserde''[WITHserdeproperties([''='',...])]]storedASlocation''[USING''][tblproperties(''='',...)];说明仅支持读取DLF生成的Hudi数据。

通过自定义解析器创建外部表

CREATEEXTERNALTABLE[IFNOTEXISTS](,...)[partitionedBY(,...)]storedBY''WITHserdeproperties([''='',...])location''USING'';除上述格式外的数据文件。

当您创建的OSS外部表为分区表时,需要额外执行引入分区数据的操作。

为便于理解,为您提供示例数据如下:

createexternaltableifnotexistsmc_oss_csv_external1(vehicleIdint,recordIdint,patientIdint,callsint,locationLatitutedouble,locationLongtituedouble,recordTimestring,directionstring)storedby'com.aliyun.odps.CsvStorageHandler'withserdeproperties('odps.properties.rolearn'='acs:ram::xxxxxx:role/aliyunodpsdefaultrole')location'oss://oss-cn-hangzhou-internal.aliyuncs.com/oss-mc-test/Demo1/';您可以执行descextendedmc_oss_csv_external1;命令查看创建好的OSS外部表结构信息。

createexternaltableifnotexistsmc_oss_csv_external2(vehicleIdint,recordIdint,patientIdint,callsint,locationLatitutedouble,locationLongtituedouble,recordTimestring)partitionedby(directionstring)storedby'com.aliyun.odps.CsvStorageHandler'withserdeproperties('odps.properties.rolearn'='acs:ram::xxxxxx:role/aliyunodpsdefaultrole')location'oss://oss-cn-hangzhou-internal.aliyuncs.com/oss-mc-test/Demo2/';--引入分区数据。msckrepairtablemc_oss_csv_external2addpartitions;--等效于如下语句。altertablemc_oss_csv_external2addpartition(direction='N')partition(direction='NE')partition(direction='S')partition(direction='SW')partition(direction='W');您可以执行descextendedmc_oss_csv_external2;命令查看创建好的外部表结构信息。

createexternaltableifnotexistsmc_oss_csv_external3(vehicleIdint,recordIdint,patientIdint,callsint,locationLatitutedouble,locationLongtituedouble,recordTimestring,directionstring)storedby'com.aliyun.odps.CsvStorageHandler'withserdeproperties('odps.properties.rolearn'='acs:ram::xxxxxx:role/aliyunodpsdefaultrole','odps.text.option.gzip.input.enabled'='true','odps.text.option.gzip.output.enabled'='true')location'oss://oss-cn-hangzhou-internal.aliyuncs.com/oss-mc-test/Demo3/';您可以执行descextendedmc_oss_csv_external3;命令查看创建好的外部表结构信息。

操作流程如下:

上述语法中各参数的含义如下。

参数名称

可选/必填

说明

mc_oss_extable_name

必填

待创建的OSS外部表的名称。

表名大小写不敏感,在查询外部表时,无需区分大小写,且不支持强制转换大小写。

col_name

OSS外部表的列名称。

在读取OSS数据场景,创建的OSS外部表结构必须与OSS数据文件结构保持一致,否则无法成功读取OSS数据。

data_type

OSS外部表的列数据类型。

在读取OSS数据场景,创建的OSS外部表各列数据类型必须与OSS数据文件各列数据类型保持一致,否则无法成功读取OSS数据。

partitionedby(,...)

条件必填

当OSS中的数据文件是以分区路径方式存储时,需要携带该参数,创建分区表。

StorageHandler

当您使用内置文本数据解析器或自定义解析器创建OSS外部表时,需要携带该参数。MaxCompute解析器主要分为如下两类:

''=''

oss_location

数据文件所在OSS路径。格式为oss://///。MaxCompute默认会读取该路径下的所有数据文件。

jar_name

当您使用自定义解析器创建OSS外部表时,需要携带该参数。指定自定义解析器代码对应的JAR包。该JAR包需要添加为MaxCompute项目资源。

serde_class

条件可选

指定MaxCompute内置的开源数据解析器。如果数据文件格式为TEXTFILE,必须携带该参数,其他场景可以不配置。

MaxCompute支持的开源数据格式对应的serde_class如下:

file_format

当OSS数据文件为开源格式时,需要携带该参数,以指定OSS数据文件的格式。

单个文件大小不能超过3GB,如果文件过大,建议拆分。

resource_name

当您使用自定义的serdeclass时,需要指定依赖的资源。资源中包含了自定义的serdeclass。

''=''

property_name

使用场景

property_value

默认值

odps.properties.rolearn

指定RAM中Role(具有访问OSS权限)的ARN信息。

odps.text.option.gzip.input.enabled

当需要读取以GZIP方式压缩的CSV或TSV文件数据时,请添加该属性。

CSV、TSV压缩属性。配置该参数值为True时,MaxCompute才可以正常读取压缩文件,否则会读取失败。

False

odps.text.option.gzip.output.enabled

当需要将数据以GZIP压缩方式写入OSS时,请添加该属性。

CSV、TSV压缩属性。配置该参数值为True时,MaxCompute才能将数据以GZIP压缩方式写入OSS,否则不压缩。

odps.text.option.header.lines.count

当OSS数据文件为CSV或TSV,且需要忽略OSS数据文件中的前N行时,请添加该属性。

MaxCompute读取OSS数据文件时,会忽略指定的行数。

非负整数

0

odps.text.option.null.indicator

当OSS数据文件为CSV或TSV,且需要定义OSS数据文件中NULL的解析规则时,请添加该属性。

通过该参数配置的字符串会被解析为SQL中的NULL。例如\N指代NULL,则a,\N,b会解析为a,NULL,b。

字符串

空字符串

odps.text.option.ignore.empty.lines

当OSS数据文件为CSV或TSV,且需要定义OSS数据文件中空行的处理规则时,请添加该属性。

配置该参数值为True时,MaxCompute会忽略数据文件中的空行,否则会读取空行。

True

odps.text.option.encoding

当OSS数据文件为CSV或TSV,且OSS数据文件编码规则非默认编码规则时,请添加该属性。

确保此处配置的编码规则与OSS数据文件编码规则保持一致,否则MaxCompute无法成功读取数据。

UTF-8

odps.text.option.delimiter

当需要明确CSV或TSV数据文件的列分隔符时,请添加该属性。

确保此处配置的列分隔符可以正确读取OSS数据文件的每一列,否则MaxCompute读取的数据会出现错位问题。

单个字符

英文逗号(,)

odps.text.option.use.quote

当CSV或TSV数据文件中的字段包含换行(CRLF)、双引号或英文逗号时,请添加该属性。

当CSV某个字段中包含换行、双引号(需要在"前再加"转义)或英文逗号时,整个字段必须用双引号("")括起来作为列分隔符。该参数指定是否识别CSV的列分隔符"。

mcfed.parquet.compression

当需要将PARQUET数据以压缩方式写入OSS时,请添加该属性。

PARQUET压缩属性。PARQUET数据默认不压缩。

mcfed.parquet.compression.codec.zstd.level

当'mcfed.parquet.compression'='zstd'时,可以添加该属性。不填此属性时,以默认值3进行压缩。

取值范围为1~22。

3

parquet.file.cache.size

在处理PARQUET数据场景,如果需要提升读OSS数据文件性能,请添加该属性。

指定读OSS数据文件时,可缓存的数据量,单位为KB。

1024

parquet.io.buffer.size

指定OSS数据文件大小超过1024KB时,可缓存的数据量,单位为KB。

4096

separatorChar

当需要明确以TEXTFILE格式保存的CSV数据的列分隔符时,请添加该属性。

指定CSV数据列分隔符。

单个字符串

quoteChar

当以TEXTFILE格式保存的CSV数据中的字段包含换行、双引号或英文逗号时,请添加该属性。

指定CSV数据的引用符。

escapeChar

当需要明确以TEXTFILE格式保存的CSV数据的转义规则时,请添加该属性。

指定CSV数据的转义符。

mcfed.orc.schema.resolution

同一张OSS外部表中数据的Schema不一样。

用于设置ORC文件解析方式,name表示根据列名解析。

name

默认按列号解析,等价于:'mcfed.orc.schema.resolution'='position'。

odps.sql.text.option.flush.header

在往OSS写数据的时候,文件块的第一行为表头。

只有针对CSV文件格式生效。

odps.sql.text.schema.mismatch.mode

当读取的OSS文件的数据列数和外部表的Schema列数不一致时。

指定对于列数不一致行的处理方式。

odps.text.option.use.quote参数值为True时,该功能不生效。

error

skip.header.line.count

当需要忽略以TEXTFILE格式保存的CSV文件中的前N行数据时,请添加该属性。

MaxCompute读取OSS数据时,会忽略从首行开始指定行数的数据。

skip.footer.line.count

当需要忽略以TEXTFILE格式保存的CSV文件中的后N行数据时,请添加该属性。

MaxCompute读取OSS数据时,会忽略从尾行开始指定行数的数据。

mcfed.orc.compress

当需要将ORC数据以压缩方式写入OSS时,请添加该属性。

ORC压缩属性。指定ORC数据的压缩方式。

mcfed.mapreduce.output.fileoutputformat.compress

当需要将TEXTFILE数据文件以压缩方式写入OSS时,请添加该属性。

TEXTFILE压缩属性。配置该参数值为True时,MaxCompute才可以将TEXTFILE数据文件以压缩方式写入OSS,否则不压缩。

mcfed.mapreduce.output.fileoutputformat.compress.codec

TEXTFILE压缩属性。设置TEXTFILE数据文件的压缩方式。

只支持property_value中的四种压缩方式。

io.compression.codecs

当OSS数据文件为Raw-Snappy格式时,请添加该属性。

配置该参数值为True时,MaxCompute才可以正常读取压缩数据,否则MaxCompute无法成功读取数据。

THE END
1.什么是非结构化数据?1.非数值型数据的表示 非数值型数据也是以二进制的形式保存在计算机中的。最简单的就是字符数据,其用https://www.zhihu.com/question/523983127/answer/2807829713
2.数据处理与分析涵盖七大分析方法人人都是产品经理本文针对性地讲讲数据分析整个流程最关键的阶段:数据处理与分析阶段。该阶段我分成了三块:数据采集、数据处理、数据分析,都围绕着“数据”进行,对海量或杂乱数据进行处理分析,从中找出痛点,洞察问题。 一、数据采集 该处的数据采集指的是获取分析所需要的数据,一般可以从内部数据、外部数据两个方向获取。 https://www.woshipm.com/data-analysis/5343087.html/comment-page-1
3.非结构化数据管理平台的操作流程介绍在数字化转型的背景下,非结构化数据的高效管理成为企业提升竞争力的关键。非结构化数据管理平台通过其独特的功能和流程,帮助企业实现对文档、图像、视频等非结构化数据的全面掌控。本文将详细介绍非结构化数据管理平台的操作流程,展示其如何简化数据管理,提高数据的可访问性和安全性。 https://www.gokuai.com/press/a665
4.非结构化数据治理流程2. 收集和整合,收集来自不同部门和系统的非结构化数据,并进行整合,确保数据能够被统一管理和访问。 3. 清洗和标准化,对非结构化数据进行清洗和标准化处理,包括去除重复数据、纠正错误信息、统一命名规范等,以确保数据质量和一致性。 4. 存储和管理,确定合适的存储方式和位置,建立非结构化数据的管理策略,包括数据备https://wenku.baidu.com/view/3e6040489dc3d5bbfd0a79563c1ec5da50e2d6a5.html
5.非结构化数据如何挖掘帆软数字化转型知识库非结构化数据的挖掘可以通过多种方法实现,包括自然语言处理(NLP)、机器学习、文本挖掘、图像和视频分析。自然语言处理是一种广泛应用的方法,通过分析和理解文本数据的语义结构来提取有用的信息。NLP可以帮助企业从大量的文本数据中获取有价值的洞察,例如用户评论、社交媒体帖子和电子邮件。通过使用NLP技术,企业可以识别情感https://www.fanruan.com/blog/article/611442/
6.非结构化数据管理专家深圳市连用科技有限公司(Shenzhen LinkAPP Technology Co., Ltd 简称LinkAPP)成立于2008年,是一家专注于非结构化数据管理和应用的国家认定高新技术企业和深圳市政府重点扶持的软件企业,总部位于深圳,在北京、上海、广州、海口等多地均设立有办事机构,建立了辐射全国的https://www.linkapp.cn/products/42/0
7.大数据金融第二章大数据相关技术数据处理流程 一 数据采集 大数据的采集是指在确定用户目标的基础上,对该范围内的所有结构化、半结构化、非结构化数据进行采集的过程。 (零) 数据来源 商业数据、互联网数据、传感器数据。 采集方法有以下三种 (一) 系统日志采集 1.作用:知道找谁解决问题,定位解决问题,了解客户需求进行个性化营销。 https://www.jianshu.com/p/d68251554c66
8.智慧政府管理系统卡片式流程创建 所见即所得卡片流程定义,流程数字化更加方便 图形化规则配置 图形化配置工作业务,赋能企业管理效率 智能化报表设计 AI智能报表输出,业务数据呈现一览无余 非结构化数据处理 复杂逻辑数据结构轻松处理,完善的数据仓库 移动协作平台 为企业提供一套基于移动端的工作协作平台,面向企业日常管理、生产、销售。https://www.cnet99.com/gov/
9.数据架构:大数据数据仓库以及DataVault按照数据处理方式进行划分的原因是,重复型非结构化数据几乎完全是通过一个管理Hadoop的固定设施来处理的。对于重复型非结构化数据而言,其重点完全集中在对大数据管理器(例如Hadoop)中的数据进行访问、监视、显示、分析和可视化。 非重复型非结构化数据的重点则几乎完全集中在文本消歧上。这里的重点在于消歧的类型、输出的https://www.ituring.com.cn/book/tupubarticle/11854
10.“平民化”非结构数据处理腾讯云开发者社区在全球信息产业高速发展的背景下,IDC预测,2018 到 2025 年之间,全球产生的数据量将会从 33 ZB 增长到 175 ZB, 复合增长率27%,其中超过 80%的数据都会是处理难度较大的非结构化数据,如文档、文本、图形、图像、音频、视频等。非结构化数据在大数据时代的重要地位已成为共识。近些年,伴随着大数据存储、人工智能(https://cloud.tencent.com/developer/article/2214210
11.行政管理论文15篇这势必导致学生处理社会现实问题和交往能力的技能很难有所提升,他们的知识结构、能力结构和素质明显存在不平衡,很难适应信息社会高速发展的需要。操作性和实践性教学严重薄弱。虽然目前我国高校《行政管理学》课程内容体系一般都设置了教学实习、实训等实践环节,但由于其时间短、任务重,而且管理松散,缺乏常态化和规范化,https://www.ruiwen.com/lunwen/6220159.html
12.非结构化数据提取技术在统计工作中的应用摘要结构化数据和非结构化数据是大数据的两种类型,目前非结构化数据信息已达信息总量的85%以上,且每年以55%~65%的速度增长,统计工作受到大数据的冲击,日常总会遇到一些非结构化数据提取的难题,导致工作量加大,效率低下。本文对非结构化数据及其提取技术、大数据处理语言——Python语言进行学习研究,解决实际中遇https://tjj.changzhi.gov.cn/sjfx/202207/t20220704_2588893.html
13.解析非结构化数据与结构化数据的区别与联系非结构化数据和结构化数据是两种不同的数据形式,它们在数据的结构、处理方式、获取方式等方面存在差异。非结构化数据是指没有固定格式和明确结构的数据,它包括文本、图像、视频等类型,其组织形式相对自由灵活。而结构化数据是以表格和数据库形式组织的数据,具有明确的数据结构和规范的格式。本文将通过对非结构化数据和https://www.filez.com/news/detail/8334ba6c5eb4f79c51096083f5cb75ca.html
14.什么是非结构化数据?非结构化数据完整指南Elastic定义非结构化数据并探索数据示例以理解它与结构化数据有哪些不同。了解如何分析非结构化数据,非结构化数据的优点和带来的挑战。https://www.elastic.co/cn/what-is/unstructured-data
15.高频面试知识点总结,看看你能答对多少Java知音号这些数据通常需要做结构化查询,比如join,这时候,关系型数据库就要胜出一筹。 这些数据的规模、增长的速度通常是可以预期的。 事务性、一致性。 NoSQL适合存储非结构化数据,如文章、评论: 这些数据通常用于模糊处理,如全文搜索、机器学习。 这些数据是海量的,而且增长的速度是难以预期的。 https://www.cnblogs.com/javazhiyin/p/11555823.html
16.第五届InvestDigital数字证券与资管峰会在沪圆满结束曾任国药集团MIS软件工程师、敏照计算计算机系统架构师,参与工信部《DCMM数据能力成熟度模型》等多个国家标准的建设,是《非结构化数据管理解决方案白皮书2020》等多部专著的主要撰写人。 主导鸿翼参与了贵州大数据平台、中国银联非结构化数据中心等数百个国家大数据项目;打造的鸿翼ECM解决方案服务了招商银行、上汽、扬子江https://meeting.qianzhan.com/meeting/detail/151/230424-f7c77175.html
17.非结构化数据的定义及处理方法结构化数据指有完整规则的数据模型定义,高度组织格式化,可用统一的结构逻辑表达的数据。如:日期、电话号码等。 非结构化数据指数据定义不完整或不规则,没有预定义的数据模型,无法用数据库二维表结构来逻辑表达的数据。简单来说就是字段可变的数据。常见的非结构化数据有文档、图片、音频、视频等。 https://blog.csdn.net/weixin_52189060/article/details/115489159
18.科学网—[转载]武新:大数据架构及行业大数据应用系统除标准SQL外,还需支持MapReduce等分布式处理机制,具备优秀的非结构化数据处理能力,提供完整的事务管理功能,具备完善的混合负载管理能力;具备良好的通用性,支持主流第三方工具,提供可视化开发界面,支持自定义开发。性能方面要求大数据的加载、处理、导出等关键处理性能表现优异,具备优秀的高可用性和线性扩展能力,支持在线https://blog.sciencenet.cn/blog-887780-1358813.html