digraph G {
0 [labelType="html" label="<br><b>CollectLimit</b><br><br>"];
subgraph cluster1 {
isCluster="true";
label="WholeStageCodegen (9)\n \nduration: 48 ms";
2 [labelType="html" label="<br><b>Project</b><br><br>"];
}
3 [labelType="html" label="<br><b>Coalesce</b><br><br>"];
subgraph cluster4 {
isCluster="true";
label="WholeStageCodegen (8)\n \nduration: 21 ms";
5 [labelType="html" label="<b>Sort</b><br><br>sort time: 0 ms<br>peak memory: 1921.9 MiB<br>spill size: 0.0 B"];
}
6 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 30<br>shuffle write time total (min, med, max (stageId: taskId))<br>12 ms (0 ms, 0 ms, 0 ms (stage 29.0: task 1832))<br>records read: 30<br>local bytes read: 1290.0 B<br>fetch wait time: 0 ms<br>remote bytes read: 1290.0 B<br>local blocks read: 15<br>remote blocks read: 15<br>data size total (min, med, max (stageId: taskId))<br>1440.0 B (0.0 B, 0.0 B, 144.0 B (stage 29.0: task 1850))<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>2.5 KiB (0.0 B, 0.0 B, 258.0 B (stage 29.0: task 1850))"];
subgraph cluster7 {
isCluster="true";
label="WholeStageCodegen (7)\n \nduration: total (min, med, max (stageId: taskId))\n269 ms (0 ms, 0 ms, 67 ms (stage 24.0: task 1633))";
8 [labelType="html" label="<b>HashAggregate</b><br><br>time in aggregation build total (min, med, max (stageId: taskId))<br>228 ms (0 ms, 0 ms, 67 ms (stage 24.0: task 1633))<br>peak memory total (min, med, max (stageId: taskId))<br>3.2 GiB (256.0 KiB, 256.0 KiB, 64.3 MiB (stage 24.0: task 1632))<br>number of output rows: 60<br>avg hash probe bucket list iters (min, med, max (stageId: taskId)):<br>(1, 1, 1 (stage 24.0: task 1632))"];
}
9 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 5,933<br>shuffle write time total (min, med, max (stageId: taskId))<br>696 ms (3 ms, 3 ms, 9 ms (stage 23.0: task 1585))<br>records read: 11,866<br>local bytes read total (min, med, max (stageId: taskId))<br>425.9 KiB (0.0 B, 0.0 B, 12.1 KiB (stage 24.0: task 1650))<br>fetch wait time total (min, med, max (stageId: taskId))<br>61 ms (0 ms, 0 ms, 61 ms (stage 24.0: task 1633))<br>remote bytes read total (min, med, max (stageId: taskId))<br>425.1 KiB (0.0 B, 0.0 B, 11.9 KiB (stage 24.0: task 1650))<br>local blocks read: 4,951<br>remote blocks read: 4,943<br>data size total (min, med, max (stageId: taskId))<br>278.1 KiB (1344.0 B, 1440.0 B, 1440.0 B (stage 23.0: task 1433))<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>425.5 KiB (2006.0 B, 2.1 KiB, 2.2 KiB (stage 23.0: task 1527))"];
subgraph cluster10 {
isCluster="true";
label="WholeStageCodegen (6)\n \nduration: total (min, med, max (stageId: taskId))\n1.7 s (6 ms, 8 ms, 35 ms (stage 23.0: task 1567))";
11 [labelType="html" label="<b>HashAggregate</b><br><br>time in aggregation build total (min, med, max (stageId: taskId))<br>583 ms (2 ms, 3 ms, 25 ms (stage 23.0: task 1457))<br>peak memory total (min, med, max (stageId: taskId))<br>50.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 23.0: task 1431))<br>number of output rows: 5,933"];
12 [labelType="html" label="<b>HashAggregate</b><br><br>time in aggregation build total (min, med, max (stageId: taskId))<br>382 ms (1 ms, 2 ms, 24 ms (stage 23.0: task 1457))<br>peak memory total (min, med, max (stageId: taskId))<br>50.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 23.0: task 1431))<br>number of output rows: 28,128"];
}
13 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 85,947<br>shuffle write time total (min, med, max (stageId: taskId))<br>1.8 s (7 ms, 8 ms, 11 ms (stage 22.0: task 1398))<br>records read: 85,947<br>local bytes read total (min, med, max (stageId: taskId))<br>3.6 MiB (12.0 KiB, 18.1 KiB, 29.4 KiB (stage 23.0: task 1548))<br>fetch wait time total (min, med, max (stageId: taskId))<br>46 ms (0 ms, 0 ms, 21 ms (stage 23.0: task 1457))<br>remote bytes read total (min, med, max (stageId: taskId))<br>3.6 MiB (11.7 KiB, 17.8 KiB, 31.7 KiB (stage 23.0: task 1548))<br>local blocks read: 17,627<br>remote blocks read: 17,685<br>data size total (min, med, max (stageId: taskId))<br>7.9 MiB (27.4 KiB, 40.0 KiB, 54.3 KiB (stage 22.0: task 1341))<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>7.2 MiB (28.0 KiB, 36.9 KiB, 46.0 KiB (stage 22.0: task 1341))"];
subgraph cluster14 {
isCluster="true";
label="WholeStageCodegen (5)\n \nduration: total (min, med, max (stageId: taskId))\n3.2 s (11 ms, 13 ms, 48 ms (stage 22.0: task 1419))";
15 [labelType="html" label="<b>HashAggregate</b><br><br>time in aggregation build total (min, med, max (stageId: taskId))<br>435 ms (1 ms, 2 ms, 37 ms (stage 22.0: task 1419))<br>peak memory total (min, med, max (stageId: taskId))<br>50.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 22.0: task 1231))<br>number of output rows: 85,947"];
16 [labelType="html" label="<br><b>Project</b><br><br>"];
17 [labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 173,805"];
}
subgraph cluster18 {
isCluster="true";
label="WholeStageCodegen (2)\n \nduration: total (min, med, max (stageId: taskId))\n671 ms (0 ms, 4 ms, 41 ms (stage 22.0: task 1419))";
19 [labelType="html" label="<b>Sort</b><br><br>sort time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 22.0: task 1231))<br>peak memory total (min, med, max (stageId: taskId))<br>12.5 GiB (64.1 MiB, 64.1 MiB, 64.1 MiB (stage 22.0: task 1231))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 22.0: task 1231))"];
}
20 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 144,178<br>shuffle write time total (min, med, max (stageId: taskId))<br>29 ms (0 ms, 0 ms, 15 ms (stage 21.0: task 1227))<br>records read: 144,178<br>local bytes read total (min, med, max (stageId: taskId))<br>4.7 MiB (18.4 KiB, 24.0 KiB, 29.2 KiB (stage 22.0: task 1310))<br>fetch wait time total (min, med, max (stageId: taskId))<br>82 ms (0 ms, 0 ms, 35 ms (stage 22.0: task 1419))<br>remote bytes read total (min, med, max (stageId: taskId))<br>4.6 MiB (18.5 KiB, 23.4 KiB, 29.2 KiB (stage 22.0: task 1266))<br>local blocks read: 200<br>remote blocks read: 200<br>data size total (min, med, max (stageId: taskId))<br>15.4 MiB (0.0 B, 0.0 B, 8.2 MiB (stage 21.0: task 1227))<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>9.3 MiB (0.0 B, 0.0 B, 4.9 MiB (stage 21.0: task 1227))"];
subgraph cluster21 {
isCluster="true";
label="WholeStageCodegen (1)\n \nduration: total (min, med, max (stageId: taskId))\n7.0 s (153 ms, 1.7 s, 1.9 s (stage 21.0: task 1228))";
22 [labelType="html" label="<br><b>Project</b><br><br>"];
23 [labelType="html" label="<b>Filter</b><br><br>number of output rows: 144,178"];
}
24 [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 cluster25 {
isCluster="true";
label="WholeStageCodegen (4)\n \nduration: total (min, med, max (stageId: taskId))\n655 ms (0 ms, 3 ms, 78 ms (stage 22.0: task 1282))";
26 [labelType="html" label="<b>Sort</b><br><br>sort time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 22.0: task 1231))<br>peak memory total (min, med, max (stageId: taskId))<br>12.5 GiB (64.1 MiB, 64.1 MiB, 64.1 MiB (stage 22.0: task 1232))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 22.0: task 1231))"];
}
27 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 504,708<br>shuffle write time total (min, med, max (stageId: taskId))<br>42 ms (20 ms, 21 ms, 21 ms (stage 20.0: task 1224))<br>records read: 504,708<br>local bytes read total (min, med, max (stageId: taskId))<br>10.6 MiB (44.8 KiB, 53.3 KiB, 65.4 KiB (stage 22.0: task 1401))<br>fetch wait time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 22.0: task 1231))<br>remote bytes read total (min, med, max (stageId: taskId))<br>10.6 MiB (45.1 KiB, 54.0 KiB, 70.7 KiB (stage 22.0: task 1340))<br>local blocks read: 200<br>remote blocks read: 200<br>data size total (min, med, max (stageId: taskId))<br>69.3 MiB (32.5 MiB, 36.8 MiB, 36.8 MiB (stage 20.0: task 1224))<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>21.2 MiB (10.0 MiB, 11.2 MiB, 11.2 MiB (stage 20.0: task 1224))"];
subgraph cluster28 {
isCluster="true";
label="WholeStageCodegen (3)\n \nduration: total (min, med, max (stageId: taskId))\n2.5 s (1.2 s, 1.3 s, 1.3 s (stage 20.0: task 1224))";
29 [labelType="html" label="<br><b>Project</b><br><br>"];
30 [labelType="html" label="<b>Filter</b><br><br>number of output rows: 504,708"];
}
31 [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;
8->6;
9->8;
11->9;
12->11;
13->12;
15->13;
16->15;
17->16;
19->17;
20->19;
22->20;
23->22;
24->23;
26->17;
27->26;
29->27;
30->29;
31->30;
}
32
CollectLimit 31
Project [formatted_date#136, cast(block_count#352L as string) AS block_count#375, cast(unique_senders_count_number#353L as string) AS unique_senders_count_number#376]
WholeStageCodegen (9)
Coalesce 1
Sort [formatted_date#136 ASC NULLS FIRST], true, 0
WholeStageCodegen (8)
Exchange rangepartitioning(formatted_date#136 ASC NULLS FIRST, 200), true, [id=#349]
HashAggregate(keys=[formatted_date#136], functions=[count(1), count(distinct from_address#75)])
WholeStageCodegen (7)
Exchange hashpartitioning(formatted_date#136, 200), true, [id=#345]
HashAggregate(keys=[formatted_date#136], functions=[merge_count(1), partial_count(distinct from_address#75)])
HashAggregate(keys=[formatted_date#136, from_address#75], functions=[merge_count(1)])
WholeStageCodegen (6)
Exchange hashpartitioning(formatted_date#136, from_address#75, 200), true, [id=#340]
HashAggregate(keys=[formatted_date#136, from_address#75], functions=[partial_count(1)])
Project [formatted_date#136, 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=#322]
Project [hash#17, date_format(cast(from_unixtime(cast(timestamp#32 as bigint), yyyy-MM-dd HH:mm:ss, Some(GMT)) as timestamp), yyyy-MM-dd, Some(GMT)) AS formatted_date#136]
Filter (((date_format(cast(from_unixtime(cast(timestamp#32 as bigint), yyyy-MM-dd HH:mm:ss, Some(GMT)) as timestamp), yyyy-MM-dd, Some(GMT)) >= 2015-09-01) AND (date_format(cast(from_unixtime(cast(timestamp#32 as bigint), yyyy-MM-dd HH:mm:ss, Some(GMT)) as timestamp), yyyy-MM-dd, Some(GMT)) <= 2015-09-30)) AND isnotnull(hash#17))
WholeStageCodegen (1)
FileScan csv [hash#17,timestamp#32] Batched: false, DataFilters: [(date_format(cast(from_unixtime(cast(timestamp#32 as bigint), yyyy-MM-dd HH:mm:ss, Some(GMT)) as..., Format: CSV, Location: InMemoryFileIndex[s3a://data-repository-bkt/ECS765/ethereum/blocks.csv], PartitionFilters: [], PushedFilters: [IsNotNull(hash)], ReadSchema: struct<hash:string,timestamp:string>
Sort [block_hash#72 ASC NULLS FIRST], false, 0
WholeStageCodegen (4)
Exchange hashpartitioning(block_hash#72, 200), true, [id=#331]
Project [block_hash#72, from_address#75]
Filter isnotnull(block_hash#72)
WholeStageCodegen (3)
FileScan csv [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<block_hash:string,from_address:string>