2017-10-20 130 views
0

Azure DocumentDB .NET SDK文档查询API提供了按精度降低顺序的选项,但确切的预期效果仍然不明确。该documentation states只:FeedOptions.EnableLowPrecisionOrderBy的效果是什么

获取或设置以使由天青DocumentDB数据库服务精度低的顺序选择。

ORDER BY-clause documentation不说一个关于取决于订购行为字FeedOptions或结果被责令有时不同于查询请求。

  • 上述选项实际上做了什么?
  • 使用“低精度”时我们可以期待什么精度?
  • 除了“低精度”之外,我们还能断言什么?

回答

1

Azure Cosmos DB支持改变索引的精度以减少索引的存储空间(默认为全精度)。例如,数字精度为5,该服务将索引数字的前5个字节。

默认情况下,不允许对精度较低的属性进行排序。但是您可以选择通过设置EnableLowPrecisionOrderBy来执行ORDER BY。假设您选择5的数字精度(对于8字节数字)。查询结果将按照该数字的最高有效5个字节的顺序排列,但保证其余3个字节没有顺序。此选项可让您在不需要完全精确索引的情况下执行快速订购,例如,在执行临时数据探索时。

对于大多数使用情况,您应该使用默认精度,而不必依赖较低的精度顺序。

+0

有意义,但是当通过非索引属性进行排序时(特设展开)怎么办?它会默认为安全的全精度搜索(忽略选项)还是更快的0-精细搜索(忽略顺序)? –

+0

我们不支持对非索引属性进行排序。你会得到一个错误,该路径必须被编入索引。 –

相关问题