【问题标题】:Azure Search with Azure DocumentDB indexing error: _ts column not present带有 Azure DocumentDB 索引错误的 Azure 搜索:_ts 列不存在
【发布时间】:2016-07-11 15:31:22
【问题描述】:

创建 Azure 搜索索引时,在编辑查询后运行重新索引后失败。

为了重现,

  1. SELECT c.id, c.Text from c创建索引
  2. 为 500 多个数据运行索引,并成功执行。
  3. 在 Azure 门户中,将 Azure 搜索数据源查询编辑为 SELECT c.id, c.Text from c WHERE c._ts >= @HighWaterMark ORDER BY c._ts 以使其检测到更新的数据。
  4. 运行索引,失败并显示以下错误消息。

数据更改检测策略配置为使用列“_ts”,但该列在数据源中不存在。

我可以看到_ts值存在于Portal的Azure DocumentDB中(当然是Azure DocumentDB自动生成的)。但是怎么了?

我是否必须删除并重新创建 @HighWaterMark 的数据源?

【问题讨论】:

    标签: azure-cosmosdb azure-cognitive-search


    【解决方案1】:

    在 SELECT 子句中包含 _ts:

    SELECT c.id, c.Text, c._ts from c WHERE c._ts >= @HighWaterMark ORDER BY c._ts

    【讨论】:

    • 谢谢。它现在真的有效。最好注意 (1) Data Source > Edit blade Blade、Query [i] tooltip、"SELECT , c_.ts WHERE c._ts > ..."(目前仅从 WHERE 子句中注明)或 (2)错误消息中的“检查 SELECT 子句包括 _ts 列”。
    • 您好 Youngjae,感谢您的反馈。我们将改进此验证错误消息。我还将通过电子邮件向您介绍您使用 Azure 搜索的体验。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多