概述
FTP(File Transfer Protocol)是一种文件传输协议,由两个部分组成:
- FTP 服务器:用来存储文件,可以使用 FTP 客户端通过 FTP 协议访问位于 FTP 服务器上的资源。
- FTP 客户端:可以使用 FTP 客户端通过 FTP 协议访问位于 FTP 服务器上的资源。
配置 FTP 数据源后,您可以通过 数据融合 > 任务管理 功能将其数据导入至神策数据表或实体中,便于后续在报表、分析模型、智能运营等模块使用。
在配置数据源之前,请参考以下内容确认您的 FTP 数据源是否符合要求:
数据源类型 | 数据源名称 | 版本/协议要求 | 用户权限要求 | 其他要求 |
---|---|---|---|---|
对象存储 | FTP | FTP/SFTP | 至少包含文件夹路径的读取权限 | 数据文件仅支持 txt、csv 格式 |
添加 FTP 数据源
- 选择 数据融合 > 通用数据接入 > 数据源管理。
- 点击 全部数据源 Tab 页。
- 点击 FTP 数据源。
- 点击右上角的 创建 按钮。
- 填写FTP 连接信息。
- 数据源连接名称:由您自定义填写,是该数据源连接在平台内的唯一标识。
- 协议类型:支持 FTP 和 SFTP。
- 服务器:数据源连接的 IP 地址,集群场景下,支持输入多个。
- 端口号:数据源连接的端口号。
- 基础路径:该路径是根目录的绝对路径,例如:/home/sa_cluster。
- 文件类型:读取 数据文件 的类型范围,当前支持 txt、csv,后续同步数据时,仅读取指定类型的数据文件。
- 用户名:数据源连接的有效用户名。
- 密码:对应用户名的有效密码。
- 点击 测试连接 按钮。
- 点击 提交 按钮。
FTP 数据集配置方法
通过 FTP 数据源接入数据,必须先按以下方法对路径、文件夹、文件进行配置。
路径规则定义
导入数据集时,需按该路径规则进行配置,如:/home/dataGroupFile/dataFile
- /home:基础路径
- dataGroupFile:数据集分组文件夹
- dataFile:数据集文件夹
单个数据集需包含的内容
序号 | 内容名称和必要性 | 作用 | 约束 | 示例文件 |
---|---|---|---|---|
01 | 数据集分组文件夹 必要 | 类比结构化数据库 DB,起到对数据集分组的作用 | 无具体名称约束,可以自定义 | - |
02 | 数据集文件夹 必要 | 一个文件夹代表一个数据集; | 文件夹命名规则:仅支持字母、数字、下划线的组合,且需要以字母开头;最多 100 个字符 | - |
03 | 元数据文件 必要 | 描述当前数据集的数据结构,一个数据集文件夹下只能存放一个元数据文件 | 文件格式:yml 格式 | |
04 | 数据文件 非必要 | 存储当前数据集 数据 的文件; 一个数据集文件夹下支持存放多个数据文件。 | 文件格式:txt 或 csv 格式
接入 FTP 数据后,仅支持全量覆盖、全量追加、增量追加三种更新方式。 | |
05 | 就绪文件 | 代表某个数据文件已生成就绪;文件内容无具体要求 | 文件格式:verf 格式 |
管理 FTP 数据源
- 选择 数据融合 > 通用数据接入 > 数据源管理。
- 点击 已添加数据源 Tab 页。
- 点击 FTP 数据源。
- 编辑:支持修改数据连接的所有配置参数。
- 删除:删除当前连接。
如果当前数据连接已被任务使用,修改参数或删除连接会导致任务失败。
字段类型的映射规则
从 FTP 数据源将数据导入到神策数据表,字段类型映射错误可能导致内容转换错误或任务执行失败,按以下规则配置字段映射,数据转换是安全的:
原始字段类型 | 数据表字段类型 |
---|---|
tinyint | NUMBER / INT / BIGINT |
smallint | NUMBER / INT / BIGINT |
mediumint | NUMBER / INT / BIGINT |
int | NUMBER / INT / BIGINT |
bigint | NUMBER / BIGINT |
float | NUMBER |
double | NUMBER |
decimal | NUMBER |
char | STRING |
enum | STRING |
longtext | STRING |
mediumtext | STRING |
string | STRING |
text | STRING |
tinytext | STRING |
varchar | STRING |
year | STRING |
date | TIMESTAMP |
datetime | TIMESTAMP |
timestamp | TIMESTAMP |