digraph G {
0 [labelType="html" label="<br><b>TakeOrderedAndProject</b><br><br>"];
subgraph cluster1 {
isCluster="true";
label="WholeStageCodegen (7)\n \nduration: total (min, med, max (stageId: taskId))\n368 ms (0 ms, 0 ms, 22 ms (stage 15.0: task 634))";
2 [labelType="html" label="<b>HashAggregate</b><br><br>time in aggregation build total (min, med, max (stageId: taskId))<br>134 ms (0 ms, 0 ms, 10 ms (stage 15.0: task 634))<br>peak memory total (min, med, max (stageId: taskId))<br>1906.0 MiB (256.0 KiB, 256.0 KiB, 64.3 MiB (stage 15.0: task 631))<br>number of output rows: 30<br>avg hash probe bucket list iters (min, med, max (stageId: taskId)):<br>(1, 1, 1 (stage 15.0: task 631))"];
}
3 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 5,937<br>shuffle write time total (min, med, max (stageId: taskId))<br>1.2 s (3 ms, 5 ms, 63 ms (stage 14.0: task 440))<br>records read: 5,937<br>local bytes read total (min, med, max (stageId: taskId))<br>194.9 KiB (0.0 B, 0.0 B, 8.5 KiB (stage 15.0: task 634))<br>fetch wait time total (min, med, max (stageId: taskId))<br>7 ms (0 ms, 0 ms, 3 ms (stage 15.0: task 634))<br>remote bytes read total (min, med, max (stageId: taskId))<br>195.0 KiB (0.0 B, 0.0 B, 8.1 KiB (stage 15.0: task 634))<br>local blocks read: 2,869<br>remote blocks read: 2,872<br>data size total (min, med, max (stageId: taskId))<br>185.5 KiB (864.0 B, 960.0 B, 960.0 B (stage 14.0: task 431))<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>390.0 KiB (1811.0 B, 2018.0 B, 2022.0 B (stage 14.0: task 452))"];
subgraph cluster4 {
isCluster="true";
label="WholeStageCodegen (6)\n \nduration: total (min, med, max (stageId: taskId))\n3.2 s (9 ms, 14 ms, 73 ms (stage 14.0: task 440))";
5 [labelType="html" label="<b>HashAggregate</b><br><br>time in aggregation build total (min, med, max (stageId: taskId))<br>1.4 s (3 ms, 6 ms, 60 ms (stage 14.0: task 441))<br>peak memory total (min, med, max (stageId: taskId))<br>50.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 14.0: task 431))<br>number of output rows: 5,937"];
6 [labelType="html" label="<b>HashAggregate</b><br><br>time in aggregation build total (min, med, max (stageId: taskId))<br>1.1 s (2 ms, 4 ms, 58 ms (stage 14.0: task 441))<br>peak memory total (min, med, max (stageId: taskId))<br>50.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 14.0: task 431))<br>number of output rows: 28,128"];
}
7 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 85,947<br>shuffle write time total (min, med, max (stageId: taskId))<br>2.6 s (9 ms, 12 ms, 27 ms (stage 13.0: task 243))<br>records read: 85,947<br>local bytes read total (min, med, max (stageId: taskId))<br>3.3 MiB (8.6 KiB, 16.2 KiB, 34.1 KiB (stage 14.0: task 476))<br>fetch wait time total (min, med, max (stageId: taskId))<br>128 ms (0 ms, 0 ms, 52 ms (stage 14.0: task 538))<br>remote bytes read total (min, med, max (stageId: taskId))<br>3.3 MiB (9.2 KiB, 16.2 KiB, 28.7 KiB (stage 14.0: task 542))<br>local blocks read: 17,617<br>remote blocks read: 17,536<br>data size total (min, med, max (stageId: taskId))<br>6.6 MiB (22.8 KiB, 33.4 KiB, 45.2 KiB (stage 13.0: task 341))<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>6.6 MiB (25.4 KiB, 33.5 KiB, 42.1 KiB (stage 13.0: task 341))"];
subgraph cluster8 {
isCluster="true";
label="WholeStageCodegen (5)\n \nduration: total (min, med, max (stageId: taskId))\n5.4 s (14 ms, 19 ms, 214 ms (stage 13.0: task 231))";
9 [labelType="html" label="<b>HashAggregate</b><br><br>time in aggregation build total (min, med, max (stageId: taskId))<br>1.2 s (2 ms, 3 ms, 150 ms (stage 13.0: task 331))<br>peak memory total (min, med, max (stageId: taskId))<br>50.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 13.0: task 232))<br>number of output rows: 85,947"];
10 [labelType="html" label="<br><b>Project</b><br><br>"];
11 [labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 173,805"];
}
subgraph cluster12 {
isCluster="true";
label="WholeStageCodegen (2)\n \nduration: total (min, med, max (stageId: taskId))\n1.5 s (0 ms, 7 ms, 246 ms (stage 13.0: task 232))";
13 [labelType="html" label="<b>Sort</b><br><br>sort time total (min, med, max (stageId: taskId))<br>7 ms (0 ms, 0 ms, 2 ms (stage 13.0: task 232))<br>peak memory total (min, med, max (stageId: taskId))<br>12.5 GiB (64.1 MiB, 64.1 MiB, 64.1 MiB (stage 13.0: task 232))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 13.0: task 232))"];
}
14 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 144,178<br>shuffle write time total (min, med, max (stageId: taskId))<br>44 ms (0 ms, 0 ms, 23 ms (stage 12.0: task 227))<br>records read: 144,178<br>local bytes read total (min, med, max (stageId: taskId))<br>4.6 MiB (18.5 KiB, 23.3 KiB, 29.1 KiB (stage 13.0: task 310))<br>fetch wait time total (min, med, max (stageId: taskId))<br>276 ms (0 ms, 0 ms, 142 ms (stage 13.0: task 331))<br>remote bytes read total (min, med, max (stageId: taskId))<br>4.7 MiB (18.5 KiB, 24.0 KiB, 29.4 KiB (stage 13.0: task 266))<br>local blocks read: 200<br>remote blocks read: 200<br>data size total (min, med, max (stageId: taskId))<br>13.2 MiB (0.0 B, 0.0 B, 7.0 MiB (stage 12.0: task 227))<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>9.3 MiB (0.0 B, 0.0 B, 4.9 MiB (stage 12.0: task 227))"];
subgraph cluster15 {
isCluster="true";
label="WholeStageCodegen (1)\n \nduration: total (min, med, max (stageId: taskId))\n9.4 s (191 ms, 2.2 s, 2.8 s (stage 12.0: task 227))";
16 [labelType="html" label="<br><b>Project</b><br><br>"];
17 [labelType="html" label="<b>Filter</b><br><br>number of output rows: 144,178"];
}
18 [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"];
subgraph cluster19 {
isCluster="true";
label="WholeStageCodegen (4)\n \nduration: total (min, med, max (stageId: taskId))\n1.6 s (0 ms, 6 ms, 258 ms (stage 13.0: task 231))";
20 [labelType="html" label="<b>Sort</b><br><br>sort time total (min, med, max (stageId: taskId))<br>50 ms (0 ms, 0 ms, 14 ms (stage 13.0: task 231))<br>peak memory total (min, med, max (stageId: taskId))<br>12.5 GiB (64.1 MiB, 64.1 MiB, 64.1 MiB (stage 13.0: task 232))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 13.0: task 232))"];
}
21 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 504,708<br>shuffle write time total (min, med, max (stageId: taskId))<br>127 ms (56 ms, 71 ms, 71 ms (stage 11.0: task 224))<br>records read: 504,708<br>local bytes read total (min, med, max (stageId: taskId))<br>26.3 MiB (101.9 KiB, 133.1 KiB, 190.0 KiB (stage 13.0: task 293))<br>fetch wait time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 13.0: task 232))<br>remote bytes read total (min, med, max (stageId: taskId))<br>26.5 MiB (105.1 KiB, 133.3 KiB, 198.3 KiB (stage 13.0: task 340))<br>local blocks read: 200<br>remote blocks read: 200<br>data size total (min, med, max (stageId: taskId))<br>107.8 MiB (50.6 MiB, 57.2 MiB, 57.2 MiB (stage 11.0: task 224))<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>52.8 MiB (24.8 MiB, 27.9 MiB, 27.9 MiB (stage 11.0: task 224))"];
subgraph cluster22 {
isCluster="true";
label="WholeStageCodegen (3)\n \nduration: total (min, med, max (stageId: taskId))\n4.2 s (1.9 s, 2.3 s, 2.3 s (stage 11.0: task 224))";
23 [labelType="html" label="<br><b>Project</b><br><br>"];
24 [labelType="html" label="<b>Filter</b><br><br>number of output rows: 504,708"];
}
25 [labelType="html" label="<b>Scan csv </b><br><br>number of files read: 1<br>metadata time: 0 ms<br>size of files read: 173.6 MiB<br>number of output rows: 504,708"];
2->0;
3->2;
5->3;
6->5;
7->6;
9->7;
10->9;
11->10;
13->11;
14->13;
16->14;
17->16;
18->17;
20->11;
21->20;
23->21;
24->23;
25->24;
}
26
TakeOrderedAndProject(limit=21, orderBy=[formatted_date#114 ASC NULLS FIRST], output=[formatted_date#371,blocks_produced#372,unique_senders#373])
HashAggregate(keys=[formatted_date#114], functions=[count(hash#70), count(distinct from_address#75)])
WholeStageCodegen (7)
Exchange hashpartitioning(formatted_date#114, 200), true, [id=#217]
HashAggregate(keys=[formatted_date#114], functions=[merge_count(hash#70), partial_count(distinct from_address#75)])
HashAggregate(keys=[formatted_date#114, from_address#75], functions=[merge_count(hash#70)])
WholeStageCodegen (6)
Exchange hashpartitioning(formatted_date#114, from_address#75, 200), true, [id=#212]
HashAggregate(keys=[formatted_date#114, from_address#75], functions=[partial_count(hash#70)])
Project [formatted_date#114, hash#70, from_address#75]
SortMergeJoin [hash#17], [block_hash#72], Inner
WholeStageCodegen (5)
Sort [hash#17 ASC NULLS FIRST], false, 0
WholeStageCodegen (2)
Exchange hashpartitioning(hash#17, 200), true, [id=#194]
Project [hash#17, cast(from_unixtime(cast(timestamp#32 as bigint), yyyy-MM-dd HH:mm:ss, Some(GMT)) as date) AS formatted_date#114]
Filter (((cast(from_unixtime(cast(timestamp#32 as bigint), yyyy-MM-dd HH:mm:ss, Some(GMT)) as date) < 16709) AND (cast(from_unixtime(cast(timestamp#32 as bigint), yyyy-MM-dd HH:mm:ss, Some(GMT)) as date) > 16678)) AND isnotnull(hash#17))
WholeStageCodegen (1)
FileScan csv [hash#17,timestamp#32] Batched: false, DataFilters: [(cast(from_unixtime(cast(timestamp#32 as bigint), yyyy-MM-dd HH:mm:ss, Some(GMT)) as date) < 167..., Format: CSV, Location: InMemoryFileIndex[s3a://data-repository-bkt/ECS765/ethereum/blocks.csv], PartitionFilters: [], PushedFilters: [IsNotNull(hash)], ReadSchema: struct<hash:string,timestamp:int>
Sort [block_hash#72 ASC NULLS FIRST], false, 0
WholeStageCodegen (4)
Exchange hashpartitioning(block_hash#72, 200), true, [id=#203]
Project [hash#70, block_hash#72, from_address#75]
Filter isnotnull(block_hash#72)
WholeStageCodegen (3)
FileScan csv [hash#70,block_hash#72,from_address#75] Batched: false, DataFilters: [isnotnull(block_hash#72)], Format: CSV, Location: InMemoryFileIndex[s3a://data-repository-bkt/ECS765/ethereum/transactions.csv], PartitionFilters: [], PushedFilters: [IsNotNull(block_hash)], ReadSchema: struct<hash:string,block_hash:string,from_address:string>