***すれ立てるまでもない質問はここで 第41刷***
■ このスレッドは過去ログ倉庫に格納されています
0494デフォルトの名無しさん
NGNGデータ検索を高速化させる方法はいろいろあるけど、
「インデックス」というデータがどこに存在するかという情報を実際のデータの情報と
別に記録させる方法がある。まぁ、本の巻末にある索引と同じもんだ。
インデックスの中身は(本当に)簡単に言うと
対象のデータのある項目(コード番号等)を指定し、その指定した項目を
(昇順とか降順で)ソートし、各指定項目のそれぞれのデータには
どのページに書かれてあるかというページ情報が記録されている。
検索時にDBエンジンは最初にその索引を読みに行って、
索引はソートされているから、もちろん素早く検索でき、対象の情報がどのページに
書かれてあるかを見て、その本文のページの対象のデータを引っ張ってくるというしかけ。
もちろんインデックス内だけの情報で足りれば、インデックス内のデータだけを返すこともある。
データ更新時にはもちろんインデックス情報も書き換えなければいけないため、
インデックスが設定されている情報に更新させる場合、インデックスが設定されていない
情報よりも更新が遅くなる欠点もある。
少量のデータ更新ならそれほどでもないけど、バッチ処理等で大量のデータを更新させる
場合なんかは、一回インデックスを削除して更新後に再構築させるけどね。
■ このスレッドは過去ログ倉庫に格納されています