Source: https://dev-docs.yueshu.com.cn/v5.3.2/utilities/exchange/config/sources/hdfs/ Documentation version: v5.3.2 # HDFS 配置 本文介绍从 HDFS 数据源导入数据的配置项。关于完整配置文件和配置项的信息,请参见[数据导入配置](https://dev-docs.yueshu.com.cn/v5.3.2/utilities/exchange/config/)。 ## 数据源配置 []() 下表列出了 HDFS 数据源特定的配置项。 | 选项 | 描述 | 类型 | 是否必选 | 默认值 | `type` | 数据源的类型。设置为`"hdfs"`。 | String | 是 | 无 | `format` | 源数据的文件格式。有效值为`"csv"`、`"json"`、`"orc"`和`"parquet"`。 | String | 否 | `"csv"` | `header` | CSV 文件是否包含表头。仅当`format`设置为`"csv"`时生效。若 CSV 文件不含表头,在配置 HDFS 数据与图元素的[映射](https://dev-docs.yueshu.com.cn/v5.3.2/utilities/exchange/config/sources/mapping/)时,必须使用格式`_cX`指定列名。例如,`_c0`表示第一列,`_c1`表示第二列,以此类推。 | Bool | 否 | `false` | `separator` | CSV 文件中使用的分隔符。仅当`format`设置为`"csv"`时生效。 | String | 否 | `","` | `path` | HDFS 中源数据的路径。 路径可以指定目录或文件,使用前缀`hdfs://`加上源数据路径。 | String | 是 | 无 ## 通用源配置 下列配置项也可以作为全局设置在配置文件的`sourcesCommon`一节指定: - `type` - `format` - `header` - `separator` 请注意,针对特定数据源的配置会覆盖全局设置。 ## 数据源配置示例 HDFS 源配置 ```` sources: [ { type:"hdfs" format:"csv" header:false separator:"," path: "hdfs://127.0.0.1:9000/import_movie/sub_actor.csv" // nodetypes: [] // edgetypes: [] } ] ```` ## 完整配置示例 将``替换为登录账号的当前密码。若已修改密码,请使用修改后的密码。 ```` { taskType: import nebula: { graphAddr: "127.0.0.1:9669" graphName: "movie" user: "root" passwd: "" } error: { path: "/tmp/errors" maxRecords: 10000 } checkPoint: { path: "/tmp/checkpoint" resume: false } sourcesCommon:{ type:"hdfs" format: "csv" header:true separator:"," } writeCommon:{ batchSize: 2000 enableRealTimeQPSLog: true mode: "INSERT IGNORE" } sources: [ # node type Actor { path: "hdfs://127.0.0.1:9000/import_movie/sub_actor.csv" pre_processes: { filter: ["birth_date!='\\N'"] concatConstant: [ { field: "name" prefixValue: "test_" suffixValue: "" } ] } nodetypes: [ { name: "Actor" sourceFields: [people_id,name,birth_date] nebulaFields: [id,name,birthDate] } ] } # node type Movie { path: "hdfs://127.0.0.1:9000/import_movie/sub_movie.csv" nodetypes: [ { name: "Movie" sourceFields: [movie_id,name] nebulaFields: [id,name] } ] } # edge type Act { path: "hdfs://127.0.0.1:9000/import_movie/sub_actor_act_movie.csv" edgetypes: [ { name: "Act" sourceKeys: [people_id] nebulaSrcKeys: [id] targetKeys: [movie_id] nebulaDstKeys: [id] sourceFields: [] nebulaFields: [] } ] } ] } ````