HOME»データベーススペシャリスト令和2年秋期»午前Ⅱ 問18
データベーススペシャリスト令和2年秋期 午前Ⅱ 問18
問18
分散型DBMSにおいて,二つのデータベースサイトの表で結合を行う場合,どちらか一方の表をもう一方のデータベースサイトに送る必要がある。その際,表の結合に必要な列値だけを送り,結合に成功した結果を元のデータベースサイトに転送して,最終的な結合を行う方式はどれか。
- 入れ子ループ法
- セミジョイン法
- ハッシュセミジョイン法
- マージジョイン法
- [出題歴]
- データベース H18春期 問38
- データベース H25春期 問20
分類
テクノロジ系 » データベース » データベース応用
正解
イ
解説
セミジョイン法(準結合演算法)は、分散型データベース演算に特有の転送コストを少なくするための結合手法です。各サイトに別々に保存されている表同士で結合演算を行う際に、他方のサイトへ結合に必要な属性だけを送り、演算結果だけを送り返してもらうことで転送するデータ量を最小限に抑えます。
- 入れ子ループ法(ネストループ法)は、基準となる表の各レコードごとに他方の表の全レコードとの比較をして結合していく手法です。分散サイト間の結合演算ではどちらか片方の表全体を他方へ送る必要があるため転送コストは軽減されません。
- 正しい。
- ハッシュセミジョイン法は、セミジョイン法にハッシュ結合を組み合わせた手法です。セミジョイン法と異なる点は、相手に結合属性の値をそのまま送るのではなく結合属性の値の「ハッシュ値」を送ることです。ハッシュ値を受け取ったサイトはハッシュ結合法を用いて高速に結合処理を行います。設問にはハッシュ値ではなく「属性だけを送り…」とあるので誤りです。
- マージジョイン法は、ソートされた属性の値を先頭から突き合わせて効率的に結合していく手法です。分散サイト間の結合演算ではどちらか片方の表全体をソートして他方へ送る必要があるため転送コストは軽減されません。