簡體   English   中英

數據位置如何與IBM Bluemix上的OpenStack Swift一起使用?

[英]How does data locality work with OpenStack Swift on IBM Bluemix?

我目前正在使用IBM Bluemix中的Apache Spark服務。 由於IBM Cloud依賴OpenStack Swift作為此服務的數據存儲,我想知道該架構是否存在任何數據位置(至少可能)。

如果我使用HDFS,SparkDriver會向HDFS namenode詢問包含文件各個塊的datanode,然后將工作安排到SparkWorkers。

所以我檢查了Swift API有一個Range參數,它允許SparkWorker至少只讀取本地塊,但SparkDriver如何找出這些范圍?

有任何想法嗎?

這是計算和存儲的分解。 也就是說,火花計算節點根本不與快速群集存儲節點共享。 這為與存儲分開的計算的可擴展性帶來了好處,反之亦然。 但是在這個模型中,根據定義,你不能擁有數據局部性。 因此,粗略地說,這是如何工作的,每個火花執行器都可以從快速集群中拉出自己的對象塊范圍,這樣每個執行器都不需要拉入所有對象數據,只能在它自己的部分上運行; 這將是低效的。 但是仍然從遠程swift集群中拉出塊,然后不是本地的。 這里唯一的問題是將塊拉入每個執行程序所需的時間,這樣就不會減慢速度。 對於Bluemix Apache Spark服務和Bluemix或Softlayer對象存儲服務,它們之間存在低延遲和快速網絡。

re:“由於IBM Cloud依賴OpenStack Swift作為此服務的數據存儲”。 隨着測試版的進展,spark服務將提供其他數據源,因此不會100%依賴。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM