Thomas Steinholz
10/27/2022, 2:22 PMMayank
Thomas Steinholz
10/27/2022, 2:35 PMEXPLAIN SELECT * FROM pinot.default.uplinkpayloadevent
WHERE app_tok='c47e949cc0428bdac390'
ORDER BY message_timestamp DESC
LIMIT 30;
Fragment 0 [SINGLE]
Output layout: [app_tok, gatewayaddress, message_str, key_hash, net_tok, message_timestamp, acctid, id, moduleaddress, time_string, key_range]
Output partitioning: SINGLE []
Output[columnNames = [app_tok, gatewayaddress, message_str, key_hash, net_tok, message_timestamp, acctid, id, moduleaddress, time_string, key_range]]
│ Layout: [app_tok:varchar, gatewayaddress:varchar, message_str:json, key_hash:varchar, net_tok:varchar, message_timestamp:bigint, acctid:varchar, id:varchar, moduleaddress:varchar, time_string:varchar, key_range:varchar]
│ Estimates: {rows: ? (?), cpu: ?, memory: ?, network: ?}
└─ TopN[count = 30, orderBy = [message_timestamp DESC NULLS LAST]]
│ Layout: [app_tok:varchar, gatewayaddress:varchar, message_str:json, key_hash:varchar, net_tok:varchar, message_timestamp:bigint, acctid:varchar, id:varchar, moduleaddress:varchar, time_string:varchar, key_range:varchar]
│ Estimates:
└─ LocalExchange[partitioning = SINGLE]
│ Layout: [app_tok:varchar, gatewayaddress:varchar, message_str:json, key_hash:varchar, net_tok:varchar, message_timestamp:bigint, acctid:varchar, id:varchar, moduleaddress:varchar, time_string:varchar, key_range:varchar]
│ Estimates: {rows: ? (?), cpu: ?, memory: ?, network: ?}
└─ RemoteSource[sourceFragmentIds = [1]]
Layout: [app_tok:varchar, gatewayaddress:varchar, message_str:json, key_hash:varchar, net_tok:varchar, message_timestamp:bigint, acctid:varchar, id:varchar, moduleaddress:varchar, time_string:varchar, key_range:varchar]
Estimates:
Fragment 1 [SOURCE]
Output layout: [app_tok, gatewayaddress, message_str, key_hash, net_tok, message_timestamp, acctid, id, moduleaddress, time_string, key_range]
Output partitioning: SINGLE []
TopNPartial[count = 30, orderBy = [message_timestamp DESC NULLS LAST]]
│ Layout: [app_tok:varchar, gatewayaddress:varchar, message_str:json, key_hash:varchar, net_tok:varchar, message_timestamp:bigint, acctid:varchar, id:varchar, moduleaddress:varchar, time_string:varchar, key_range:varchar]
│ Estimates:
└─ TableScan[table = pinot:PinotTableHandle{schemaName=default, tableName=uplinkpayloadevent, constraint={PinotColumnHandle{columnName=app_tok, dataType=varchar, expression=app_tok, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}=[ SortedRangeSet[type=varchar, ranges=1, {[c47e949cc0428bdac390]}] ]}, limit=OptionalLong.empty, query=Optional.empty}]
Layout: [app_tok:varchar, gatewayaddress:varchar, message_str:json, key_hash:varchar, net_tok:varchar, message_timestamp:bigint, acctid:varchar, id:varchar, moduleaddress:varchar, time_string:varchar, key_range:varchar]
Estimates: {rows: ? (?), cpu: ?, memory: 0B, network: 0B}
app_tok := PinotColumnHandle{columnName=app_tok, dataType=varchar, expression=app_tok, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
gatewayaddress := PinotColumnHandle{columnName=gatewayaddress, dataType=varchar, expression=gatewayaddress, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
message_str := PinotColumnHandle{columnName=message_str, dataType=json, expression=message_str, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
key_hash := PinotColumnHandle{columnName=key_hash, dataType=varchar, expression=key_hash, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
net_tok := PinotColumnHandle{columnName=net_tok, dataType=varchar, expression=net_tok, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
message_timestamp := PinotColumnHandle{columnName=message_timestamp, dataType=bigint, expression=message_timestamp, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
acctid := PinotColumnHandle{columnName=acctid, dataType=varchar, expression=acctid, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
id := PinotColumnHandle{columnName=id, dataType=varchar, expression=id, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
moduleaddress := PinotColumnHandle{columnName=moduleaddress, dataType=varchar, expression=moduleaddress, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
time_string := PinotColumnHandle{columnName=time_string, dataType=varchar, expression=time_string, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
key_range := PinotColumnHandle{columnName=key_range, dataType=varchar, expression=key_range, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
Thomas Steinholz
10/27/2022, 2:36 PM> SELECT * FROM pinot.default.uplinkpayloadevent
WHERE app_tok='c47e949cc0428bdac390'
ORDER BY message_timestamp DESC
LIMIT 30
[2022-10-27 10:39:41] 30 rows retrieved starting from 1 in 19 s 65 ms (execution: 1 s 173 ms, fetching: 17 s 892 ms)
seems like its a little faster now, but still not fastThomas Steinholz
10/27/2022, 2:38 PMThomas Steinholz
10/27/2022, 2:42 PMEXPLAIN ANALYZE SELECT * FROM pinot.default.uplinkpayloadevent
WHERE app_tok='c47e949cc0428bdac390'
ORDER BY message_timestamp DESC
LIMIT 30;
Fragment 1 [SINGLE]
CPU: 53.52ms, Scheduled: 101.32ms, Blocked 18.56s (Input: 6.36s, Output: 0.00ns), Input: 8506 rows (12.79MB); per task: avg.: 8506.00 std.dev.: 0.00, Output: 30 rows (43.48kB)
Output layout: [app_tok, gatewayaddress, message_str, key_hash, net_tok, message_timestamp, acctid, id, moduleaddress, time_string, key_range]
Output partitioning: SINGLE []
TopN[count = 30, orderBy = [message_timestamp DESC NULLS LAST]]
│ Layout: [app_tok:varchar, gatewayaddress:varchar, message_str:json, key_hash:varchar, net_tok:varchar, message_timestamp:bigint, acctid:varchar, id:varchar, moduleaddress:varchar, time_string:varchar, key_range:varchar]
│ Estimates:
│ CPU: 10.00ms (0.01%), Scheduled: 10.00ms (0.01%), Blocked: 0.00ns (0.00%), Output: 30 rows (43.48kB)
│ Input avg.: 8506.00 rows, Input std.dev.: 0.00%
└─ LocalExchange[partitioning = SINGLE]
│ Layout: [app_tok:varchar, gatewayaddress:varchar, message_str:json, key_hash:varchar, net_tok:varchar, message_timestamp:bigint, acctid:varchar, id:varchar, moduleaddress:varchar, time_string:varchar, key_range:varchar]
│ Estimates: {rows: ? (?), cpu: ?, memory: ?, network: ?}
│ CPU: 15.00ms (0.02%), Scheduled: 61.00ms (0.04%), Blocked: 12.21s (65.75%), Output: 8506 rows (12.79MB)
│ Input avg.: 8506.00 rows, Input std.dev.: 0.00%
└─ RemoteSource[sourceFragmentIds = [2]]
Layout: [app_tok:varchar, gatewayaddress:varchar, message_str:json, key_hash:varchar, net_tok:varchar, message_timestamp:bigint, acctid:varchar, id:varchar, moduleaddress:varchar, time_string:varchar, key_range:varchar]
Estimates:
CPU: 17.00ms (0.02%), Scheduled: 18.00ms (0.01%), Blocked: 6.36s (34.25%), Output: 8506 rows (12.79MB)
Input avg.: 8506.00 rows, Input std.dev.: 0.00%
Fragment 2 [SOURCE]
CPU: 1.51m, Scheduled: 2.38m, Blocked 0.00ns (Input: 0.00ns, Output: 0.00ns), Input: 2660145 rows (3.99GB); per task: avg.: 532029.00 std.dev.: 36542.78, Output: 8506 rows (12.79MB)
Output layout: [app_tok, gatewayaddress, message_str, key_hash, net_tok, message_timestamp, acctid, id, moduleaddress, time_string, key_range]
Output partitioning: SINGLE []
TopNPartial[count = 30, orderBy = [message_timestamp DESC NULLS LAST]]
│ Layout: [app_tok:varchar, gatewayaddress:varchar, message_str:json, key_hash:varchar, net_tok:varchar, message_timestamp:bigint, acctid:varchar, id:varchar, moduleaddress:varchar, time_string:varchar, key_range:varchar]
│ Estimates:
│ CPU: 1.82s (2.01%), Scheduled: 1.92s (1.34%), Blocked: 0.00ns (0.00%), Output: 8506 rows (12.79MB)
│ Input avg.: 2287.31 rows, Input std.dev.: 221.29%
└─ TableScan[table = pinot:PinotTableHandle{schemaName=default, tableName=uplinkpayloadevent, constraint={PinotColumnHandle{columnName=app_tok, dataType=varchar, expression=app_tok, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}=[ SortedRangeSet[type=varchar, ranges=1, {[c47e949cc0428bdac390]}] ]}, limit=OptionalLong.empty, query=Optional.empty}]
Layout: [app_tok:varchar, gatewayaddress:varchar, message_str:json, key_hash:varchar, net_tok:varchar, message_timestamp:bigint, acctid:varchar, id:varchar, moduleaddress:varchar, time_string:varchar, key_range:varchar]
Estimates: {rows: ? (?), cpu: ?, memory: 0B, network: 0B}
CPU: 1.48m (97.95%), Scheduled: 2.35m (98.59%), Blocked: 0.00ns (0.00%), Output: 2660145 rows (3.99GB)
Input avg.: 2287.31 rows, Input std.dev.: 221.29%
app_tok := PinotColumnHandle{columnName=app_tok, dataType=varchar, expression=app_tok, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
gatewayaddress := PinotColumnHandle{columnName=gatewayaddress, dataType=varchar, expression=gatewayaddress, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
message_str := PinotColumnHandle{columnName=message_str, dataType=json, expression=message_str, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
key_hash := PinotColumnHandle{columnName=key_hash, dataType=varchar, expression=key_hash, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
net_tok := PinotColumnHandle{columnName=net_tok, dataType=varchar, expression=net_tok, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
message_timestamp := PinotColumnHandle{columnName=message_timestamp, dataType=bigint, expression=message_timestamp, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
acctid := PinotColumnHandle{columnName=acctid, dataType=varchar, expression=acctid, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
id := PinotColumnHandle{columnName=id, dataType=varchar, expression=id, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
moduleaddress := PinotColumnHandle{columnName=moduleaddress, dataType=varchar, expression=moduleaddress, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
time_string := PinotColumnHandle{columnName=time_string, dataType=varchar, expression=time_string, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
key_range := PinotColumnHandle{columnName=key_range, dataType=varchar, expression=key_range, aliased=false, aggregate=false, returnNullOnEmptyGroup=true, pushedDownAggregateFunctionName=Optional.empty, pushedDownAggregateFunctionArgument=Optional.empty}
Mayank
Mayank
Mayank
Thomas Steinholz
10/27/2022, 7:45 PMXiang Fu
Xiang Fu
Elon
10/28/2022, 3:18 AMElon
10/28/2022, 3:19 AMSELECT * FROM pinot.default."select * from uplinkpayloadevent
WHERE app_tok='c47e949cc0428bdac390'
ORDER BY message_timestamp DESC
LIMIT 30";
Elon
10/28/2022, 3:57 AMThomas Steinholz
10/28/2022, 12:05 PMQuery 20221028_120450_00000_sb9hy, FINISHED, 1 node
Splits: 1 total, 1 done (100.00%)
1.28 [30 rows, 45.8KB] [23 rows/s, 35.9KB/s]
Query 20221028_120455_00001_sb9hy, FINISHED, 1 node
Splits: 1 total, 1 done (100.00%)
0.45 [30 rows, 45.8KB] [67 rows/s, 103KB/s]
Thomas Steinholz
10/28/2022, 12:09 PMQuery 20221028_120556_00002_sb9hy, FINISHED, 5 nodes
Splits: 1,317 total, 1,317 done (100.00%)
1:29 [4.55M rows, 6.63GB] [51.4K rows/s, 76.7MB/s]
Query 20221028_120749_00003_sb9hy, FINISHED, 5 nodes
Splits: 1,317 total, 1,317 done (100.00%)
1:12 [4.56M rows, 6.63GB] [63.6K rows/s, 94.9MB/s]