關係代數 in Hadoop

2021-08-14 07:53:05 字數 745 閱讀 5163

1、選擇,即where子句。

map階段過濾條件,輸出鍵值對(record,null),即直接將符合條件的值寫在鍵值上,reduce階段不做任何事,最後直接將map的結果輸出。

2、投影,即選擇某幾列的值

map階段以每條記錄在幾個屬性上的值為鍵,鍵值為空,即((a1,a2,a3),null),reduce階段僅僅將map的結果輸出。

3、交運算 (r^t)

map:

對於兩張表r和t的每一條記錄都以(r,1)的鍵值對輸出。

reduce:

彙總map輸出的結果,若有(r,2),則該條記錄必為乙個交集。

這裡要保證相同記錄傳送到同乙個reduce節點,所以重寫hashcode使相同物件的hashcode一定相同。

4、差運算 (r-t)

map:

對於r和t兩張表,每一條記錄儀鍵值對(r,r)或(r,t)輸出,即鍵值為記錄,值為表名。

reduce:

檢查每一條記錄r,若只有r沒有t,則將該記錄輸出。

保證相同記錄傳送到同乙個reduce節點。

5、自然連線

map:

對於r和t兩張表,以id為鍵,其餘屬性值為值,例如,對r表,輸出(1,(r,李志,20,91)),對t表,輸出(1,(t,女,165))。

reduce:

將同一鍵中所有的值根據它們的**(r和t),分為兩組,做笛卡爾積,然後將結果輸出,例如,(1,張小雅,20,91,女,165)。

MySQL利用關係代數進行查詢 關係代數

關係代數的由來 首先從巨集觀上來認識一下關係演算這個概念,換句話講也就是什麼是關係代數,這也是我在接觸一些東西的首要工作。大家都知道對於關係型資料庫的資料庫操作語言分為查詢和更新兩類。而查詢語言這塊,又分為關係代數語言與關係演算語言。這裡講的 關係代數的由來 首先從巨集觀上來認識一下關係演算這個概念...

關係代數運算

五種基本關係代數運算 集合 某些指定的物件集在一起就成了乙個集合,其中每乙個物件叫元素。集合的三特性 確定性 互異性 無序性。1 確定性 指的是概念清晰,物件描述明確,不能含混不清 不能模稜兩可。2 互異性 對於乙個給定的集合,它的任何兩個元素都是不同的。3 無序性 給定的乙個集合,集合內的元素間位...

2 1關係代數

tags 資料庫 關係代數是一種抽象的查詢語言,它用對關係的雲南算來表達查詢。任何一種運算都是將一定的運算子作用於一定的運算物件上,得到預期的運算結果。所以運算物件 運算子 運算結果是運算的三大要素。關係代數的運算物件是關係,運算結果亦為關係。傳統的集合運算是二目運算,包括並 差 交 笛卡爾積四種運...