さて、仕組みが分かったところで最初の質問に戻ろう。多い問い合わせとして「どうすれば検索結果に載るんですか?」あるいは「ホームページを作ったんですが、検索結果に出てきません。どうしてですか?」といった質問に対する回答だ。
仕組みから分かるようにサーチエンジンの一番最初はクロールするURLのリストを作るところから始まる。この最初の段階でクロールするリストに入っていないと、「クロールしない=インデクスに入らない=検索結果に出ない」ということになる。
ということはクロールするURLのリストに入ることが大切ということになる。仕組みを思い出して欲しいがクロールするURLは取ってきたHTML中にある新しいURLをどんどん追加して行ったものなので、新しいページがクロールするリストに入るには、
などしてクロールリストに追加される必要がある。
例外としてアンカーテキストと飛び先のURLを対応付けることによってインデクスを作成する方法をサーチエンジンが利用している場合には、クロールされなくても検索結果に出る。
例えばHTML中に
<a href="http://www.adidas.com/">adidas</a>
とある場合にアンカーテキストであるadidasと飛び先のURLであるhttp://www.adidas.com/を対応付けるのだ。こうすると例えクローラーがhttp://www.adidas.com/ をクロールしたことが無くても、"adidas"というクエリーに対して
http://www.adidas.com/ を返すことが出来る。
Googleでは過去にはこの手法を使ってインデクスを大きくしていたが、現在どうなっているかは不明である。
サーチエンジンはある過去の時点でのWWWのスナップショット
さて、そうすると新しくオープンしたページに対してサーチエンジンが対応するまでに時間がかかることになる。次のインデクスがいつ出来るのかといった情報は公開されないため、検索結果に変化がある度に新しく作った自分のページが入っているかどうかを確認する必要がある。
仕組み上、検索結果にこのようなタイムラグが生じるのは致し方ない。更新頻度の高いURLは頻繁にクロールするなどして出来るだけ新鮮なインデクス作りをしようと努力している。
初心者の中には、クエリーが入力されてから検索をしていると大きな誤解をしている方もいるが、そんなことを無いので注意していただきたい。
サーチエンジンと言うのはあくまでも過去のある時点でのWWWのスナップショットなのだ。
ユーザーが何を入力しようとインデクス自体には変更がない。つまりどんな言葉で検索しようとインデクスに入っていなければ絶対に出て来ないのだ。
その意味でサーチエンジンは完全に一方通行と言うことが出来る。ユーザーのフィードバックの方法は一切なし。ひたすらクエリーに対してインデクスをlook upするという処理を繰り返しているだけだ。
当初からユーザーのフィードバックが反映されないことに疑問をもっていたのだが、やはりまだまだサーチエンジンの仕組み自体が発展途上なのだろうと思う。この辺りについては再度、書きたいと思う。
-inoue
※このエントリは CNET Japan ブロガーにより投稿されたものです。シーネットネットワークスジャパン および CNET Japan 編集部の見解・意向を示すものではありません。
メンバー限定サービスをご利用いただく場合、このページの上部からログイン、またはCNET_ID登録(無料)をしてください。