配置说明

    修改配置文件之前,建议根据数据源复制并修改文件名称,便于区分。例如数据源为CSV文件,可以复制为。

    配置文件的内容主要分为如下几类:

    • Spark相关配置

    • Nebula Graph相关配置

    • 点配置

    • 边配置

    如果Spark和Hive部署在不同集群,才需要配置连接Hive的参数,否则请忽略这些配置。

    参数数据类型默认值是否必须说明
    hive.warehousestring-HDFS中的warehouse路径。用双引号括起路径,以hdfs://开头。
    hive.connectionURLstring-JDBC连接的URL。例如“jdbc:mysql://127.0.0.1:3306/hive_spark?characterEncoding=UTF-8”
    hive.connectionDriverNamestring“com.mysql.jdbc.Driver”驱动名称。
    hive.connectionUserNamelist[string]-连接的用户名。
    hive.connectionPasswordlist[string]-用户名对应的密码。
    参数数据类型默认值是否必须说明
    nebula.address.graphlist[string][“127.0.0.1:9669”]所有Graph服务的地址,包括IP和端口,多个地址用英文逗号(,)分隔。格式为[“ip1:port1”,”ip2:port2”,”ip3:port3”]
    nebula.address.metalist[string][“127.0.0.1:9559”]所有Meta服务的地址,包括IP和端口,多个地址用英文逗号(,)分隔。格式为[“ip1:port1”,”ip2:port2”,”ip3:port3”]
    nebula.userstring-拥有Nebula Graph写权限的用户名。
    nebula.pswdstring-用户名对应的密码。
    nebula.spacestring-需要导入数据的的图空间名称。
    nebula.path.localstring“/tmp”导入SST文件时需要设置本地SST文件路径。
    nebula.path.remotestring“/sst”导入SST文件时需要设置远端SST文件路径。
    nebula.path.hdfs.namenodestring“hdfs://name_node:9000”导入SST文件时需要设置HDFS的namenode。
    nebula.connection.timeoutint3000Thrift连接的超时时间,单位为 ms。
    nebula.connection.retryint3Thrift连接重试次数。
    nebula.execution.retryint3nGQL语句执行重试次数。
    nebula.error.maxint32导入过程中的最大失败次数。当失败次数达到最大值时,提交的Spark作业将自动停止。
    nebula.error.outputstring/tmp/errors输出错误日志的路径。错误日志保存执行失败的nGQL语句。
    nebula.rate.limitint1024导入数据时令牌桶的令牌数量限制。
    nebula.rate.timeoutint1000令牌桶中拿取令牌的超时时间,单位:毫秒。

    对于不同的数据源,点的配置也有所不同,有很多通用参数,也有部分特有参数,配置时需要配置通用参数和不同数据源的特有参数。

    参数数据类型默认值是否必须说明
    tags.namestring-Nebula Graph中定义的Tag名称。
    tags.type.sourcestring-指定数据源。例如。
    tags.type.sinkstringclient指定导入方式,可选值为clientSST
    tags.fieldslist[string]-属性对应的列的表头或列名。如果有表头或列名,请直接使用该名称。如果CSV文件没有表头,用[_c0, _c1, _c2]的形式表示第一列、第二列、第三列,以此类推。
    tags.nebula.fieldslist[string]-Nebula Graph中定义的属性名称,顺序必须和tags.fields一一对应。例如[_c1, _c2]对应[name, age],表示第二列为属性name的值,第三列为属性age的值。
    tags.vertex.fieldstring-点ID的列。例如CSV文件没有表头时,可以用_c0表示第一列的值作为点ID。
    tags.batchint256单批次写入Nebula Graph的最大点数量。
    tags.partitionint32Spark分片数量。

    Parquet/JSON/ORC源特有参数

    参数数据类型默认值是否必须说明
    tags.pathstring-HDFS中点数据文件的路径。用双引号括起路径,以hdfs://开头。

    CSV源特有参数

    Hive源特有参数

    参数数据类型默认值是否必须说明
    tags.execstring-查询数据源的语句。例如select name,age from mooc.users
    参数数据类型默认值是否必须说明
    tags.tablestring-MaxCompute的表名。
    tags.projectstring-MaxCompute的项目名。
    tags.odpsUrlstring-MaxCompute服务的odpsUrl。地址可根据查看。
    tags.tunnelUrlstring-MaxCompute服务的tunnelUrl。地址可根据阿里云文档查看。
    tags.accessKeyIdstring-MaxCompute服务的accessKeyId。
    tags.accessKeySecretstring-MaxCompute服务的accessKeySecret。
    tags.partitionSpecstring-MaxCompute表的分区描述。
    tags.sentencestring-查询数据源的语句。SQL语句中的表名和上方table的值相同。

    Neo4j源特有参数

    参数数据类型默认值是否必须说明
    tags.execstring-查询数据源的语句。例如match (n:label) return n.neo4j-field-0
    tags.serverstring“bolt://127.0.0.1:7687”Neo4j服务器地址。
    tags.userstring-拥有读取权限的Neo4j用户名。
    tags.passwordstring-用户名对应密码。
    tags.databasestring-Neo4j中保存源数据的数据库名。
    tags.check_point_pathstring/tmp/test设置保存导入进度信息的目录,用于断点续传。如果未设置,表示不启用断点续传。

    MySQL源特有参数

    参数数据类型默认值是否必须说明
    tags.hoststring-MySQL服务器地址。
    tags.portstring-MySQL服务器端口。
    tags.databasestring-数据库名称。
    tags.tablestring-需要作为数据源的表名称。
    tags.userstring-拥有读取权限的MySQL用户名。
    tags.passwordstring-用户名对应密码。
    string-查询数据源的语句。例如“select teamid, name from basketball.team order by teamid;”

    ClickHouse源特有参数

    参数数据类型默认值是否必须说明
    tags.hoststring127.0.0.1Hbase服务器地址。
    tags.portstring2181Hbase服务器端口。
    tags.tablestring-需要作为数据源的表名称。
    tags.columnFamilystring-表所属的列族(column family)。

    Pulsar源特有参数

    参数数据类型默认值是否必须说明
    tags.servicestring“pulsar://localhost:6650”Pulsar服务器地址。
    tags.adminstring““连接pulsar的admin.url。
    tags.options.<topic|topics| topicsPattern>string-Pulsar的选项,可以从topictopicstopicsPattern选择一个进行配置。
    tags.interval.secondsint10读取消息的间隔。单位:秒。

    Kafka源特有参数

    参数数据类型默认值是否必须说明
    tags.servicestring-Kafka服务器地址。
    tags.topicstring-消息类别。
    tags.interval.secondsint10读取消息的间隔。单位:秒。

    SST源特有参数

    参数数据类型默认值是否必须说明
    tags.pathstring-指定需要生成SST文件的源文件的路径。

    对于不同的数据源,边的配置也有所不同,有很多通用参数,也有部分特有参数,配置时需要配置通用参数和不同数据源的特有参数。