SnappyData 文档给出了如何将 jar 提交到集群的示例:
https://snappydatainc.github.io/snappydata/howto/run_spark_job_inside_cluster/
但是,如果我需要多次提交具有相同类 CreatePartitionedRowTable 的 jar,但使用不同的参数,说不同的后缀以附加到创建的表的名称,我该怎么做?
更新:
更准确地说,说我想在提交jar时提交具有不同参数的jar,就像这样
bin/snappy-job.sh submit
--app-name CreatePartitionedRowTable
--class org.apache.spark.examples.snappydata.CreatePartitionedRowTable
--app-jar examples/jars/quickstart.jar
--lead localhost:8090
--CustomeParam suffix
额外的
--CustomeParam suffix
会传入到job中,代码可以取这个参数后缀,并将后缀附加到要创建的表名上,这样就不用每次提交jar都修改代码了带有不同的后缀。
更新 2:
我刚刚浏览了示例并找到了一个示例用法: https ://github.com/SnappyDataInc/snappydata/blob/master/examples/src/main/scala/org/apache/spark/examples/snappydata/CreateColumnTable.scala
所以基本上像这样运行:
* bin/snappy-job.sh submit
* --app-name CreateColumnTable
* --class org.apache.spark.examples.snappydata.CreateColumnTable
* --app-jar examples/jars/quickstart.jar
* --lead [leadHost:port]
* --conf data_resource_folder=../../quickstart/src/main/resources
并使用 config 获取自定义参数。