任何人都可以在数据库中解释“存储”与“索引”吗?

时间:2010-01-20 16:15:15

标签: sql mysql database search indexing

在搜索时,存储和索引字段的内容是什么? 具体来说,我说的是MySQL或SOLR。

有没有关于此的详尽文章,我做了一些没有运气的搜索!

由于

6 个答案:

答案 0 :(得分:4)

在数据库中存储信息只意味着将信息写入文件。

索引数据库涉及查看表中的数据并创建“索引”,然后当您想要检索存储的数据时,该索引用于在表中执行更有效的查找。

答案 1 :(得分:2)

来自Wikipedia

数据库索引是一种数据结构,它以提高写入速度和增加存储空间为代价提高数据库表上数据检索操作的速度。可以使用数据库表的一列或多列创建索引,为快速随机查找和有序记录的有效访问提供基础。存储索引所需的磁盘空间通常小于表所需的磁盘空间(因为索引通常只包含要根据表排列的关键字段,并排除表中的所有其他详细信息),从而产生将索引存储在内存中的可能性,以便数据太大而无法存储在内存中。

存储只是将数据放在表格中。

答案 2 :(得分:2)

存储与索引是SOLR的概念。

SOLR中,无法搜索或排序stored字段。它可以作为查询的结果进行检索,该查询包括对indexed字段的搜索。

相反,在MySQL中,您也可以对未编入索引的字段进行搜索和排序:这只会更慢,但仍然可能(与SOLR不同)

答案 3 :(得分:1)

存储数据只是将数据存储在某处,以便您以后可以检索它。索引的来源是有效地检索部分数据 Wikipedia很好地解释了这个想法。

答案 4 :(得分:0)

存储只是将数据保存到磁盘(或其他),以便数据库可以在以后按需检索它。

索引意味着创建一些单独的数据结构,以更快的方式优化数据的位置和检索,而不是简单地读取整个数据库(或整个表)并查看每个记录,直到数据库搜索算法找到你的内容要求它...通常数据库使用所谓的平衡树索引,它是二叉树概念的扩展。在google / wikipedia上查找 二叉树 ,以便更深入地了解其工作原理......

答案 5 :(得分:0)

数据

L1. This
L2. Is
L3. My Data

索引是

This -> L1
Is -> L2
My -> L3
Data -> L3

数据/索引类比也适用于书籍。