2015-09-12 78 views
7

在Spark的FAQ,我們特別說一個沒有使用HDFS:使用Apache的Spark與HDFS與其他分佈式存儲

我需要Hadoop的運行火花?

不,但是如果您在羣集上運行,則需要某種形式的共享文件系統(例如,在每個節點上的相同路徑上安裝NFS)。如果你有這種類型的文件系統,你可以在獨立模式下部署Spark。

那麼,如果我不打算使用Hadoop MapReduce,那麼使用Apache Spark與HDFS與其他分佈式文件系統(如NFS)有何優缺點?如果我使用NFS而不是HDFS作爲節點存儲(對於檢查點,隨機溢出等),我會錯過一個重要功能嗎?

+0

我刪除了我早先的答案。這個SE問題可能對HDFS與其他替代方案的比較有用:http://stackoverflow.com/questions/32669187/is-hdfs-necessary-for-spark-workloads/34789554#34789554 –

回答

7

幾個月,並與NFS和HDFS一定的經驗後,我現在可以回答我的問題:

NFS允許查看/修改在遠程機器上的文件,就好像它們是存儲在本地機器。 HDFS也可以做到這一點,但它是分佈式(而不是NFS),也是容錯和可擴展的。

使用NFS的優點是安裝簡單,所以我可能會將它用於QA環境或小型集羣。 HDFS的優點當然是它的容錯性,但是更大的優勢,恕我直言,就是當HDFS與Spark節點共處一處時,利用局部性的能力,它爲檢查點提供最佳性能,洗牌溢出等。

+0

你會碰巧有一些文檔顯示了NFS與HDFS的性能或分佈式優勢與獨立優勢。我意識到Cassandra分佈式系統的容錯性,但是如果將Spark系統擴展到它對生態系統的幫助如何。 – azngunit81