Azure 搜索与 Azure DocumentDB
Azure Search vs Azure DocumentDB
我知道之前有人问过这个问题,但我找到的答案没有解决我的问题。
我们在需要分析文本的场景和只对静态数据应用筛选器的场景中都使用了 Azure 搜索。即,如果您在 Azure 搜索中有一个仅包含类别和价格的产品详细信息存根,则用户可以在特定价格范围内找到特定类别,而无需进行任何文本分析。对于这种情况,DocumentDB 更快还是 Azure Search。
如果需要分面,DocumentDB 是否也提供与 Azure 搜索分面一样高效的工具(分面或分组依据)?
是否有任何方法可以访问在 Azure 搜索中编入索引的唯一术语。例如,如果英国伦敦被索引为伦敦和英格兰,我们可以查找索引并获得唯一的术语伦敦和英格兰。
此外,我们能否将任何元数据附加到术语中,以便我们可以识别术语 London 是一个城市,而 England 是一个国家/地区的名称。
非常感谢
一般来说,如果您只需要制定结构化查询,Cosmos DB(DocumentDB 的演变)是一个自然的选择。它在一致性模型方面具有更大的灵活性(如果您想要,这将使您的应用程序更容易,例如,立即读取您自己的写入),不需要模式,具有更灵活的查询等(即,它是通用目的数据库而不是像搜索引擎那样的特定领域的数据库)
如果您同时需要结构化查询和搜索式查询,那么 Azure 搜索通常可以同时处理这两种查询。如果你的应用程序可以容忍 Azure 搜索的较弱一致性模型,并且你不需要任何可以由 Cosmos DB 表达但无法在 Azure 搜索中表达的查询,则可以将 Azure 搜索用于此工作负载的两个方面。
If faceting is required, does DocumentDB also offer that facility
Cosmos DB 确实支持聚合,您可以在此处阅读更多相关信息:
https://azure.microsoft.com/en-us/blog/planet-scale-aggregates-with-azure-documentdb/?v=17.23h
除非您有巨大的 data/query 卷,否则性能更多地取决于您提供了多少容量,而不是仅取决于您选择的服务所固有的东西。也就是说,Cosmos DB 提供严格的读写延迟 SLA。
Is there any way of accessing the unique terms indexed in Azure Search
这似乎是一个不同的话题,如果您需要更具体的信息,也许可以开始另一个问题。简短版本是无法访问实际术语词典。如果您需要知道存在哪一组术语,有时您可以通过将您关心的所有术语(可能是总数的一个子集)存储在每个文档的 Collection(String) 字段中,然后对其进行分面来实现。
我知道之前有人问过这个问题,但我找到的答案没有解决我的问题。
我们在需要分析文本的场景和只对静态数据应用筛选器的场景中都使用了 Azure 搜索。即,如果您在 Azure 搜索中有一个仅包含类别和价格的产品详细信息存根,则用户可以在特定价格范围内找到特定类别,而无需进行任何文本分析。对于这种情况,DocumentDB 更快还是 Azure Search。
如果需要分面,DocumentDB 是否也提供与 Azure 搜索分面一样高效的工具(分面或分组依据)?
是否有任何方法可以访问在 Azure 搜索中编入索引的唯一术语。例如,如果英国伦敦被索引为伦敦和英格兰,我们可以查找索引并获得唯一的术语伦敦和英格兰。
此外,我们能否将任何元数据附加到术语中,以便我们可以识别术语 London 是一个城市,而 England 是一个国家/地区的名称。
非常感谢
一般来说,如果您只需要制定结构化查询,Cosmos DB(DocumentDB 的演变)是一个自然的选择。它在一致性模型方面具有更大的灵活性(如果您想要,这将使您的应用程序更容易,例如,立即读取您自己的写入),不需要模式,具有更灵活的查询等(即,它是通用目的数据库而不是像搜索引擎那样的特定领域的数据库)
如果您同时需要结构化查询和搜索式查询,那么 Azure 搜索通常可以同时处理这两种查询。如果你的应用程序可以容忍 Azure 搜索的较弱一致性模型,并且你不需要任何可以由 Cosmos DB 表达但无法在 Azure 搜索中表达的查询,则可以将 Azure 搜索用于此工作负载的两个方面。
If faceting is required, does DocumentDB also offer that facility
Cosmos DB 确实支持聚合,您可以在此处阅读更多相关信息: https://azure.microsoft.com/en-us/blog/planet-scale-aggregates-with-azure-documentdb/?v=17.23h
除非您有巨大的 data/query 卷,否则性能更多地取决于您提供了多少容量,而不是仅取决于您选择的服务所固有的东西。也就是说,Cosmos DB 提供严格的读写延迟 SLA。
Is there any way of accessing the unique terms indexed in Azure Search
这似乎是一个不同的话题,如果您需要更具体的信息,也许可以开始另一个问题。简短版本是无法访问实际术语词典。如果您需要知道存在哪一组术语,有时您可以通过将您关心的所有术语(可能是总数的一个子集)存储在每个文档的 Collection(String) 字段中,然后对其进行分面来实现。