当你的数据在数据源已经准备完毕,ByteHouse 支持通过数据导入来进行数据加载。
当前 ByteHouse 支持从 S3 中进行离线导入。
不同的数据源类型有会略有差异,但一般来说都需要4个步骤:
请登录 ByteHouse,进入到 数据加载 页面,点击 新建数据加载 。
数据源是指包含待导入数据的文件夹/路径(S3/TOS/OSS)。连接时通常需要提供给存储系统一些信息,包括校验凭证、集群地址等。我们使用数据源一词来存储此类信息。您的连接信息已加密,即使是我们也无法读取。一旦存储,您就无法检索此类信息,只能更新或删除信息。每个连接都需要确保在账户之间也是唯一名称。因为除了源类型和连接名称之外,所有的细节都是隐藏的,所以您应该为您的连接设置一个名称,以帮助您直观地了解导入任务所需的数据源。
在选择 对象存储, 并选择相应的数据源,下面以 S3
为例。
S3 连接只需要访问密钥和密钥,我们可以具有(读取)访问权限的有效凭证链接。
您可以点击这里了解如何获取 AK 和 SK 信息。
我们提供了方便您选择S3文件夹的功能,也可以支持手动输入。
注意:文件名中的文件用于分析数据源模式,当导入开始时,系统会询问您要导入的文件。
您可以导入到现有表或创建新表。如果您选择创建新表,用户界面将类似于数据库管理中的创建表
,事实上,我们使用同一个后台处理这两种情况。区别在于此界面存在字段映射设置,您可以逐个指定从源列到目标列的映射。我们通过比较列名来预填充映射,但建议您根据需要进行检查和自定义。
我们提供 Schema 解析功能,以帮助您检索数据 Schema。该功能的工作原理是,对于有 Schema 的格式(如avro、parquet),从元数据中读取 Schema;对于没有 Schema 的格式(如csv、json),则从前几百条记录中进行推断。如果源数据没有表头,则设列名为_c0
到_cN
格式。
该功能只是为了提供便捷解析的能力,可能存在一定解析错误的情况,建议您在处理之前再进行检查。
加载类型说明了如何将数据加载到目标表:
请注意:如果你选择新建一个同步表,则该表和导入任务会依次进行创建,因此可能会出现导入任务创建失败但是表创建成功的场景。如果您遇到了类似情况,请退回至第三步,选择导入至已有表中进行导入。
我们在数据导入页面上会显示两个列表:导入任务和执行计划列表,用以展示了导入任务和执行计划的全局视图,包括名称、类型、状态、每个导入任务和执行计划的导入行数。单击任意导入任务和执行计划,可分别进入详细信息页面
成功创建导入任务后,您将被重定向到任务详细信息页面。您也可以通过点击对应任务进入该页面。在该页面上,您可以深入了解各个导入任务的具体信息,如同步历史、导入图、配置等。你也可以在这里操作任务。
导入任务在创建后不会自动启动,如果需要启动它,您可以单击右上角的开启按钮。
如果导入任务处于运行中,那么开启 按键会被替换为 停止。
在很多场景下,可能都会需要编辑修改任务,例如 Schema 变更,映射关系修改等。编辑操作步骤和新建导入任务比较相似,您可以通过在展开的菜单列表中选择编辑
。