【发布时间】:2018-01-05 18:08:21
【问题描述】:
我正在使用 spark 1.5.0 亚马逊的 EMR。我有多个属性文件需要在我的 spark-submit 程序中使用。我探索了--properties-file 选项。但它允许您从单个文件导入属性。我需要从结构如下的目录中读取属性:
├── AddToCollection
│ ├── query
│ ├── root
│ ├── schema
│ └── schema.json
├── CreateCollectionSuccess
│ ├── query
│ ├── root
│ ├── schema
│ └── schema.json
├── FeedCardUnlike
│ ├── query
│ ├── root
│ ├── schema
│ └── schema.json
在独立模式下,我可以通过指定文件在本地系统中的位置来解决这个问题。但它在集群模式下不起作用,我使用带有 spark-submit 命令的 jar。 我怎样才能在火花中做到这一点?
【问题讨论】:
-
您好,只是好奇,您是如何在独立模式下实现的?您不是在 Spark 属性文件中而是在您的应用程序中指定位置?
-
@keypoint 嗨。所以,基本上我的查询文件有 SQL 查询。所以,我把它读作
String query = new String(Files.readAllBytes(Paths.get(configLocation + event_type + "/query" )));。 -
谢谢,我明白了。那你为什么不把这些查询文件打包到你的大jar中,这样集群模式下,当jar分发给worker时,worker也能读取这些文件呢?或者我仍然想念你的问题......
-
@keypoint:我对 java 不太擅长。我才刚刚开始。请你能告诉我我该怎么做。我把这些放在'src/main/resources'下。但这不起作用。
-
当然,我会在下面发布答案
标签: apache-spark apache-spark-sql