Azure 搜索的文档说我可以使用 Azure Sql 服务器作为数据源(https://azure.microsoft.com/en-us/documentation/articles/search-howto-connecting-azure-sql-database-to-azure -使用索引器搜索-2015-02-28/)。我可以对本地 SQL 服务器执行同样的操作吗?
我有一个典型的关系结构,例如
用户表 -> 地址表
用户表 -> 用户详细信息表
等..
所有内容都通过外键相互链接。我的搜索应该以 UserId 结束,这样我就可以链接到我的 UserDetailsPage.aspx?UserId=xxx
构建数据源的最佳建议方法是什么?我应该创建一个视图并对其应用更改跟踪吗?或者我应该为每个表创建不同的数据源并同步相关索引吗?
请阐明典型关系数据库场景中的最佳实践。
您需要允许搜索服务的 IP 地址连接到您的本地数据库。 就视图与针对同一索引的多个索引器而言 - 两种方法都可能有效。您的用户将搜索哪些信息 - 地址、详细信息或两者兼而有之?如果它只是其中之一,那么您就不必为两个表建立索引。
请记住,如果您决定对连接两个表的视图建立索引,您将无法使用 SQL 集成更改跟踪,并且必须依赖视图中的 rowversion 或时间戳列。
HTH
根据此社区响应,这是可能的,但您无法轻松地从 Azure 门户 UI(导入数据向导)从本地 SQL Server 提取数据并为其建立索引。相反,您必须创建一个流程来使用他们的 API 将本地数据获取到 Azure 搜索索引中。
如果您今天想在 SQL 2022 中执行此操作,您将需要自己进行大量操作。对于 Open AI 的调用,您可以借助 CLR 过程实现 REST 调用。要利用返回的数据,您必须实现自己的向量处理。
如果您能有点耐心,在即将到来的 SQL 2025 中,这个领域有几个新功能。有一个用于 REST 调用的内置存储过程,并且还有向量支持,以便您可以将响应与用户查询您之前收到的数据库中的任何内容。