准备摄入数据
本主题指导您高效地将数据从外部对象存储器手动采集到 IBM® watsonx.data 以进行查询。 我们支持 IBM Storage Ceph、IBM Cloud Object Storage (COS)、AWS S3 和 MinIO 作为对象存储桶。
Parquet 和 CSV 是受支持的文件类型。
您可以直接摄入 Parquet 文件以实现最佳性能,而 CSV 文件需要登台目录以转换为 Parquet 格式。
准备工作
本教程需要:
- 必须在S3文件夹中创建数据文件,以便摄取。 创建S3文件夹的最佳方法是使用AWSCLI。 源文件夹必须包含所有 parquet 文件或所有 CSV 文件。 使用AWSCLI 避免可能导致摄取问题的隐藏“0 字节”文件。 有关创建S3文件夹的详细信息,请参阅 使用文件夹在Amazon S3控制台中组织对象。
- 必须为 CSV 文件,个别文件采集 (Parquet 或 CSV) 和本地 Parquet 文件夹指定登台文件夹。 S3 文件夹中的所有文件都不需要登台文件夹 (源文件夹摄入)。 此情况的例外情况是,S3 文件夹中不同类型的拼合文件之间存在类型差异,或者涉及 TIME 数据类型。
- 对于通过 CLI 执行的采集作业,登台存储区必须是与 Hive 目录关联的同一存储区。 只能在 Hive 目录中进行登台。
关于本任务
方案: 您在 S3 文件夹中有一组需要摄入到 IBM 数据库中的数据文件。 您需要对对象存储区中的数据文件运行 SQL 查询。
本教程的目标列示如下:
- 在 watsonx.data 服务中创建基础结构。
- 建立与客户数据存储的连接。
- 从存储器中查询
您可以使用 Spark 采集 来采集数据。
有关不同参数的用法的详细信息,请参阅 ibm-lh 工具中支持的选项和参数,以及有关使用 Spark CLI,命令和配置文件将数据文件采集到 watsonx.data 中的信息,请参阅 通过 ibm-lh 工具命令行进行 Spark 采集, 使用命令创建采集作业 和 使用配置文件创建采集作业。
过程
从 S3 文件夹采集 Parquet 或 CSV 文件
在此部分中,您在需要摄入到 IBM 数据库中的 S3 文件夹中有一组 Parquet/CSV 文件。
-
准备源 S3 文件夹:
- 使用 AWS CLI 将 Parquet /CSV 文件复制到公共 S3 文件夹中。 避免通过控制台创建空文件夹以防止隐藏 0 字节文件。
-
指定登台目录 (对于 CLI 采集):
- 提供登台位置参数以指定用于 CSV 或特定 Parquet 文件到 Parquet 转换的登台目录。 如果摄入工具不存在,那么该工具将创建该工具。
请参阅 登台位置 以获取更多详细信息。
-
创建模式文件以指定 CSV 文件属性:
- 提供模式参数以指定 CSV 文件属性,例如字段定界符,行定界符,转义字符,编码以及 CSV 文件中是否存在头。
请参阅 模式文件规范 以获取更多详细信息。
-
启动服务器方式摄入:
- 使用 CLI (server-mode) 来启动摄入过程。
-
CSV 或特定 Parquet 到 Parquet 的转换:
- 摄取工具将特定 Parquet 或 CSV 文件转换为 Parquet 格式,并将其存储在登台目录中。
结果
- 优化数据传输性能。
- 简化摄入过程。
- 在发生错误时提供明确的故障诊断。