百度は、なんであんなに速いんでしょうか?

http://baidu.jp/

【予想】
・検索サーバが全部SSDだ。
・DBが完全にメモリに乗っかっている。
・インデックス数が少ない
・テラビットイーサネットだ

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2008/02/22 13:35:02
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答14件)

id:verify No.1

回答回数20ベストアンサー獲得回数0

ポイント14pt

日本で誰も使ってないからでは。

やっぱこっちでしょ。↓

http://google.co.jp/

id:biz_tanaka

はい、次の方どうぞ。

2008/02/16 15:39:01
id:hagix No.2

回答回数6ベストアンサー獲得回数0

ポイント14pt

http://fnconf.blog98.fc2.com/blog-entry-59.html

他の検索エンジンに比べて精度が低いから。。。。と、勝手に思っていました。

id:biz_tanaka

うーん、精度が低い = 速い というのが単純なイコールではないような。

2008/02/16 15:40:02
id:yo-net No.3

回答回数266ベストアンサー獲得回数21

ポイント14pt

回答とずれていたらごめんなさい。

多分ユーザ数が少ないからだと思います。

さらに、付け加えると、分散サーバで日本のサーバはjpアドレスからのアクセスに限定しているから、

ユーザ数が少ないのと合いマッチして早いのでは。

CEOが開発した検索アルゴリズムも関係しているかもしれませんが、良くわかりません。

ちなみに自分が百度を知ったのは、はてなを退職して百度に転職した人のブログで日本進出をしりました。

http://baidu.jp/

id:biz_tanaka

ユーザ数が少ないってのはあるでしょうね。

ただ、システムを組んでみた方はわかると思うのですが、あれだけのレスポンススピードを実現するにはなにか工夫があるはず。

jpアドレスからのアクセスに限定しているから速い、というだけではちょっと論拠が弱いかもしれません。

2008/02/16 15:43:23
id:jagging No.4

回答回数11ベストアンサー獲得回数0

ポイント14pt

早いんですか?

早い・・・確かに早いですね。

だったら、

プログラマが優秀(または優秀な人が身軽に仕事が出来る)

サーバーを絞ってる(最適化されてる)

とかじゃないですか?


個人的には、早いのは当たり前なので、

より面白い(意外or望んでる)検索結果が出た方が嬉しいですね。

そういえば、

ニコニコ動画とかは

一月で100倍増になったアクセスを

サーバーを13台くらいで、チューニングのみで乗り切ったとかで、

技術凄いらしいです。

サイト運営では、

大手より、ベンチャーの方が、よっぽど効率の良いサイトが多いように思えます。

http://blog.nicovideo.jp/nicolumn/2008/01/000826.html

id:biz_tanaka

サーバのアーキテクチャや仕組みの秘密がわかったら楽しいなーと思うんですよね。

そしたらそれを参考にしたら、はてなみたいな他のWebサービスが劇的に速くなるかもしれないし。


> より面白い(意外or望んでる)検索結果が出た方が嬉しいですね。

現時点でGoogleやYahooよりも検索精度が劣っているのは、日本語検索のノウハウが基本的に足りていないからだと思います。これはある種仕方のないことで、(精度をあげるための努力が続けば)時間が解決するのかもしれません。

それを差し引いたとき、検索〜出力のスピードがここまで速いのはなぜかなー、と思いまして。

チューニングのみで増えたアクセスをさばききる、というのはエンジニアの腕の見せ所ですよね。

大手よりベンチャーの方がノウハウがある、というのはまさにその通りだと思います。

2008/02/16 15:54:35
id:turkey_hate No.5

回答回数18ベストアンサー獲得回数0

ポイント14pt

・広告が無い

日本版の百度は広告に関する処理(ReadもWriteも)が無いからでは?

→本家の百度(http://www.baidu.com/)は広告が出るのだけど、やっぱりそんなには速く無いような気が。

・インデックスが少ない

検索結果の件数もGoogleの方が一桁くらい多いですね。

あと、百度は国の政策で、内容によってインデックス化出来ない物が

あったりなかったり?

たとえば、天安も

・・・ん?

すいません、玄関に誰か来てるみたいなので、後で続きを書きmas

id:biz_tanaka

> ・広告が無い

たにかに。この影響は大きそうですね。

コンテンツマッチの必要がなければまったくもって表示は速くなるはず。

2008/02/17 10:57:43
id:KUROX No.6

回答回数3542ベストアンサー獲得回数140

ポイント14pt

(1)検索結果のキャッシュっぽいものをもって、ごまかしてそうな感じ

   同一キーワードで検索した場合に検索時間の差が激しすぎる

   Googleは毎回ほぼ同じなんですね。

(2)2バイトコード(漢字)を初めから想定した設計をおこなっていて

   その点で、有利な点がどこかにあるとか

http://q.hatena.ne.jp/answer

id:biz_tanaka

> 検索結果のキャッシュっぽいものをもって、ごまかしてそうな感じ

そう、画像検索で、個々の画像をぽろぽろ読み込むような感じが全くなく、一発ですぱっと全サムネイルが表示されるんですよね。(こちら側の回線が光の場合)これができるのは、あらかじめページがメモリ上にキャッシュされて、ディスクアクセスなしでレスポンス返せるからじゃないかな、と個人的には思っているのですが。


> 2バイトコード(漢字)を初めから想定した設計をおこなっていて

これがわからない。

baiduの外側の文字コードはUTF-8で、文字コードの変換なしに入出力した方がサーバ側の効率はよいような気がするんですよね。とすれば、検索DBもUTF-8でまるごと設計してしまった方が変換処理が入らない分速いような気が。ちがうかな。。。そもそもUTF-8のマルチバイトコードは3バイトじゃなかったでしたっけ。

2008/02/17 11:04:42
id:myusky No.7

回答回数18ベストアンサー獲得回数0

ポイント14pt

最初から中国語と限定してやってきたプログラムだから、

2バイトに強いという話がこちらに。

http://japan.cnet.com/interview/media/story/0,2000055959,2036716...

id:biz_tanaka

んー。

DBにシングルバイトのカラムとマルチバイトのカラムがあったとして、マルチバイト側の方が速くなる設計ってどんなんなんでしょうね。不思議。

2008/02/17 11:07:40
id:knaka20blue No.8

回答回数2ベストアンサー獲得回数0

ポイント14pt

(狭義な意味での検索エンジンとして)

GoogleやYahoo!との比較で考えると

>・インデックス数が少ない

はとても大きいと思います。

クエリに対してヒットするドキュメント数が少なければ

ドキュメント毎にスコアをつけてスコアの大きい順にソートするという

処理の時間が短くてすみますから。

(日本語のページに限れば1億ページもあれば99%以上のクエリに

100ページ以上を返すことは容易でしょう)

あとはヒットしたドキュメントに

スコアをつけるアルゴリズムが簡単というのがあると思います。

Googleのスコアリングアルゴリズムの複雑さはよく語られていることで

この辺を端折っているとレスポンスはかなり良くなると思います。

あとはアドワーズのようなクエリにマッチする広告を

検索する時間も省けてますね。

http://baidu.jp/

id:biz_tanaka

なるほど。

・インデックス数が少ない

・インデックス対象が日本語のページだ

・検索ロジックがGoogleやYahooと比べて単純だ

・広告マッチング処理がない

あと、サーバが日本にある、というのも大きいかも。

http://blog.livedoor.jp/dankogai/archives/50990005.html

でも、キャッシング機能をもった検索サーバを日本においてよかったんでしたっけ?

2008/02/17 11:37:42
id:knaka20blue No.9

回答回数2ベストアンサー獲得回数0

ポイント13pt

>でも、キャッシング機能をもった検索サーバを日本においてよかったんでしたっけ?

この辺は近く法律改正されるみたいですね。

http://www.mext.go.jp/b_menu/shingi/bunka/gijiroku/013/07100407/...

現実はクロールしたキャッシュを

国内に置いているサービスなんて山ほどあるわけですし...。

id:biz_tanaka

なるほど。納得です。

2008/02/17 17:15:05
id:hirokiea No.10

回答回数1ベストアンサー獲得回数0

ポイント13pt

結果ページのHTMLソースが軽いためじゃないですか。

DVDで検索してみたところ、baiduが20kb、googleが40kb、yahooが60kbでした。

ブラウザの表示って、回線やサーバーの性能が高くなった昨今だと、意外にボトルネックだったりしますよ。

http://baidu.jp/s?tn=baidujp&ie=utf-8&cl=3&ct=262144&wd=DVD

http://www.google.co.jp/search?hl=ja&q=dvd&btnG=Google+%E6%A4%9C...

http://search.yahoo.co.jp/search?p=dvd&ei=UTF-8&fr=top_ga1&x=wrt

id:biz_tanaka

お!それは気がつかなかったです。

たしかにこれは関係ありそうです。

あと、3社ともCSSとJavaScriptが外部ファイルとして切り出されていないのは、ファイル読み込みにかかるオーバーヘッドを削っているんですね。けっこう地道な工夫なんですね。

2008/02/18 00:00:11
id:quocard No.11

回答回数31ベストアンサー獲得回数2

ポイント13pt

広告がないというのが大きいかもしれませんが

 ・利用者が少ない

 ・検索をするデータベースがそれほど大きくない

というのがあるのではないでしょうか。

始まったばかりというわけではないですが、クロールして集めているデータの

量がgoogleなどより少ないから早いという見方も出来るかもしれません。

 またSSDやテラビットイーサを使用したとしても途中のネットワークがボトルネックになって

それほどの効果を発揮できるかどうかは疑問が残ります。

http://q.hatena.ne.jp/

id:biz_tanaka

やはり利用者数とDBの大きさが一番、と。

たしかにインデックスされている数がまるで少なそうな感じですね。

> またSSDやテラビットイーサを使用したとしても

テラビットイーサについては僕も同意見です。

メモリ展開するDB(ハッシュDBなど)はとても速く、現時点で大手系サイトでも実績があることから、メモリ的な速度でディスクっぽい使い方ができるSSDによるサーバ構成というのはこれからよく出てくるネタになるのかなーなんて勝手に予想しています。

お答えとは関係ないですが、マルチバイトが得意で後発でPC版のクロールもこれからであるならば、どうせなら最初からモバイルで勝負すればいいのにねぇ、と思いました。いまから既存サービスのクロール網羅度を追い越すのは難しいでしょうからね。

2008/02/19 00:13:59
id:KUROX No.12

回答回数3542ベストアンサー獲得回数140

ポイント13pt

こんばんは

DBにシングルバイトのカラムとマルチバイトのカラムがあったとして、マルチバイト側の方が
速くなる設計ってどんなんなんでしょうね。不思議。

http://japan.cnet.com/blog/tamon/2006/09/15/googleoraclebig_6721...

データの持ち方とかそういう基本的なものではないでしょうか?

あと、表示はUTF-8だとしても、実際に持っているデータはどういうコードか不明です。

id:biz_tanaka

なるほど。ありがとうございます。

2008/02/21 01:48:27
id:RIKKUN No.13

回答回数51ベストアンサー獲得回数1

ポイント13pt

http://www.nextglobaljungle.com/2008/01/fc2.html

アダルトフィルタがデフォルトでOFFだから、不要なフィルタリングコストの分速いとか・・・。

id:biz_tanaka

ああ、なるほど。

それもありますね。

しっかし、すんごい画像がヒットしますよね。なんだこりゃ。

2008/02/21 13:19:38
id:yukimasa_2k No.14

回答回数37ベストアンサー獲得回数0

ポイント13pt

憶測&上の方々もおっしゃっていますが、アダルトフィルターの有無が一番大きいのではないでしょうか。

文字だけを見て除外するにしても、するとしないでは大違いですし…。

↓ダミーです

http://google.jp/

id:biz_tanaka

ありがとうございます。

アダルトフィルター、こっそり非合法なやつを販売している業者がつかまっちゃう原因になっちゃうかもですね。

2008/02/22 11:28:33
  • id:biz_tanaka
    biz_tanaka 2008/02/16 15:56:09
    おもしろい回答もおまちしてまーす。

  • id:linsey
    確かに早いですね。なんか予め検索結果が用意されているかのような。

    別にソースが在るわけでも無い憶測&予想なので、コメ欄にでも。
    1. 日本に進出したばかりで検索対象となるサイトが少ない。(つまりインデックス件数が少ない、同じ予想です)
    yahooとかなら、yahooに登録されていないサイトでも表示されるんでしたっけ?それが無いとか。
    こう、システムが高速だから~なのではなく、システムが日本語に対応仕切れていないから~、結果的に早くなってるような。
    これは、いくつかの単語を検索してみて、その検索結果の表示数を比べてみて感じた結果です。

    2. 検索結果の表示ページが簡素化されている。
    検索自体はどの検索サイトでもさほど大差が無い(インデックス数が少ない分百度が早い)と考えると、
    後は表示速度、つまり検索結果のページの読み込み速度が速いのでは。
    勿論画像等はキャッシュされるので、1回目の読み込みで保存されるかと思うので、ちょっと考えにくいと思いますが。
    (これは、検索にかかった時間ってのが検索結果のところに表示されると思うんですが、それがyahooも百度も同じ時間くらいなのに百度のほうが表示速度が速かったので)
    検索にかかった時間が記録された⇒(なんかある)⇒表示
    この中間の部分になんかあるのかなーと。


    DBがどうとか、検索アルゴリズムがどうとか、結果の転送がどうとかは全く分からないです。
    参考にならない意見ですんませんー。

  • id:wens31
    ユーザーが少ないとの指摘が上であったのでhttp://www.baidu.com/のほうでいろいろ検索してみましたが、確かにこちらだと表示されている速度は百度のほうが速いものの描写込みの体感速度はgoogleと大差ないです。

    いくつか検索してみました。
    <table><tr><td>「検索語句」</td><td>baidu.com</td><td>google.com</td><td>baidu.jp</td></tr>
    <tr><td>検索速度</td><td>17篇,用?0.210秒</td><td>約 1,150,000 件中 (0.73 秒)</td><td>約7,270件、0.128秒</td></tr>
    <tr><td>hatena</td><td>?357,000篇,用?0.059秒</td><td>約 3,200,000 件中 (0.33 秒)</td><td>約2,310,000件、0.032秒</td></tr>
    <tr><td>はてな</td><td>?357,000篇,用?0.059秒</td><td>約 3,130,000 件中 (0.26 秒)</td><td>約6,780,000件、0.102秒</td></tr></table>
    んー百度のほうがインデックス数が少ないから速いのかと思いきやそうでない単語もあるのですね。なんとなく総インデックス数はgoogleのが多そうな感じはしますが。

    あと考えられるのは百度のサーバーは日本にあるということでしょうか?表示されている時間がサーバーでの処理時間だとしたら全く関係のない話ですが。

    結局結論は出せそうにないのでコメント欄にて失礼します。
  • id:cubase
    これは酷い百度の広告だな。
  • id:puni-mo
    ただ単にユーザーが少ないだけなんじゃ。。。
  • id:KUROX
    コメントに書くつもりが、間違ってしまいました。
  • id:biz_tanaka
    biz_tanaka 2008/02/21 13:22:33
    んーでもなんでこんなに画像の出力が速いんだろう。不思議だ。

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません