mirror of
https://github.com/Vonng/ddia.git
synced 2025-01-05 15:30:06 +08:00
Update ch12.md
This commit is contained in:
parent
9e68549a46
commit
91eab7445e
2
ch12.md
2
ch12.md
@ -341,7 +341,7 @@ Unix和关系数据库以非常不同的哲学来处理信息管理问题。Unix
|
||||
|
||||
[^iii]: 假设一个有限的语料库,那么返回非空搜索结果的搜索查询集合是有限的。然而,它是与语料库中的术语数量呈指数关系,这仍是一个坏消息。
|
||||
|
||||
另一个选择是只为一组固定的最常见的查询预先计算搜索结果,以便它们可以快速地服务而不必去走索引。不常见的查询仍然可以通过索引来提供服务。这通常被称为常见查询的**缓存(cache)**,尽管我们也可以称之为**物化视图(materialized view)**,因为当新文档出现,且需要被包含在这些常见查询的搜索结果之中时,这些索引就需要更新。
|
||||
另一种选择是预先计算一组固定的最常见查询的搜索结果,以便可以快速提供它们而无需转到索引。不常见的查询仍然可以通过索引来提供服务。这通常被称为常见查询的**缓存(cache)**,尽管我们也可以称之为**物化视图(materialized view)**,因为当新文档出现,且需要被包含在这些常见查询的搜索结果之中时,这些索引就需要更新。
|
||||
|
||||
从这个例子中我们可以看到,索引不是写路径和读路径之间唯一可能的边界;缓存常见搜索结果也是可行的;而在少量文档上使用没有索引的类grep扫描也是可行的。由此来看,缓存,索引和物化视图的作用很简单:它们改变了读路径与写路径之间的边界。通过预先计算结果,从而允许我们在写路径上做更多的工作,以节省读路径上的工作量。
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user