2014-10-04 106 views

回答

9

細粒度更新將是數據庫中一條記錄的更新,而粗粒度通常是函數運算符(如spark中使用的),例如map,reduce,flatMap,join。 Spark的模型利用了這一點,因爲一旦它保存了小DAG的操作(與正在處理的數據相比較小),只要原始數據仍然存在,它就可以使用它重新計算。由於細粒度的更新不能重新計算,因爲保存更新的成本可能與保存數據本身的成本相當,基本上,如果將每條記錄分別更新爲數十億分鐘,則必須保存信息以計算每個更新,而使用粗粒度可以節省一項功能可以更新十億條記錄。很顯然,這是以不像細粒度模型那樣靈活爲代價的。

+0

感謝您的回答。它有幫助。我可以用什麼不同的方式讓火花變成細粒度的模型?基本上我想構建一個DAG,在單元級而不是表級別上工作。一旦一個單元格被更新,我想基於DAG在多個表格中觸發其他單元格級別的更新。讓我知道你是否有投入。 – 2016-05-02 04:42:16