语句资源

  • POST /v1/statement
query query

需要执行的SQL查询

reqheader X-Presto-User

代表(optional)执行语句的用户

reqheader X-Presto-Source

查询的来源

reqheader X-Presto-Catalog

执行查询基于的目录

reqheader X-Presto-Schema

执行查询的模式

提交语句给openLooKeng执行。openLooKeng客户端代表用户根据指定的目录和架构进行查询。当使用openLooKeng命令行进行查询时,则调用openLooKeng协调节点的语句资源。

对语句资源的请求就是和标准X-Presto-Catalog、X-Presto-Source、X-Presto-Schema和X-Presto-User头域一起作为post执行的SQL查询。

语句资源的响应包含一个查询标识符,该标识符可用于收集有关查询的详细信息。初始响应还包括有关为执行此查询而在openLooKeng worker上创建的阶段的信息。每个查询都有一个根阶段,并且根阶段被赋予一个"0"的阶段标识符,如下面的响应示例所示。

这个根阶段聚合了在openLooKeng worker上运行的其他阶段的响应,并通过openLooKeng协调节点将它们传递给客户端。 当一个客户端收到这个POST的响应时,它将包含一个"nextUri"属性,这个属性指示客户端查询这个地址以获得查询的更多结果。

请求样例

POST /v1/statement HTTP/1.1

Host: localhost:8001 X-Presto-Catalog: jmx X-Presto-Source: presto-cli
X-Presto-Schema: jmx User-Agent: StatementClient/0.55-SNAPSHOT
X-Presto-User: tobrie1 Content-Length: 41

select name from "java.lang:type=runtime"

响应样例

HTTP/1.1 200 OK

Content-Type: application/json X-Content-Type-Options: nosniff
Transfer-Encoding: chunked

{

    "id":"20140108_110629_00011_dk5x2",
    "infoUri":"<http://localhost:8001/v1/query/20140108_110629_00011_dk5x2>",
    "partialCancelUri":"<http://192.168.1.1:8080/v1/stage/20140108_110629_00011_dk5x2.1>",
    "nextUri":"<http://localhost:8001/v1/statement/20140108_110629_00011_dk5x2/1>",
    "columns": [ { "name":"name", "type":"varchar" } ],
    "stats": { "state":"RUNNING", "scheduled":false,
    "nodes":1, "totalSplits":0, "queuedSplits":0,
    "runningSplits":0, "completedSplits":0, "cpuTimeMillis":0,
    "wallTimeMillis":0, "processedRows":0, "processedBytes":0,
    "rootStage": { "stageId":"0", "state":"SCHEDULED",
    "done":false, "nodes":1, "totalSplits":0,
    "queuedSplits":0, "runningSplits":0, "completedSplits":0,
    "cpuTimeMillis":0, "wallTimeMillis":0, "processedRows":0,
    "processedBytes":0, "subStages": [ { "stageId":"1",
    "state":"SCHEDULED", "done":false, "nodes":1,
    "totalSplits":0, "queuedSplits":0, "runningSplits":0,
    "completedSplits":0, "cpuTimeMillis":0, "wallTimeMillis":0,
    "processedRows":0, "processedBytes":0, "subStages":[] } ]
    } }

}
  • GET /v1/statement/{queryId}/{token}
query queryId

初始POST返回给/v1/statement的查询标识

query token

初始POST返回给/v1/statement的令牌或先前调用返回给此调用的令牌。 当openLooKeng客户端提交语句执行时,openLooKeng创建一个查询,然后它向客户端返回一个nextUri。此调用与nextUri调用相对应,可以包含正在进行中的查询的状态更新,也可以将最终结果传递给客户端。

请求样例

GET /v1/statement/20140108_110629_00011_dk5x2/1 HTTP/1.1
Host: localhost:8001
User-Agent: StatementClient/0.55-SNAPSHOT

响应样例

HTTP/1.1 200 OK

Content-Type: application/json X-Content-Type-Options: nosniff Vary:
Accept-Encoding, User-Agent Transfer-Encoding: chunked

383 { "id":"20140108_110629_00011_dk5x2",
"infoUri":"<http://localhost:8001/v1/query/20140108_110629_00011_dk5x2>",
"columns": [ { "name":"name", "type":"varchar" } ],
"data": [ ["<4165@domU-12-31-39-0F-CC-72>"] ], "stats": {
"state":"FINISHED", "scheduled":true, "nodes":1,
"totalSplits":2, "queuedSplits":0, "runningSplits":0,
"completedSplits":2, "cpuTimeMillis":1, "wallTimeMillis":4,
"processedRows":1, "processedBytes":27, "rootStage": {
"stageId":"0", "state":"FINISHED", "done":true, "nodes":1,
"totalSplits":1, "queuedSplits":0, "runningSplits":0,
"completedSplits":1, "cpuTimeMillis":0, "wallTimeMillis":0,
"processedRows":1, "processedBytes":32, "subStages": [ {
"stageId":"1", "state":"FINISHED", "done":true, "nodes":1,
"totalSplits":1, "queuedSplits":0, "runningSplits":0,
"completedSplits":1, "cpuTimeMillis":0, "wallTimeMillis":4,
"processedRows":1, "processedBytes":27, "subStages":[] } ] }
} }
  • DELETE /v1/statement/{queryId}/{token}
query queryId

初始POST返回给/v1/statement的查询标识

reqheader X-Presto-User

代表(optional)执行语句的用户

reqheader X-Presto-Source

查询来源

reqheader X-Presto-Catalog

执行查询基于的目录

reqheader X-Presto-Schema

执行查询的模式

有奖捉虫

“有虫”文档片段

0/500

存在的问题

文档存在风险与错误

● 拼写,格式,无效链接等错误;

● 技术原理、功能、规格等描述和软件不一致,存在错误;

● 原理图、架构图等存在错误;

● 版本号不匹配:文档版本或内容描述和实际软件不一致;

● 对重要数据或系统存在风险的操作,缺少安全提示;

● 排版不美观,影响阅读;

内容描述不清晰

● 描述存在歧义;

● 图形、表格、文字等晦涩难懂;

● 逻辑不清晰,该分类、分项、分步骤的没有给出;

内容获取有困难

● 很难通过搜索引擎,openLooKeng官网,相关博客找到所需内容;

示例代码错误

● 命令、命令参数等错误;

● 命令无法执行或无法完成对应功能;

内容有缺失

● 关键步骤错误或缺失,无法指导用户完成任务,比如安装、配置、部署等;

● 逻辑不清晰,该分类、分项、分步骤的没有给出

● 图形、表格、文字等晦涩难懂

● 缺少必要的前提条件、注意事项等;

● 描述存在歧义

0/500

您对文档的总体满意度

非常不满意
非常满意

请问是什么原因让您参与到这个问题中

您的邮箱

创Issue赢奖品
根据您的反馈,会自动生成issue模板。您只需点击按钮,创建issue即可。
有奖捉虫