首页 > 结构化存储中的Lazy索引和Eager索引是什么意思?

结构化存储中的Lazy索引和Eager索引是什么意思?

场景:在研究小米开放平台中的结构化存储功能。
文档:http://dev.xiaomi.com/doc/?p=1958
问题:遇到如下这样一段话,对其中的概念不是很理解。

主键 (Primary Key) - 必选,由一到多个表属性组成
所有其余属性按照主键顺序存储,根据主键读取/写入数据时,记1个单位的读/写配额
局部二级索引 (Local Secondary Index) - 可选,使用局部二级索引必须要定义实体组键, 由一个到多个表属性组成。索引分为索引分为lazy和eager两种类别:

  • Lazy 索引 - 此类型的索引不支持投影属性和唯一索引。写入时,消耗1个写配额。读取时,消耗 2个读配额
  • Eager 索引 - 此类型的索引可以支持唯一索引 (Unique Index),并且可以定义一组属性作为 投影(Projection),与索引存储在一起(可视为主记录中对应属性的一份拷贝,并且属性值保持强 一致)。索引写入时,会消耗1个单位的读配额和1个单位的写配额,如果是唯一索引,则需要消耗1个 额外的读配额。通过索引读取时,如果只需要读取索引中的属性或投影属性,则只消耗1个读配额。否则, 如果请求读取的属性需要从主记录中读取,则总共需要消耗2个读配额

具体问题:

  1. 什么是Lazy索引和Eager索引?
  2. 什么是Eager索引种可以定义一组属性作为 投影(Projection)?
【热门文章】
【热门文章】