【问题标题】:Is SQL and PPL fully supported?是否完全支持 SQL 和 PPL?
【发布时间】:2021-01-05 04:25:14
【问题描述】:

我尝试了一些查询,发现有些 SQL 查询正在运行,而有些则没有。

我使用开发工具上传了测试数据。我也上传了几百个文档 (crwaler)。

PUT /library/book/_bulk?refresh&pretty
{"index":{"_id": "Leviathan Wakes"}}
{"name": "Leviathan Wakes", "author": "James S.A. Corey", "release_date": "2011-06-02", "page_count": 561}
{"index":{"_id": "Hyperion"}}
{"name": "Hyperion", "author": "Dan Simmons", "release_date": "1989-05-26", "page_count": 482}
{"index":{"_id": "Dune"}}
{"name": "Dune", "author": "Frank Herbert", "release_date": "1965-06-01", "page_count": 604}
  1. 这可以正常工作并显示索引。
SHOW tables LIKE %;

.kibana_1
cwl-2021.01.05
library
  1. 这也有效。显示 42 条记录。
select * from .kibana_1;

这按预期工作:

select * from library where page_count > 500 and name = 'Dune'
  1. 这不起作用:
select * from cwl-2021.01.05

收到错误“无响应”

  1. 这可行,但仅显示 400 条记录中的 200 条:
select * from cwl*
  1. 仅当 ID 在前 200 条记录中时才有效:
select * from cwl* where requestID = '3FB4131539FD4403'

管道查询语言仅与库索引一起按预期工作。

search source=library page_count > 500 and name = 'Dune'

它不适用于 .kibana_1 或 cwl-2021.01.05 等其他索引

我不确定 AWS elasticsearch 实例如何支持 SQL 和 PPL。

【问题讨论】:

    标签: aws-elasticsearch elasticsearch-opendistro


    【解决方案1】:

    对于此用户案例,您始终可以使用反引号。例如

    POST /_opendistro/_ppl
    {
      "query": """
        source=`filebeat-7.10.0-2020.11.28`
      """
    }
    

    【讨论】:

    【解决方案2】:

    【讨论】:

    • 对任何(或所有)错误显示“无响应”消息并不是一种直观的编程方式,顺便说一句:)
    【解决方案3】:

    这是因为 SQL 和 PPL 不喜欢表名中的点或破折号等特殊字符。

    PUT /cwl-2021.01.06/_alias/cwl20210106
    
    PUT /cwl-2021.01.07/_alias/cwl20210107
    

    我创建了一个别名,现在一切似乎都按预期工作了。

    select * from cwl20210107 where eventID = 'xxx' limit 100

    所有节拍、爬虫(默认情况下)在其索引名称中都有特殊字符。更改索引名称并不容易。 :)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-20
      • 2017-05-31
      • 1970-01-01
      • 1970-01-01
      • 2022-07-19
      • 1970-01-01
      • 2015-11-28
      • 2018-07-14
      相关资源
      最近更新 更多