解释H2数据库的explain结果
Explaining the explain results of H2 database
运行 Apache Ignite 1.30 使用 H2 作为索引系统。
我运行我的查询通过解释得到了。
{"result":"[[
SELECT\n
FIELD1 AS __C0\n
FROM \"cache\".TRX\n
/* \"cache\".\"FIELD2_idx\": FIELD2 = ?1 */\n
WHERE FIELD2 = ?1], [SELECT\n
__C0 AS FIELD1\n
FROM \"cache\".__Z0()\n
/* function */]]"}
好的,我知道它使用 field2 作为索引,但是第二个是什么 select?
这里的第一个SELECT是在远程节点上执行的查询的执行计划,第二个是在reduce步骤中执行的本地查询的执行计划。
远程查询执行计划显示索引使用正确,查询将以最快的方式执行。
由于此特定查询中没有聚合,因此减少步骤很简单 - 来自远程节点的结果集被简单地合并为一个。所以在这种情况下,执行计划实际上没有显示任何有用的信息。
运行 Apache Ignite 1.30 使用 H2 作为索引系统。
我运行我的查询通过解释得到了。
{"result":"[[
SELECT\n
FIELD1 AS __C0\n
FROM \"cache\".TRX\n
/* \"cache\".\"FIELD2_idx\": FIELD2 = ?1 */\n
WHERE FIELD2 = ?1], [SELECT\n
__C0 AS FIELD1\n
FROM \"cache\".__Z0()\n
/* function */]]"}
好的,我知道它使用 field2 作为索引,但是第二个是什么 select?
这里的第一个SELECT是在远程节点上执行的查询的执行计划,第二个是在reduce步骤中执行的本地查询的执行计划。
远程查询执行计划显示索引使用正确,查询将以最快的方式执行。
由于此特定查询中没有聚合,因此减少步骤很简单 - 来自远程节点的结果集被简单地合并为一个。所以在这种情况下,执行计划实际上没有显示任何有用的信息。