-
検索エンジンは非常に発展してきましたが、主に次のような多くの技術的課題に依然として直面しています。
1. ページのクローリングは高速かつ包括的である必要がある
インターネットでは、毎日、多くの人が新しいコンテンツを公開したり、古いコンテンツを更新したりしていることがわかっています。検索エンジンは、この膨大な情報の中からユーザーの検索意図に最も適した Web ページをクロールします。既存の情報量が膨大であり、情報量が毎秒幾何級数的に増加する中、検索エンジンのプログラムの更新には、特に誕生したばかりの場合には多大な時間がかかります。このサイクルは数か月ごとに更新される場合があります。数か月間にどれだけの Web ページが更新され、新しいページが作成されるでしょうか。このような検索結果は遅れる傾向があります。最良の検索結果を返すために、検索スパイダーは可能な限り包括的な Web ページをクロールする必要があり、そのためには検索エンジンが多くの技術的問題を解決する必要があります。これは、同社が直面する主な課題でもあります。
2. データの大容量ストレージ
インターネット上の情報は想像を絶するほど膨大で、検索エンジンがこれらのページをクロールした後は、それらの情報を特定のデータ形式で保存する必要があり、そのデータ構造には合理的なデータが必要です。非常に高い拡張性。データの書き込み速度は速くなければならず、アクセス速度も十分に速い必要があります。検索エンジンは、ページ自体に大量の情報を保存するだけでなく、インデックス付けと並べ替えを適切に行うために、ページ間のリンク関係、ページ上の履歴データ、および大量のインデックス情報も保存する必要があります。これらのデータの量は非常に膨大です。このような大規模データの保存と読み取りには、確かに多くの技術的な課題があります。
3. インデックス処理は高速かつ効果的である必要があり、スケーラブルである必要があります。
検索エンジンは、ページ データをクロールして保存した後、多くのページのインデックスを作成する必要もあります。例えば、ページ間のリンク関係の計算、順方向インデックス、逆方向インデックスなど。たとえば、Google の PR 計算などがあります。検索エンジンは検索結果を迅速に返すために多くのインデックス作成作業を実行する必要があり、さらにインデックス作成プロセス中に大量の新しいページが生成されるため、検索エンジンのインデックス処理プログラムが必要になります。優れた拡張性。
4. クエリ処理は高速かつ正確です
これまでのステップはすべて検索エンジンのバックグラウンド プログラムで実行され、クエリ ステージはユーザーが結果を確認できるステップです。検索エンジンの検索ボックスにキーワードを入力して「検索」をクリックすると、多くの場合、検索エンジンは 1 秒以内に結果を返します。しかし、検索エンジンにとっては、実際には非常に複雑です。プロセス。多くのアルゴリズムが関係しています。基本的な条件を満たす Web ページの中から適切なページを 1 秒以内にすばやく見つけて、検索エンジンの上位に表示する必要があります。 Baidu は最大 76 ページの結果を表示でき、Google はもう少し多く、最大 100 ページの結果を表示できることがわかっています。
記事出典: http://www.suptb.cn/転載の際は出典を明記してください、よろしくお願いします
danieldu2008 の貢献に感謝します