本文整理了Java中org.rakam.report.QueryStats
类的一些代码示例,展示了QueryStats
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。QueryStats
类的具体详情如下:
包路径:org.rakam.report.QueryStats
类名称:QueryStats
暂无
代码示例来源:origin: rakam-io/rakam
@Override
public QueryStats currentStats() {
return new QueryStats(100, QueryStats.State.FINISHED, null, null, null, null, null, null);
}
代码示例来源:origin: rakam-io/rakam
@Override
public QueryStats currentStats() {
if (result.isDone()) {
return new QueryStats(100, FINISHED, null, null, null, null, null, null);
} else {
return new QueryStats(null, RUNNING, null, null, null, null, null, null);
}
}
代码示例来源:origin: rakam-io/rakam
private QueryStats merge(QueryStats currentStats, QueryStats stats) {
return new QueryStats(
ofNullable(currentStats.percentage).orElse(0) + ofNullable(stats.percentage).orElse(0),
Objects.equals(currentStats.state, stats.state) ? currentStats.state : RUNNING,
(currentStats.node != null && stats.node != null) ?
Math.max(currentStats.node, stats.node) :
currentStats.node != null ? currentStats.node : stats.node,
ofNullable(stats.processedRows).orElse(0L) + ofNullable(currentStats.processedRows).orElse(0L),
ofNullable(stats.processedBytes).orElse(0L) + ofNullable(currentStats.processedBytes).orElse(0L),
ofNullable(stats.userTime).orElse(0L) + ofNullable(currentStats.userTime).orElse(0L),
ofNullable(stats.cpuTime).orElse(0L) + ofNullable(currentStats.cpuTime).orElse(0L),
ofNullable(stats.wallTime).orElse(0L) + ofNullable(currentStats.wallTime).orElse(0L)
);
}
代码示例来源:origin: rakam-io/rakam
@Override
public QueryStats currentStats() {
if (client == null) {
return new QueryStats(QueryStats.State.WAITING_FOR_AVAILABLE_THREAD);
}
if (client.isFailed()) {
return new QueryStats(QueryStats.State.FAILED);
}
StatementStats stats = client.getStats();
int totalSplits = stats.getTotalSplits();
QueryStats.State state = QueryStats.State.valueOf(stats.getState().toUpperCase(Locale.ENGLISH));
int percentage = state == FINISHED ? 100 : (totalSplits == 0 ? 0 : stats.getCompletedSplits() * 100 / totalSplits);
return new QueryStats(stats.isScheduled() ? percentage : null,
state,
stats.getNodes(),
stats.getProcessedRows(),
stats.getProcessedBytes(),
stats.getUserTimeMillis(),
stats.getCpuTimeMillis(),
stats.getWallTimeMillis());
}
代码示例来源:origin: org.rakam/rakam-clickhouse
@Override
public QueryStats currentStats()
{
if (result.isDone()) {
return new QueryStats(100, FINISHED, null, null, null, null, null, null);
}
else {
String status = runStatement(config, format("select rows_read, bytes_read, total_rows_approx, memory_usage from system.processes where query_id = '%s' format "
+ QueryResponseHandler.FORMAT, queryId));
if (status.isEmpty()) {
if (result.isDone()) {
return currentStats();
}
else {
return new QueryStats(null, RUNNING, null, null, null, null, null, null);
}
}
ClickHouseQueryResult read = JsonHelper.read(status, ClickHouseQueryResult.class);
int percentage = (((Number) read.data.get(0)).intValue() * 100) / ((Number) read.data.get(2)).intValue();
return new QueryStats(percentage, RUNNING, null, ((Number) read.data.get(1)).longValue(), ((Number) read.data.get(2)).longValue(),
null, null, null);
}
}
内容来源于网络,如有侵权,请联系作者删除!