2013-12-16 15 views
5

ハッシングとインデックス付けは、あらかじめ定義された数式でデータを分割するために使用します。しかし、私は両者の主な違いを理解することができません。ハッシングVSインデックス付け

ハッシングの場合と同様に、いくつかのキー値のペアに基づいてデータを分割しています。同様に、インデックス作成でも、あらかじめ定義された値でデータを分割しています。

ハッシングとインデックス作成の違いと、ハッシングやインデックス作成のどちらを使用するかを決める方法を教えてください。

+0

可能な複製: ely

答えて

8

ハッシングは、インデックスの特定の場合である:

Hashing vs. Indexing

インデックスはデータルックアップをスピードアップで意図分割のプロセスのための一般的な名称です。索引付けでは、フィールドまたはフィールドの組み合わせの値に基づいてデータ・セットをパーティション化できます。また、フィールドのデータまたはフィールドの組み合わせから計算されたハッシュ関数という関数の値に基づいてデータセットを分割することもできます。この特定の場合、インデックス付けはデータハッシュと呼ばれます。

+0

小さな入力ミスがあります。 UPS。 –

+0

@ Wazeryこれは修正されました。ありがとう! P.S.このようなものが見えるときに編集を提案することができます。このような編集は通常、かなり早く承認されます。 – dasblinkenlight

0

ウェブに関するいくつかの調査を行った:

インデックス作成とは何ですか?

インデックス付けは、複数のフィールドで複数のレコードをソートする方法です。テーブル内のフィールドにインデックスを作成すると、フィールド値を保持する別のデータ構造体と、関連するレコードへのポインタが作成されます。この索引構造はソートされ、バイナリ検索が実行されます。

ハッシュとは何ですか?

ハッシュは、文字列を、通常は短い固定長の値または元の文字列を表すキーに変換することです。ハッシングは、元の値を使用して検索するよりも短いハッシュキーを使用してアイテムを見つけるほうが速いため、データベース内のアイテムを索引付けおよび取得するために使用されます。

+1

これを私に思い出させます:http://stackoverflow.com/a/13472833/4632627 –

関連する問題