问题标签 [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.
azure - 合并操作上未设置 Azure 搜索 SDK 空字段
我正在使用 Microsoft.Azure.Search 3.0.1 版,
我正在尝试以下操作:
这不是设置ApprovedOn
为空。它忽略它。如果我设置一个非空值,它会设置它。
根据此处的文档,合并操作将字段更新为空。事实上,如果我用 JSON 手动发出这个 Http post 请求,这是真的。但是 SDK 不会将字段更新为 null。我错过了什么?
c# - Azure SuggestAsync 映射到 POCO
我正在使用 Azure search sdk 3.0.1,语法类似于下面,其中 T 是 POCO 对象,我希望返回 List
这给了我 DocumentSuggestResults,我没有在 azure sdk 中看到任何可以直接给我 Ienumerable 或将此 DocumentSuggestResults 转换为 Ienumerable 的示例或方法。有没有简单的方法可以做到这一点?或者我需要自己循环解压这个对象并自己创建一个 Ienumerable?
azure - 如何设置 DataChangePolicy Azure search sdk 3.0.3
我已启用更改策略我的数据库
在天蓝色索引方面,我在下面使用 Datasource.AzureSql
当我在此表中插入新行时,它似乎不会在 azure 搜索端自动更新索引。添加新行后,我几乎必须运行索引作业。我如何跟踪或调试我做错了什么?
我在 sdk 3.0.3 中使用 azure sql 和 azure search
数据源
azure - 通过 azure search 查询 JSON Blob 存储
我需要查询存储在 Azure blob 存储中的 JSON 数据,以进行过滤操作(对数据类型 text、data 和 int)、分页(即类似于 skip 和 take 的功能)。
我的 JSON 结构的问题是没有特定格式的 JSON 数据(键/值对)并且是动态的。因此,一个 JSOn 结果数据的键/值对可能与另一个 JSOn 结果数据不同。
Azure 搜索是否可以帮助在此类动态 JSOn 数据上构建索引,以便可以查询相同的数据,或者是否有其他首选方式?
c# - 将 AzureSearch SDK 与 30-40 ISearchIndexClients 的静态字典一起使用的含义
我有一个 ASP.NET Web 应用程序,它在 5-6 个搜索服务中使用 30-40 个不同的搜索索引(各种客户端处于不同的定价层)。
目前,我正在编组一个ISearchServiceClient的新实例,然后是根据进行调用的客户端所需的特定索引的适当ISearchIndexClient实例。
为了提高性能,我正在考虑在应用程序启动时编组所有ISearchIndexClients并将它们放入 Dictionary 对象中:
以便可以直接从静态字典中调用任何特定索引并像这样使用:
我希望这将加快查询和索引更新时间,尤其是在“热”索引上。我担心这可能会引入内存泄漏、性能问题和其他未知数。
我没有看到任何使用静态可用的SearchServiceClient或SearchIndexClient的示例,所以我对这种方法的前进有点不安。我对社区的问题是:
- 我的计划合理吗?
- 它真的会提高性能吗?
- 有什么缺点或影响(如果有的话?)
- 如果索引的数量随着时间的推移而增加(例如增加到 60-70),那么我会开始看到缺点吗?
将SearchServiceClients编组到字典中并根据需要从那里连接到适当的SearchIndexClient是否更有意义,如下所示:
/li>
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”的多个结果
或者
还有其他选择吗?
谢谢,如果需要,我很乐意澄清
azure-cognitive-search - 过滤构面值列表
我的索引中有一个“关键字”字段,它是 Facetable,类型为 Collection(Edm.String)。
在我的 UI 中,我显示了该字段的一个方面,它返回前 10 个关键字。不同关键字值的总数可能有数百个。所以我希望用户能够输入一个术语,并返回包含该术语的前 10 个方面值。所以这是一种过滤字段的构面值列表。
Azure 搜索 API 目前可以实现这一点吗?
azure-cognitive-search - 根据 AzureSearch 中的特定参数对搜索结果进行优先级排序。
我在 AzureSearch 上有一个与此类似的索引:
这里title
是帖子的标题及其可搜索的文本。followers
包含关注该特定帖子的用户的用户 ID。
我正在userId
从会话中获取当前登录信息。现在,当用户进行一些文本搜索时,我想在当前用户关注的顶部显示这些帖子。
请判断这是否可以在 AzureSearch 中使用 ScoringProfiles 或其他任何方法实现?
azure-cognitive-search - 用于 Blob 存储的 Azure 搜索 SDK - 删除文件
我创建了一个应用程序,它列出了 Azure 存储容器中的所有文档,并让用户标记要删除的特定文件。
这是一个 Azure 搜索应用程序,因此该过程是将“已删除”元数据属性添加到所选文件,运行索引器以从索引中删除该信息,然后物理删除文件。
这是该过程的代码:
一切正常,但前提是我在 DeleteFlagged() 调用上设置断点,有效地强制在运行索引器和删除文件之间产生延迟。
没有暂停,索引器返回成功,我删除了文件,但文件内容尚未从索引中删除 - 它们仍显示在搜索结果中(文件已被物理删除)。
在删除之前我还需要检查其他内容吗?
c# - 如何在 Azure 搜索中基于字段进行搜索?
我正在使用 azure 搜索,并且我有一个控制台应用程序,其代码如下,运行良好。
目前它正在搜索带有“智能”一词的文本。这是直截了当的,我需要的是表中有几个字段,我想根据 feild 进行搜索。
例如让我有两个字段 1)Title 2)SoldDate
我必须编写代码来查找标题为“john”且销售日期<当前日期的项目。
我应该怎么做才能做到这一点?