この概念が出た関連問題

この試験の対策ガイド

基本情報技術者試験 対策ガイド

合格率・勉強法・参考書の選び方をまとめています

見る →
答えと解説を見る(先に解くのがおすすめ)

正解は エ

解説

ハッシュ法によるデータ検索の説明を選ぶ問題です。ハッシュ法は、データのキー値に特定のアルゴリズム(ハッシュ関数)を適用して得た値を格納アドレスとして使い、データを格納・検索する手法です。検索時もキーから同じ計算でアドレスを求めて直接アクセスできるため、理想的には(衝突がなければ)データ件数に関係なく1回の計算でアクセスでき、計算量はO(1)です。データ量が増えても検索時間がほぼ一定に保たれるため、「高速でスケーラビリティの高い」という記述が当てはまります。エが正解です。分散型データベースやKVS(キーバリューストア)、プログラム言語の連想配列(ハッシュテーブル)など、現代のシステムの基盤技術として広く使われています。なお、異なるキーから同じハッシュ値が生まれる「衝突(コリジョン)」への対処方法(チェイン法やオープンアドレス法)が設計上の重要ポイントになることも、関連知識として併せて押さえておきましょう。

なぜ他の選択肢は違うのか

選択肢 ア
キーワード検索のヒット率を高める同義語・類義語リストを用いて検索漏れを防ぐのは、シソーラス(類義語辞書)を使った検索技術の説明です。「コンピュータ」で検索したときに「計算機」もヒットさせるような、検索の網羅性を高める言語的な工夫であり、格納アドレスをキーから計算するハッシュ法とはアプローチがまったく異なります。
選択肢 イ
蓄積された膨大なデータから経営やマーケティングに有用な傾向、相関関係、パターンを導き出すのは、データマイニングの説明です。統計解析や機械学習を使って未知の知見を発見する分析技術であり、データを高速に探し出す「検索」の技術ではありません。「検索の仕組み」と「分析の手法」という目的の違いに着目すれば区別できます。
選択肢 ウ
データと処理を組み合わせたオブジェクトに認識や判断の機能を加え、利用者の検索要求の意図を理解する高度な検索技術という記述は、エージェント技術やセマンティック検索のような概念の説明です。ハッシュ法は意図の理解といった知的処理は一切行わず、キーから機械的に計算したアドレスへ直接アクセスするだけの、シンプルかつ高速な仕組みである点が対照的です。

解くときのポイント

ハッシュ法=キーをハッシュ関数で変換した値を格納アドレスに使う検索手法で、理想的にはO(1)。「アルゴリズムで変換した値をアドレスとして用いる」というフレーズが目印。