你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
在 Azure 中选择搜索数据存储
本文对 Azure 中用于搜索数据存储的技术选择进行了比较。 搜索数据存储用于创建和存储专用索引,以便对自由格式文本执行搜索。 编制了索引的文本可以驻留在单独的数据存储中,例如 blob 存储。 应用程序将查询提交到搜索数据存储,结果是匹配的文档的列表。 有关此方案的详细信息,请参阅为搜索处理自由格式文本。
在选择搜索数据存储时有哪些选项?
在 Azure 中,以下所有数据存储都将通过提供搜索索引来满足对自由格式文本数据的核心搜索要求:
关键选择条件
针对搜索方案,通过回答以下问题开始选择合适的满足需求的搜索数据存储:
你希望使用托管服务还是由你管理自己的服务器?
是否可以在设计时指定索引架构? 如果不可以,请选择一个支持可更新架构的选项。
只需要为全文搜索使用索引,还是也需要快速聚合数字数据和其他分析? 如果需要超出全文搜索的功能,请考虑使用支持其他分析的选项。
是否需要一个支持日志收集、聚合及已索引数据可视化且用于 Log Analytics 的搜索索引? 如果需要,请考虑使用 Elasticsearch,它是 Log Analytics 堆栈的一部分。
是否需要为常见文档格式(例如 PDF、Word、PowerPoint 和 Excel)的数据编制索引? 如果是,请选择一个提供文档索引器的选项。
数据库是否有特定的安全需求? 如果是,请考虑使用下面列出的安全功能。
功能矩阵
以下各表汇总了功能上的关键差异。
常规功能
功能 | 认知搜索 | Elasticsearch | SQL 数据库 |
---|---|---|---|
是托管服务 | 是 | No | 是 |
REST API | 是 | 是 | 否 |
可编程性 | .NET、Java、Python、JavaScript | Java | T-SQL |
常见文件类型(PDF、DOCX、TXT、等等)的文档索引器 | 是 | 否 | 否 |
可管理性功能
功能 | 认知搜索 | Elasticsearch | SQL 数据库 |
---|---|---|---|
可更新架构 | 是 | 是 | 是 |
支持横向扩展 | 是 | 是 | 否 |
分析工作负荷功能
功能 | 认知搜索 | Elasticsearch | SQL 数据库 |
---|---|---|---|
支持超出全文搜索的分析 | 否 | 是 | 是 |
Log Analytics 堆栈的一部分 | 否 | 是 (ELK) | 否 |
支持语义搜索 | 是(仅限查找类似文档) | 是 | 是 |
安全功能
功能 | 认知搜索 | Elasticsearch | SQL 数据库 |
---|---|---|---|
行级别安全性 | 部分(要求应用程序查询按组 ID 进行筛选) | 部分(要求应用程序查询按组 ID 进行筛选) | 是 |
透明数据加密 | 否 | No | 是 |
限制访问,仅限特定 IP 地址进行访问 | 是 | 是 | 是 |
限制访问,仅允许访问虚拟网络 | 是 | 是 | 是 |
Active Directory 身份验证(集成身份验证) | 否 | No | 是 |
作者
本文由 Microsoft 维护, 它最初是由以下贡献者撰写的。
主要作者:
- Zoiner Tejada | CEO 兼架构师