OceanBase 聯(lián)接算法概述

2021-06-30 11:09 更新

數(shù)據(jù)庫中的聯(lián)接語句用于將數(shù)據(jù)庫中的兩個(gè)或多個(gè)表根據(jù)聯(lián)接條件,把表的屬性通過它們的值組合在一起。由“聯(lián)接”生成的集合,可以被保存為表,或者當(dāng)成表來使用。

不同方式的聯(lián)接算法為 SQL 調(diào)優(yōu)提供了更多的選擇,可以使得 SQL 調(diào)優(yōu)時(shí)能夠根據(jù)表的數(shù)據(jù)特性選擇合適的聯(lián)接算法,從而讓多表聯(lián)接組合起來變得更加高效。

聯(lián)接語句在數(shù)據(jù)中由聯(lián)接算法實(shí)現(xiàn),主要的聯(lián)接算法有 NESTED LOOP JOIN、HASH JOIN 和 MERGE JOIN。由于三種算法在不同的場(chǎng)景下各有優(yōu)劣,優(yōu)化器會(huì)自動(dòng)選擇聯(lián)接算法。關(guān)于各算法的原理,請(qǐng)參見 聯(lián)接算法。

針對(duì)聯(lián)接順序及聯(lián)接算法的選擇,OceanBase 數(shù)據(jù)庫也提供了相關(guān) HINT 機(jī)制進(jìn)行控制,以方便用戶根據(jù)自身的實(shí)際需求去選擇何種聯(lián)接順序及聯(lián)接算法以進(jìn)行多表的聯(lián)接。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)