[
https://issues.apache.org/jira/browse/PHOENIX-2163?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14712589#comment-14712589
]
Shuxiong Ye commented on PHOENIX-2163:
--------------------------------------
The information in *.out is generated in this way:
For calcite, in \[1\], function getExplainPlan, it is generated by prepending
"EXPLAIN PLAN FOR".
{code:java}
private static String getExplainPlan(String query) {
StringBuilder buf = new StringBuilder();
try {
String expPrefixStr =
PhoenixConnection.isCalciteConnection() ? "EXPLAIN PLAN FOR " :
"EXPLAIN ";
System.out.println("getExplainPlan query= " + expPrefixStr + query);
PreparedStatement statement =
PhoenixConnection.getConnection().prepareStatement(expPrefixStr +
query);
ResultSet rs = statement.executeQuery();
while (rs.next()) {
buf.append(rs.getString(1));
buf.append('\n');
}
if (buf.length() > 0) {
buf.setLength(buf.length() - 1);
}
statement.close();
} catch (Exception e) {
}
System.out.println("EXPLAIN: " + buf.toString());
return buf.toString();
}
{code}
Calcite use "EXPLAIN PLAN FOR" instead of "EXPLAIN".
\[1\]
https://github.com/shuxiong/PhoenixRegressor/blob/master-calcite/src/main/java/com/salesforce/PhoenixRegressor.java
> Measure performance of Phoenix/Calcite querying
> -----------------------------------------------
>
> Key: PHOENIX-2163
> URL: https://issues.apache.org/jira/browse/PHOENIX-2163
> Project: Phoenix
> Issue Type: Bug
> Reporter: James Taylor
> Assignee: Shuxiong Ye
> Attachments: PHOENIX-2163.patch, calcite-test-mac.tar.gz
>
>
> The work to integrate Phoenix with Calcite has come along far enough that
> queries both against the data table and through a secondary index is
> functional. As a checkpoint, we should compare performance of as many queries
> as possible in our regression suite for the calcite branch against the latest
> Phoenix release (4.5.0). The runtime of these two systems should be the same,
> so this will give us an idea of the overhead of query parsing and compilation
> for Calcite. This is super important, as it'll identify outstanding work
> that'll be necessary to do prior to any releases on top of this new stack.
> Source code of regression suite is at
> https://github.com/mujtabachohan/PhoenixRegressor
> Connection string location:
> https://github.com/mujtabachohan/PhoenixRegressor/blob/master/src/main/resources/settings.json
> Instructions on how to compile and run:
> https://github.com/mujtabachohan/PhoenixRegressor/blob/master/README.md
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)