我想知道SQL連接如何在Greenplum這樣的MPP數據庫中工作,如果我想要在跨多個節點節點分佈的兩個大表之間進行連接,那麼數據如何處理?查詢連接如何在MPP數據庫中工作?
主節點是否從所有節點獲取所有相關數據,然後進行連接並返回結果集?如果你要做很多這種類型的表連接,這可能不會是一個大瓶頸嗎?
我發現從here如下:
的MPP數據庫試圖段跨多個服務器中的數據,使每個服務器節點都可以獨立於其它的工作。例如,要在大表和小表之間執行JOIN,MPP數據庫將在每個節點上存儲大表中的行子集以及整個小表的副本。然後,每個節點可以獨立於其他節點執行JOIN,從而消除共享資源產生的瓶頸。這可以實現大規模並行處理,其中大型查詢可以分解爲一組較小的查詢,每個查詢都可以在單獨的服務器上獨立運行。
這特別會談,小桌子約聯接,但提到了關於連接兩個大表..