digraph G {
0 [labelType="html" label="<br><b>TakeOrderedAndProject</b><br><br>"];
subgraph cluster1 {
isCluster="true";
label="WholeStageCodegen (2)\n \nduration: total (min, med, max (stageId: taskId))\n1.2 s (1 ms, 4 ms, 44 ms (stage 5.0: task 15))";
2 [labelType="html" label="<b>HashAggregate</b><br><br>time in aggregation build total (min, med, max (stageId: taskId))<br>183 ms (0 ms, 1 ms, 12 ms (stage 5.0: task 14))<br>peak memory total (min, med, max (stageId: taskId))<br>12.5 GiB (64.3 MiB, 64.3 MiB, 64.3 MiB (stage 5.0: task 15))<br>number of output rows: 2,083<br>avg hash probe bucket list iters (min, med, max (stageId: taskId)):<br>(1, 1, 1 (stage 5.0: task 15))"];
}
3 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 3,237<br>shuffle write time total (min, med, max (stageId: taskId))<br>173 ms (13 ms, 30 ms, 58 ms (stage 4.0: task 10))<br>records read: 3,237<br>local bytes read total (min, med, max (stageId: taskId))<br>111.6 KiB (112.0 B, 563.0 B, 1192.0 B (stage 5.0: task 142))<br>fetch wait time total (min, med, max (stageId: taskId))<br>21 ms (0 ms, 0 ms, 3 ms (stage 5.0: task 50))<br>remote bytes read total (min, med, max (stageId: taskId))<br>110.4 KiB (0.0 B, 561.0 B, 1177.0 B (stage 5.0: task 170))<br>local blocks read: 420<br>remote blocks read: 420<br>data size total (min, med, max (stageId: taskId))<br>227.6 KiB (8.9 KiB, 31.9 KiB, 113.8 KiB (stage 4.0: task 9))<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>222.0 KiB (12.2 KiB, 34.7 KiB, 97.9 KiB (stage 4.0: task 9))"];
subgraph cluster4 {
isCluster="true";
label="WholeStageCodegen (1)\n \nduration: total (min, med, max (stageId: taskId))\n9.3 s (196 ms, 2.2 s, 2.3 s (stage 4.0: task 9))";
5 [labelType="html" label="<b>HashAggregate</b><br><br>time in aggregation build total (min, med, max (stageId: taskId))<br>8.8 s (170 ms, 2.1 s, 2.2 s (stage 4.0: task 12))<br>peak memory total (min, med, max (stageId: taskId))<br>1280.0 KiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 4.0: task 10))<br>number of output rows: 3,237"];
}
6 [labelType="html" label="<b>Scan csv </b><br><br>number of files read: 1<br>metadata time: 0 ms<br>size of files read: 519.0 MiB<br>number of output rows: 500,001"];
2->0;
3->2;
5->3;
6->5;
}
7
TakeOrderedAndProject(limit=11, orderBy=[total_size_blocks_mined#120L DESC NULLS LAST], output=[Miner#25,total_size_blocks_mined#126])
HashAggregate(keys=[Miner#25], functions=[sum(cast(size#28 as bigint))])
WholeStageCodegen (2)
Exchange hashpartitioning(Miner#25, 200), true, [id=#57]
HashAggregate(keys=[Miner#25], functions=[partial_sum(cast(size#28 as bigint))])
WholeStageCodegen (1)
FileScan csv [miner#25,size#28] Batched: false, DataFilters: [], Format: CSV, Location: InMemoryFileIndex[s3a://data-repository-bkt/ECS765/ethereum/blocks.csv], PartitionFilters: [], PushedFilters: [], ReadSchema: struct<miner:string,size:int>
== Parsed Logical Plan ==
GlobalLimit 11
+- LocalLimit 11
+- Project [cast(Miner#25 as string) AS Miner#125, cast(total_size_blocks_mined#120L as string) AS total_size_blocks_mined#126]
+- Sort [total_size_blocks_mined#120L DESC NULLS LAST], true
+- Aggregate [Miner#25], [Miner#25, sum(cast(size#28 as bigint)) AS total_size_blocks_mined#120L]
+- Relation[number#16,hash#17,parent_hash#18,nonce#19,sha3_uncles#20,logs_bloom#21,transactions_root#22,state_root#23,receipts_root#24,miner#25,difficulty#26L,total_difficulty#27,size#28,extra_data#29,gas_limit#30,gas_used#31,timestamp#32,transaction_count#33,base_fee_per_gas#34] csv
== Analyzed Logical Plan ==
Miner: string, total_size_blocks_mined: string
GlobalLimit 11
+- LocalLimit 11
+- Project [cast(Miner#25 as string) AS Miner#125, cast(total_size_blocks_mined#120L as string) AS total_size_blocks_mined#126]
+- Sort [total_size_blocks_mined#120L DESC NULLS LAST], true
+- Aggregate [Miner#25], [Miner#25, sum(cast(size#28 as bigint)) AS total_size_blocks_mined#120L]
+- Relation[number#16,hash#17,parent_hash#18,nonce#19,sha3_uncles#20,logs_bloom#21,transactions_root#22,state_root#23,receipts_root#24,miner#25,difficulty#26L,total_difficulty#27,size#28,extra_data#29,gas_limit#30,gas_used#31,timestamp#32,transaction_count#33,base_fee_per_gas#34] csv
== Optimized Logical Plan ==
GlobalLimit 11
+- LocalLimit 11
+- Project [Miner#25, cast(total_size_blocks_mined#120L as string) AS total_size_blocks_mined#126]
+- Sort [total_size_blocks_mined#120L DESC NULLS LAST], true
+- Aggregate [Miner#25], [Miner#25, sum(cast(size#28 as bigint)) AS total_size_blocks_mined#120L]
+- Project [miner#25, size#28]
+- Relation[number#16,hash#17,parent_hash#18,nonce#19,sha3_uncles#20,logs_bloom#21,transactions_root#22,state_root#23,receipts_root#24,miner#25,difficulty#26L,total_difficulty#27,size#28,extra_data#29,gas_limit#30,gas_used#31,timestamp#32,transaction_count#33,base_fee_per_gas#34] csv
== Physical Plan ==
TakeOrderedAndProject(limit=11, orderBy=[total_size_blocks_mined#120L DESC NULLS LAST], output=[Miner#25,total_size_blocks_mined#126])
+- *(2) HashAggregate(keys=[Miner#25], functions=[sum(cast(size#28 as bigint))], output=[Miner#25, total_size_blocks_mined#120L])
+- Exchange hashpartitioning(Miner#25, 200), true, [id=#57]
+- *(1) HashAggregate(keys=[Miner#25], functions=[partial_sum(cast(size#28 as bigint))], output=[Miner#25, sum#130L])
+- FileScan csv [miner#25,size#28] Batched: false, DataFilters: [], Format: CSV, Location: InMemoryFileIndex[s3a://data-repository-bkt/ECS765/ethereum/blocks.csv], PartitionFilters: [], PushedFilters: [], ReadSchema: struct<miner:string,size:int>