seegongsik
単語帳
データ

さがすのを はやく、インデックス

あつい ほんで ひとつの ことばを さがすと しましょう。さいしょの ページから さいごまで ぜんぶ よむと とても じかんが かかります。だから ほんの うしろには さくいんが あります。ことばと ページばんごうが かいてあり、その ページに すぐ ジャンプできます。データベースも おなじです。データが おおくなると さいしょから ぜんぶ みるのは おそすぎるので、インデックスという さくいんを まえもって つくります。

01

ほんの うしろには さくいんが あります

まえに データベースが
ほしい ぎょうを どう さがすか みました。
でも データが とても おおいと
さいしょから さいごまで みるのは おそい。
あつい ほんで ひとつの ことばを
さいしょの ページから さがすのと おなじです。
だから ほんの うしろには さくいんが あります。
ことばの よこに ページばんごうが かいてあり
その ページに すぐ ジャンプできます。

あつい ほんで ひとつの ことばを さがす
page 1
page 2
page 3
page 4
page 5さがす ことば
page 6
さくいん: ことば -> page 5
りょうほうを おして あるきすうを くらべて

ほんぶんを さいしょから みるのと さくいんで ジャンプするのを おして くらべてみて。なんかいで みつかる?

さくいんで ジャンプすると
ずっと すくない かいすうで みつかりました。
データベースの インデックスも
まさに この さくいんです。
データを はやく さがせるよう
まえもって つくった ちずなのです。
でも さくいんにも しゅるいが あります。
せいかくな あたいを さがすときと
はんいを さがすときが ちがうのです。

02

せいかくな あたいには ハッシュ インデックス

「キム」のように
たった ひとつの せいかくな あたいを さがしたいときが あります。
そんなときは ハッシュ インデックスが いい。
ハッシュは なまえを うけとり
すぐに ばしょばんごうを けいさんします。
だから ずらりと みる ひつようなく
その ばしょへ いっぱつで ジャンプします。
ロッカーばんごうを おぼえておいて
その とびらを あけるのと おなじです。

なまえ (せいかくな あたい)
ばしょの ます
0
1
2
3
4
なまえを おして ハッシュで ばしょを さがして

なまえを おすと ハッシュが ばしょばんごうを けいさんして その ますへ いっぱつで ジャンプします。

なまえ ひとつで すぐに
ばしょを みつけました。
ハッシュ インデックスは こんなに
せいかくな あたい さがしが はやい。
でも よわい てんが あります。
ハッシュは あたいを ちらばらせるので
「20さいから 30さいまで」のように
はんいで さがすのは にがてです。
そんなときは べつの インデックスが ひつよう。

03

はんいには ツリー インデックス

「20さいから 30さいまで」のように
はんいで さがしたいときが あります。
そんなときは ツリー インデックスが いい。
ツリー インデックスは あたいを
ちいさい ものから 大きい ものまで ならべます。
だから はじまりの あたいを みつければ
その よこへ ずっと つづけて
はんいの あたいを じゅんに みていけます。
じしょが あいうえおじゅんなのと にています。

ならんだ ツリー インデックス (ねんれい)
はんいの はじまりの あたいを おして

さがす はんいを おして きめて。ならんだ ツリー インデックスが はじまりの あたいを みつけて はんいを ずっと みます。

ならんでいるので
はんいが よこへ ずっと つづきました。
ハッシュは いってんを さがし、
ツリーは いちれつで ずっと みます。
だから なにを よく さがすかで
あう インデックスが ちがいます。
せいかくな あたいが おおければ ハッシュ、
はんいが おおければ ツリー。
でも インデックスは ただ ではない。

04

インデックスは ただ ではない

インデックスは いいことばかりでは ありません。
ひとつめ、ばしょを よけいに とります。
さくいんを べつに かいておくので
その ぶん くうかんが よけいに いります。
ふたつめ、データが かわると
インデックスも いっしょに なおします。
あたらしい ぎょうを いれたり けすと
さくいんも こうしんしないと あいません。
だから むやみに たくさん つくると そんです。

データ ひょう
Ann
Ben
Cho
インデックス (さくいん)
Ann#0
Ben#1
Cho#2
インデックスが つかう ばしょ: 3ます
ぎょうを いれたり けすと インデックスも かわります

ぎょうを いれたり けしてみて。データが かわる たびに インデックスも こうしんされ、つかう ばしょも ふえます。

データを かえる たびに
インデックスも ついて うごきました。
ばしょも だんだん よけいに とりました。
だから インデックスは
よく さがす あたいだけ えらんで つくります。
はやくなる とくと
くうかんと こうしんという コストを
てんびんに かけるのです。
うまく えらべば さがすのが ずっと はやくなります。

05

まとめて みましょう

ひとことに まとめると こうです。
インデックスは ほんの うしろの さくいんのように
はやく ジャンプさせてくれる ちずです。
ハッシュ インデックスは せいかくな あたい ひとつを
いっぱつで さがし、
ツリー インデックスは ならんでいるので
はんいを みるのに むいています。
ただし ばしょを よけいに つかい
データが かわると こうしんが ひつようです。

1. ほんの さくいん = はやく ジャンプする ちず
2. せいかくな あたいには ハッシュ インデックス
3. はんいには ならんだ ツリー インデックス
4. ただ ではない (ばしょ + こうしん)
ボタンを おして かなめを じゅんに ふりかえって

かなめを じゅんに おして ふりかえって。(ほんの さくいん → せいかくな あたいは ハッシュ → はんいは ツリー → ただ ではない)

これで インデックスが どう
さがすのを はやく するか わかりました。
データを はやく さがす ほうを みたので
つぎは データを あんぜんに
あつかう はなしへ いきます。
おおぜいが おなじ データを
いちどに さわると どうなる?
その むずかしい もんだいを
つぎの かいで いっしょに といてみよう。

一言でいうとデータが おおいと さいしょから ぜんぶ みるのは おそい。インデックスは ほんの うしろの さくいんのように、データベースが ほしい ばしょへ すぐ ジャンプできるよう まえもって つくった ちずです。しゅるいは ふたつ。ハッシュ インデックスは せいかくな あたい ひとつを いっぱつで さがします。ツリー インデックスは あたいが ならんでいるので はんいを みるのに むいています。ただし ただ ではない。インデックスは ばしょを よけいに とり、データが かわると インデックスも いっしょに こうしんします。それでも うまく つかえば さがすのが ずっと はやくなります。
データ
このページがお役に立ったなら支援する