元のタイトル: HDFS 以外に、Spark がサポートしている (推奨されている) DFS は何ですか?
いくつかの巨大なクラスターで、spark と elasticsearch (elasticsearch-hadoop ドライバーを使用) を喜んで使用しています。
時々、データのクラスター全体を取り出し、各ドキュメントを処理し、それらすべてを別の Elasticsearch (ES) クラスターに入れたいと思います (そう、データ移行も)。
現在、クラスターから RDD に ES データを読み取り、RDD からのスワッピングを伴うため、spark + elasticsearch-hadoop を使用して RDD を別のSparkContext
RDD に書き込む方法はありません。SparkContext
そのため、RDD をオブジェクト ファイルに書き込み、後でそれらを異なるs のRDD に読み戻したいと考えています。
ただし、ここで問題が発生します。spark クラスター全体で大きなファイルを共有するには、DFS (分散ファイル システム) が必要です。最も一般的なソリューションは HDFS ですが、スタックに Hadoop を導入することは避けたいと思っています。Spark がサポートする他の推奨 DFS はありますか?
以下を更新
以下の @Daniel Darabos の回答のおかげで、次の Scala コードを使用して、さまざまな ElasticSearch クラスターとの間でデータを読み書きできるようになりました。
val conf = new SparkConf().setAppName("Spark Migrating ES Data")
conf.set("es.nodes", "from.escluster.com")
val sc = new SparkContext(conf)
val allDataRDD = sc.esRDD("some/lovelydata")
val cfg = Map("es.nodes" -> "to.escluster.com")
allDataRDD.saveToEsWithMeta("clone/lovelydata", cfg)