表
表定义数据的结构。
可以将新数据加载到表中,也可以引用现有位置中的数据。您可以通过创建表权限来定义对表的细粒度访问控制权限。
表可以是外部表,也可以是管理表。
外部表
外部表为存储在不受 Oracle AI Data Platform Workbench 管理的地点中的数据定义结构。在 AI Data Platform Workbench 中创建外部表时,元数据生命周期由 AI Data Platform Workbench 管理。删除外部表时,仅删除表定义。外部表参考的数据不会被删除。
确保您的用户具有创建外部表所需的以下 IAM 策略:
allow group <GroupName> to read buckets in compartment id <external-data-CompartmentId>
allow group <GroupName> to inspect objects in compartment id <external-data-CompartmentId>外部表需要其他 IAM 策略。有关详细信息,请参阅 Oracle AI Data Platform Workbench 的 IAM 策略。
受管表
托管表为存储在 AI Data Platform 中的数据定义结构,并且只能由 AI Data Platform Workbench 用户访问。
删除托管表时,将删除表定义和表数据。
支持的表格式
| 格式化 | 说明 | 用途 |
|---|---|---|
| 逗号分隔值 (Comma-separated-values,CSV) | 数据以文本文件形式存储,该文件具有指定的基于行的文件格式来构建数据。通常,文件中的第一行是包含数据列名的标题行。 | 用于在系统之间交换表格式数据。文件中的每一行都是表中的一行。 |
| JavaScript 对象表示法 (JSON) | 数据以基于文本的标准格式存储,用于表示基于 JavaScript 对象语法的结构化数据。JSON 支持对象或分层结构的列表。 | 用于流应用程序。JSON 简化了将复杂关系存储在单个文档中的相关数据的存储,并避免了混沌列表转换为关系数据模型。请注意,JSON 不可拆分。 |
| Avro | 数据以基于行的二进制格式存储,而模式以 JSON 格式存储,以最大限度地减小文件大小并提高效率。Avro 通过管理添加、缺失和更改的字段,为模式进化提供了可靠的支持。这使得旧软件可以读取新数据,而新软件可以读取旧数据。也称为数据序列化系统。 | 用于数据存储,因为 avro 文件是可拆分和可压缩的。基于行的串行存储非常适合大量写入事务,例如将数据插入 AI 数据平台。当模式演化在高速写入期间至关重要时,Avro 也是一个不错的选择。 |
| Parquet | 数据以列式数据格式存储,具有高度可压缩性和可拆分性。Parquet 针对范式 "Write Once Read Many (WORM)" 进行了优化。它的写入速度很慢,但读取速度非常快,特别是当您仅访问部分列时。 | 用于解决大数据问题,因为压缩算法可以更好地处理列式数据格式。您可以以各种格式存储大数据,例如图像、视频、文档和结构化数据表。对于读取部分数据时繁重的工作负载,Parquet 是一个不错的选择。例如,当数据集具有多个列,但您仅希望访问部分列。如果您依赖 Spark 或者希望多个服务访问对象存储中存储的相同数据,则更理想。 |
| 优化行列 (ORC) | 数据以列格式存储在单个文件中的行集合中。 | 用于跨群集并行处理行集合。当读取事务多于写入事务或压缩为优先级时是理想选择。 |
| 差值 | 数据以列格式存储,该格式使用基于 JSON 文件的事务处理日志扩展 Parquet 数据文件,以用于 ACID 事务处理和可伸缩元数据处理。 | 用于事务处理支持。 |
限制
以下限制适用于 Oracle AI Data Platform 中的表:
- 不能在卷内/卷上的任何数据文件或目录上定义外部表。
- 不能在存储桶和/或其目录上定义已用于其他外部表或外部卷的外部表
- 无法在主目录中查看/列出视图。

