digraph G {
0 [labelType="html" label="<b>Execute InsertIntoHadoopFsRelationCommand</b><br><br>number of written files: 30<br>written output: 2.2 KiB<br>number of output rows: 30<br>number of dynamic part: 0"];
subgraph cluster1 {
isCluster="true";
label="WholeStageCodegen (8)\n \nduration: total (min, med, max (stageId: taskId))\n2.5 s (60 ms, 65 ms, 323 ms (stage 26.0: task 1837))";
2 [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 26.0: task 1838))<br>peak memory total (min, med, max (stageId: taskId))<br>1921.9 MiB (64.1 MiB, 64.1 MiB, 64.1 MiB (stage 26.0: task 1838))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 26.0: task 1838))"];
}
3 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 30<br>shuffle write time total (min, med, max (stageId: taskId))<br>21 ms (0 ms, 0 ms, 1 ms (stage 25.0: task 1661))<br>records read: 30<br>local bytes read total (min, med, max (stageId: taskId))<br>2.5 KiB (86.0 B, 86.0 B, 86.0 B (stage 26.0: task 1838))<br>fetch wait time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 26.0: task 1838))<br>local blocks read: 30<br>data size total (min, med, max (stageId: taskId))<br>1440.0 B (0.0 B, 0.0 B, 144.0 B (stage 25.0: task 1656))<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>2.5 KiB (0.0 B, 0.0 B, 258.0 B (stage 25.0: task 1656))"];
subgraph cluster4 {
isCluster="true";
label="WholeStageCodegen (7)\n \nduration: total (min, med, max (stageId: taskId))\n690 ms (1 ms, 1 ms, 9 ms (stage 25.0: task 1640))";
5 [labelType="html" label="<b>HashAggregate</b><br><br>time in aggregation build total (min, med, max (stageId: taskId))<br>227 ms (0 ms, 0 ms, 7 ms (stage 25.0: task 1647))<br>peak memory total (min, med, max (stageId: taskId))<br>3.2 GiB (256.0 KiB, 256.0 KiB, 64.3 MiB (stage 25.0: task 1637))<br>number of output rows: 60<br>avg hash probe bucket list iters (min, med, max (stageId: taskId)):<br>(1, 1, 1 (stage 25.0: task 1637))"];
}
6 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 5,933<br>shuffle write time total (min, med, max (stageId: taskId))<br>1.1 s (4 ms, 5 ms, 11 ms (stage 19.0: task 1373))<br>records read: 11,866<br>local bytes read total (min, med, max (stageId: taskId))<br>425.7 KiB (0.0 B, 0.0 B, 12.1 KiB (stage 25.0: task 1656))<br>fetch wait time total (min, med, max (stageId: taskId))<br>4 ms (0 ms, 0 ms, 2 ms (stage 25.0: task 1640))<br>remote bytes read total (min, med, max (stageId: taskId))<br>425.2 KiB (0.0 B, 0.0 B, 11.9 KiB (stage 25.0: task 1656))<br>local blocks read: 4,949<br>remote blocks read: 4,945<br>data size total (min, med, max (stageId: taskId))<br>278.1 KiB (1344.0 B, 1440.0 B, 1440.0 B (stage 19.0: task 1240))<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>425.5 KiB (2016.0 B, 2.1 KiB, 2.2 KiB (stage 19.0: task 1333))"];
subgraph cluster7 {
isCluster="true";
label="WholeStageCodegen (6)\n \nduration: total (min, med, max (stageId: taskId))\n3.0 s (9 ms, 13 ms, 123 ms (stage 19.0: task 1422))";
8 [labelType="html" label="<b>HashAggregate</b><br><br>time in aggregation build total (min, med, max (stageId: taskId))<br>1.2 s (3 ms, 5 ms, 112 ms (stage 19.0: task 1422))<br>peak memory total (min, med, max (stageId: taskId))<br>50.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 19.0: task 1238))<br>number of output rows: 5,933"];
9 [labelType="html" label="<b>HashAggregate</b><br><br>time in aggregation build total (min, med, max (stageId: taskId))<br>879 ms (2 ms, 3 ms, 111 ms (stage 19.0: task 1422))<br>peak memory total (min, med, max (stageId: taskId))<br>50.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 19.0: task 1238))<br>number of output rows: 28,128"];
}
10 [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.8 s (10 ms, 13 ms, 30 ms (stage 18.0: task 1137))<br>records read: 85,947<br>local bytes read total (min, med, max (stageId: taskId))<br>3.6 MiB (10.3 KiB, 18.1 KiB, 34.5 KiB (stage 19.0: task 1354))<br>fetch wait time total (min, med, max (stageId: taskId))<br>211 ms (0 ms, 0 ms, 102 ms (stage 19.0: task 1422))<br>remote bytes read total (min, med, max (stageId: taskId))<br>3.6 MiB (10.5 KiB, 17.8 KiB, 32.5 KiB (stage 19.0: task 1283))<br>local blocks read: 17,660<br>remote blocks read: 17,652<br>data size total (min, med, max (stageId: taskId))<br>7.9 MiB (27.4 KiB, 40.0 KiB, 54.3 KiB (stage 18.0: task 1147))<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>7.2 MiB (28.0 KiB, 36.9 KiB, 46.0 KiB (stage 18.0: task 1147))"];
subgraph cluster11 {
isCluster="true";
label="WholeStageCodegen (5)\n \nduration: total (min, med, max (stageId: taskId))\n5.2 s (14 ms, 27 ms, 67 ms (stage 18.0: task 1135))";
12 [labelType="html" label="<b>HashAggregate</b><br><br>time in aggregation build total (min, med, max (stageId: taskId))<br>604 ms (2 ms, 3 ms, 35 ms (stage 18.0: task 1106))<br>peak memory total (min, med, max (stageId: taskId))<br>50.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 18.0: task 1037))<br>number of output rows: 85,947"];
13 [labelType="html" label="<br><b>Project</b><br><br>"];
14 [labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 173,805"];
}
subgraph cluster15 {
isCluster="true";
label="WholeStageCodegen (2)\n \nduration: total (min, med, max (stageId: taskId))\n1.0 s (0 ms, 7 ms, 39 ms (stage 18.0: task 1106))";
16 [labelType="html" label="<b>Sort</b><br><br>sort time total (min, med, max (stageId: taskId))<br>10 ms (0 ms, 0 ms, 1 ms (stage 18.0: task 1038))<br>peak memory total (min, med, max (stageId: taskId))<br>12.5 GiB (64.1 MiB, 64.1 MiB, 64.1 MiB (stage 18.0: task 1038))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 18.0: task 1037))"];
}
17 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 504,708<br>shuffle write time total (min, med, max (stageId: taskId))<br>71 ms (34 ms, 37 ms, 37 ms (stage 17.0: task 1036))<br>records read: 504,708<br>local bytes read total (min, med, max (stageId: taskId))<br>10.6 MiB (44.8 KiB, 53.8 KiB, 70.7 KiB (stage 18.0: task 1146))<br>fetch wait time total (min, med, max (stageId: taskId))<br>44 ms (0 ms, 0 ms, 30 ms (stage 18.0: task 1106))<br>remote bytes read total (min, med, max (stageId: taskId))<br>10.5 MiB (45.1 KiB, 53.6 KiB, 65.4 KiB (stage 18.0: task 1207))<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 17.0: task 1035))<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>21.2 MiB (10.0 MiB, 11.2 MiB, 11.2 MiB (stage 17.0: task 1035))"];
subgraph cluster18 {
isCluster="true";
label="WholeStageCodegen (1)\n \nduration: total (min, med, max (stageId: taskId))\n4.2 s (2.0 s, 2.2 s, 2.2 s (stage 17.0: task 1036))";
19 [labelType="html" label="<br><b>Project</b><br><br>"];
20 [labelType="html" label="<b>Filter</b><br><br>number of output rows: 504,708"];
}
21 [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"];
subgraph cluster22 {
isCluster="true";
label="WholeStageCodegen (4)\n \nduration: total (min, med, max (stageId: taskId))\n1.0 s (0 ms, 6 ms, 20 ms (stage 18.0: task 1094))";
23 [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 18.0: task 1037))<br>peak memory total (min, med, max (stageId: taskId))<br>12.5 GiB (64.1 MiB, 64.1 MiB, 64.1 MiB (stage 18.0: task 1037))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 18.0: task 1037))"];
}
24 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 144,178<br>shuffle write time total (min, med, max (stageId: taskId))<br>45 ms (0 ms, 0 ms, 23 ms (stage 16.0: task 1032))<br>records read: 144,178<br>local bytes read total (min, med, max (stageId: taskId))<br>4.7 MiB (18.4 KiB, 24.1 KiB, 28.3 KiB (stage 18.0: task 1113))<br>fetch wait time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 18.0: task 1037))<br>remote bytes read total (min, med, max (stageId: taskId))<br>4.6 MiB (19.1 KiB, 23.4 KiB, 29.2 KiB (stage 18.0: task 1116))<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 16.0: task 1031))<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>9.3 MiB (0.0 B, 0.0 B, 4.9 MiB (stage 16.0: task 1031))"];
subgraph cluster25 {
isCluster="true";
label="WholeStageCodegen (3)\n \nduration: total (min, med, max (stageId: taskId))\n10.9 s (225 ms, 2.7 s, 2.9 s (stage 16.0: task 1032))";
26 [labelType="html" label="<br><b>Project</b><br><br>"];
27 [labelType="html" label="<b>Filter</b><br><br>number of output rows: 144,178"];
}
28 [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;
8->6;
9->8;
10->9;
12->10;
13->12;
14->13;
16->14;
17->16;
19->17;
20->19;
21->20;
23->14;
24->23;
26->24;
27->26;
28->27;
}
29
Execute InsertIntoHadoopFsRelationCommand s3a://object-bucket-ec22589-9760a2e6-687e-4f95-b99b-c028f899c94a/september.csv, false, CSV, Map(header -> true, path -> s3a://object-bucket-ec22589-9760a2e6-687e-4f95-b99b-c028f899c94a/september.csv), ErrorIfExists, [formatted_date, block_count, unique_senders_count_number]
Sort [formatted_date#136 ASC NULLS FIRST], true, 0
WholeStageCodegen (8)
Exchange rangepartitioning(formatted_date#136 ASC NULLS FIRST, 200), true, [id=#322]
HashAggregate(keys=[formatted_date#136], functions=[count(block_hash#72), count(distinct from_address#75)])
WholeStageCodegen (7)
Exchange hashpartitioning(formatted_date#136, 200), true, [id=#318]
HashAggregate(keys=[formatted_date#136], functions=[merge_count(block_hash#72), partial_count(distinct from_address#75)])
HashAggregate(keys=[formatted_date#136, from_address#75], functions=[merge_count(block_hash#72)])
WholeStageCodegen (6)
Exchange hashpartitioning(formatted_date#136, from_address#75, 200), true, [id=#313]
HashAggregate(keys=[formatted_date#136, from_address#75], functions=[partial_count(block_hash#72)])
Project [block_hash#72, from_address#75, formatted_date#136]
SortMergeJoin [block_hash#72], [hash#17], Inner
WholeStageCodegen (5)
Sort [block_hash#72 ASC NULLS FIRST], false, 0
WholeStageCodegen (2)
Exchange hashpartitioning(block_hash#72, 200), true, [id=#295]
Project [block_hash#72, from_address#75]
Filter isnotnull(block_hash#72)
WholeStageCodegen (1)
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>
Sort [hash#17 ASC NULLS FIRST], false, 0
WholeStageCodegen (4)
Exchange hashpartitioning(hash#17, 200), true, [id=#304]
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 (3)
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:int>