Dataproc 在使用 --properties 添加键时添加额外的字段?

Dataproc adding extra field when adding keys using --properties?

我正在尝试使用 --properties 字段更新或添加新字段到 dataproc 集群中的配置单元配置。我是来自云 运行 的 dataproc 集群命令 shell。我看到的是 dataproc 正在使用 final 添加新密钥。我找不到它的意思?

  <property>
    <name>hive.compactor.worker.threads</name>
    <value>1</value>
    <final>false</final>
    <source>Dataproc Cluster Properties</source>
  </property>

此外,dataproc 何时将这些更改应用到 hive.xml?在集群上或之前的配置单元服务启动 运行 之后? 此外,我无法找到有关如何在创建集群后对配置单元配置进行一些更改后重新启动配置单元和火花的任何文档?

1) 如果 属性 被标记为 final,则用户无法基于每个作业覆盖它(例如,使用命令行参数或在 SparkConf/Configuration 中设置属性) .我们已经明确地使集群范围的属性可覆盖。 https://hadoop.apache.org/docs/stable/api/org/apache/hadoop/conf/Configuration.html

2) Dataproc 在启动任何服务之前将 --properties 应用于 xml 文件

3) 如果您手动更改属性,您可以通过 ssh 进入集群的主节点和 运行 sudo systemctl restart <service> 来重新启动与服务相关的服务。对于蜂巢,这是 hive-metastorehive-server2。对于 spark,那是 spark-history-server。几个 initialization actions 这样做。

4) 如果您想更改属性,请考虑删除并重新创建您的集群——这比确定要重新启动哪些服务要容易一些。

5) 请记住,您仍然可以在每个作业的基础上设置每个作业的配置。如果您使用的是 gcloud,则类似于 gcloud dataproc jobs submit spark --properties spark.executors.cores=4 ...other args...,对于 spark-submit,您可以使用 --conf,对于 hive,您可以使用 set prop=value.