问题标签 [azure-search-.net-sdk]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1141 浏览

azure - 合并操作上未设置 Azure 搜索 SDK 空字段

我正在使用 Microsoft.Azure.Search 3.0.1 版,

我正在尝试以下操作:

这不是设置ApprovedOn为空。它忽略它。如果我设置一个非空值,它会设置它。

根据此处的文档,合并操作将字段更新为空。事实上,如果我用 JSON 手动发出这个 Http post 请求,这是真的。但是 SDK 不会将字段更新为 null。我错过了什么?

0 投票
1 回答
210 浏览

c# - Azure SuggestAsync 映射到 POCO

我正在使用 Azure search sdk 3.0.1,语法类似于下面,其中 T 是 POCO 对象,我希望返回 List

这给了我 DocumentSuggestResults,我没有在 azure sdk 中看到任何可以直接给我 Ienumerable 或将此 DocumentSuggestResults 转换为 Ienumerable 的示例或方法。有没有简单的方法可以做到这一点?或者我需要自己循环解压这个对象并自己创建一个 Ienumerable?

0 投票
0 回答
63 浏览

azure - 如何设置 DataChangePolicy Azure search sdk 3.0.3

我已启用更改策略我的数据库

在天蓝色索引方面,我在下面使用 Datasource.AzureSql

当我在此表中插入新行时,它似乎不会在 azure 搜索端自动更新索引。添加新行后,我几乎必须运行索引作业。我如何跟踪或调试我做错了什么?

我在 sdk 3.0.3 中使用 azure sql 和 azure search

数据源

0 投票
2 回答
1098 浏览

azure - 通过 azure search 查询 JSON Blob 存储

我需要查询存储在 Azure blob 存储中的 JSON 数据,以进行过滤操作(对数据类型 text、data 和 int)、分页(即类似于 skip 和 take 的功能)。

我的 JSON 结构的问题是没有特定格式的 JSON 数据(键/值对)并且是动态的。因此,一个 JSOn 结果数据的键/值对可能与另一个 JSOn 结果数据不同。

Azure 搜索是否可以帮助在此类动态 JSOn 数据上构建索引,以便可以查询相同的数据,或者是否有其他首选方式?

0 投票
1 回答
1210 浏览

c# - 将 AzureSearch SDK 与 30-40 ISearchIndexClients 的静态字典一起使用的含义

我有一个 ASP.NET Web 应用程序,它在 5-6 个搜索服务中使用 30-40 个不同的搜索索引(各种客户端处于不同的定价层)。

目前,我正在编组一个ISearchServiceClient的新实例,然后是根据进行调用的客户端所需的特定索引的适当ISearchIndexClient实例。

为了提高性能,我正在考虑在应用程序启动时编组所有ISearchIndexClients并将它们放入 Dictionary 对象中:

以便可以直接从静态字典中调用任何特定索引并像这样使用:

我希望这将加快查询和索引更新时间,尤其是在“热”索引上。我担心这可能会引入内存泄漏、性能问题和其他未知数。

我没有看到任何使用静态可用的SearchServiceClientSearchIndexClient的示例,所以我对这种方法的前进有点不安。我对社区的问题是:

  1. 我的计划合理吗?
  2. 它真的会提高性能吗?
  3. 有什么缺点或影响(如果有的话?)
  4. 如果索引的数量随着时间的推移而增加(例如增加到 60-70),那么我会开始看到缺点吗?
  5. 将SearchServiceClients编组到字典中并根据需要从那里连接到适当的SearchIndexClient是否更有意义,如下所示:

    /li>
0 投票
1 回答
226 浏览

c# - Azure 搜索的文档设计

我发帖是想看看是否有人有解决方案,或者可以提供一些关于建模某些数据的指导,以便在天蓝色搜索中使用。

问题域

我目前正在使用 DocumentDB 对一些我想搜索的数据进行建模。我的文件,我现在称之为“实体 A”,看起来像:

关系:标签 0...n 实体 A 和位置 0...n 实体 A

展平实体 A 并为标签的名称、描述和构面设置简单的索引和查询很好,而且效果很好。

问题在于尝试将位置添加到索引中。实际上,我想要搜索的内容(用自然语言)是:对于给定的术语,找到与 x 开始日期和 y 结束日期重叠的坐标附近的所有实体

从我可以在网上找到的内容 - 只有当它们变成字符串时,才能使位置变平。

https://blogs.msdn.microsoft.com/kaevans/2015/03/09/indexing-documentdb-with-azure-seach/ https://docs.microsoft.com/en-us/azure/search/search-如何索引-json-blob

这似乎失去了执行地理距离和日期范围查询的能力。

当前的想法

将实体 A 文档拆分为两个集合

新的 A 实体文件:

和多个位置实体

问题:

有两个索引是否更好——一个用于新实体 A,一个用于位置,然后加入结果?

我认为这是多租户搜索 https://docs.microsoft.com/en-us/azure/search/search-modeling-multitenant-saas-applications

有谁知道实现这个的例子?

优点

  • 认为它会工作

缺点

  • 每个查询都需要两次搜索命中,然后合并结果(这可能是理想的,也可能不是理想的)。

或者

最好完全“反转”实体 A 和位置实体,即类似

优点

  • 已经很平坦了,所以应该很容易索引和查询
  • 一次搜索命中,没有合并

缺点

  • 对于名称、描述、标签等,如果它们发生变化,则需要多次更新。
  • 如果日期跨越多个开始和结束日期,将获得同一“实体 A”的多个结果

或者

还有其他选择吗?

谢谢,如果需要,我很乐意澄清

0 投票
1 回答
350 浏览

azure-cognitive-search - 过滤构面值列表

我的索引中有一个“关键字”字段,它是 Facetable,类型为 Collection(Edm.String)。

在我的 UI 中,我显示了该字段的一个方面,它返回前 10 个关键字。不同关键字值的总数可能有数百个。所以我希望用户能够输入一个术语,并返回包含该术语的前 10 个方面值。所以这是一种过滤字段的构面值列表。

Azure 搜索 API 目前可以实现这一点吗?

0 投票
1 回答
57 浏览

azure-cognitive-search - 根据 AzureSearch 中的特定参数对搜索结果进行优先级排序。

我在 AzureSearch 上有一个与此类似的索引:

这里title是帖子的标题及其可搜索的文本。followers包含关注该特定帖子的用户的用户 ID。

我正在userId从会话中获取当前登录信息。现在,当用户进行一些文本搜索时,我想在当前用户关注的顶部显示这些帖子。

请判断这是否可以在 AzureSearch 中使用 ScoringProfiles 或其他任何方法实现?

0 投票
1 回答
123 浏览

azure-cognitive-search - 用于 Blob 存储的 Azure 搜索 SDK - 删除文件

我创建了一个应用程序,它列出了 Azure 存储容器中的所有文档,并让用户标记要删除的特定文件。

这是一个 Azure 搜索应用程序,因此该过程是将“已删除”元数据属性添加到所选文件,运行索引器以从索引中删除该信息,然后物理删除文件。

这是该过程的代码:

一切正常,但前提是我在 DeleteFlagged() 调用上设置断点,有效地强制在运行索引器和删除文件之间产生延迟。

没有暂停,索引器返回成功,我删除了文件,但文件内容尚未从索引中删除 - 它们仍显示在搜索结果中(文件已被物理删除)。

在删除之前我还需要检查其他内容吗?

0 投票
1 回答
1610 浏览

c# - 如何在 Azure 搜索中基于字段进行搜索?

我正在使用 azure 搜索,并且我有一个控制台应用程序,其代码如下,运行良好。

目前它正在搜索带有“智能”一词的文本。这是直截了当的,我需要的是表中有几个字段,我想根据 feild 进行搜索。

例如让我有两个字段 1)Title 2)SoldDate

我必须编写代码来查找标题为“john”且销售日期<当前日期的项目。

我应该怎么做才能做到这一点?