是什么散列和索引的区别?(What is the difference between hashin

2019-08-02 23:52发布

我在DBMS(可扩展,线性)以及有关在DBMS(基于次级键等疏,密,索引)索引研究散列,但我无法理解有什么区别散列和索引之间。 难道这两种技术一起使用,或只是要么使用? 我很困惑,因为两种技术的目的似乎是使我们能够快速检索数据,所以我觉得要么就足够了。

任何人都可以清楚的区别?

Answer 1:

什么是索引?

索引是整理了一些关于多个字段的记录的方式。 上创建一个表中的字段的索引创建另一种数据结构,其保持字段值,和指向它的指针涉及该记录。 然后,该指数结构进行排序,从而允许它执行二进制搜索。

什么是散列法?

散列是一个字符串的字符为表示原始字符串一个通常短固定长度值或键的转化。 散列用于索引和数据库检索项目,因为它是更快地找到使用短哈希键比使用原始值找到它的项目。

我想,这可能会清除您的疑问。



Answer 2:

哈希是排序索引:它可以被用来定位基于一个键的记录 - 但它不保留记录的任何命令。 基于散列,人们不能遍历到后续或前一个元素。 然而,这是,什么指数做(在数据库的背景下。)



Answer 3:

  • 散列不保证不同的值将散列到不同的地址。
  • 冲突是在有散列。
  • 散列中溢出的结果。
  • 无需访问索引结构来定位数据&然后读取数据库文件数据。
  • 有命令定义索引而不是散列。


Answer 4:

散列是高级搜索technique.ie大数据制作成小数据项,并存储在表中。 但是,索引和二分法查找谈到下的线性方式搜索。 和索引也用于进行索引(key)的多个字段的组合



文章来源: What is the difference between hashing and indexing?