digraph G {
0 [labelType="html" label="<br><b>TakeOrderedAndProject</b><br><br>"];
subgraph cluster1 {
isCluster="true";
label="WholeStageCodegen (1)\n \nduration: total (min, med, max (stageId: taskId))\n46 ms (14 ms, 32 ms, 32 ms (stage 63.0: task 79))";
2 [labelType="html" label="<br><b>Project</b><br><br>"];
3 [labelType="html" label="<b>Filter</b><br><br>number of output rows: 125"];
4 [labelType="html" label="<b>ColumnarToRow</b><br><br>number of output rows: 46,236<br>number of input batches: 13"];
}
5 [labelType="html" label="<b>Scan parquet spark_catalog.default.airports</b><br><br>number of files read: 2<br>scan time total (min, med, max (stageId: taskId))<br>39 ms (13 ms, 26 ms, 26 ms (stage 63.0: task 79))<br>metadata time: 0 ms<br>size of files read: 2.1 MiB<br>number of output rows: 46,236"];
2->0;
3->2;
4->3;
5->4;
}
6
TakeOrderedAndProject(limit=5, orderBy=[C_15#5379 DESC NULLS LAST], output=[C_13#5366,C_12#5367,C_18#5368,C_21#5369,C_17#5370,C_20#5371,C_22#5372,C_25#5373,C_23#5374,C_14#5375,C_24#5376,C_16#5377,C_19#5378,C_15#5379])
Project [id#5380 AS C_13#5366, type#5381 AS C_12#5367, name#5382 AS C_18#5368, (round((lat#5383 * 1000.0), 0) / 1000.0) AS C_21#5369, (round((lon#5384 * 1000.0), 0) / 1000.0) AS C_17#5370, (round((elev#5385 * 1000.0), 0) / 1000.0) AS C_20#5371, continent#5386 AS C_22#5372, country#5387 AS C_25#5373, region#5388 AS C_23#5374, city#5389 AS C_14#5375, iata#5390 AS C_24#5376, code#5391 AS C_16#5377, gps#5392 AS C_19#5378, elev#5385 AS C_15#5379]
Filter (((((isnotnull(lon#5384) AND isnotnull(lat#5383)) AND (lon#5384 <= -104.05)) AND (lon#5384 >= -111.05)) AND (lat#5383 >= 41.0)) AND (lat#5383 <= 45.0))
ColumnarToRow
WholeStageCodegen (1)
FileScan parquet spark_catalog.default.airports[id#5380,type#5381,name#5382,lat#5383,lon#5384,elev#5385,continent#5386,country#5387,region#5388,city#5389,iata#5390,code#5391,gps#5392] Batched: true, DataFilters: [isnotnull(lon#5384), isnotnull(lat#5383), (lon#5384 <= -104.05), (lon#5384 >= -111.05), (lat#538..., Format: Parquet, Location: InMemoryFileIndex(1 paths)[file:/home/acdcadmin/spark-warehouse/airports], PartitionFilters: [], PushedFilters: [IsNotNull(lon), IsNotNull(lat), LessThanOrEqual(lon,-104.05), GreaterThanOrEqual(lon,-111.05), G..., ReadSchema: struct<id:string,type:string,name:string,lat:double,lon:double,elev:double,continent:string,count...
== Physical Plan ==
TakeOrderedAndProject (5)
+- * Project (4)
+- * Filter (3)
+- * ColumnarToRow (2)
+- Scan parquet spark_catalog.default.airports (1)
(1) Scan parquet spark_catalog.default.airports
Output [13]: [id#5380, type#5381, name#5382, lat#5383, lon#5384, elev#5385, continent#5386, country#5387, region#5388, city#5389, iata#5390, code#5391, gps#5392]
Batched: true
Location: InMemoryFileIndex [file:/home/acdcadmin/spark-warehouse/airports]
PushedFilters: [IsNotNull(lon), IsNotNull(lat), LessThanOrEqual(lon,-104.05), GreaterThanOrEqual(lon,-111.05), GreaterThanOrEqual(lat,41.0), LessThanOrEqual(lat,45.0)]
ReadSchema: struct<id:string,type:string,name:string,lat:double,lon:double,elev:double,continent:string,country:string,region:string,city:string,iata:string,code:string,gps:string>
(2) ColumnarToRow [codegen id : 1]
Input [13]: [id#5380, type#5381, name#5382, lat#5383, lon#5384, elev#5385, continent#5386, country#5387, region#5388, city#5389, iata#5390, code#5391, gps#5392]
(3) Filter [codegen id : 1]
Input [13]: [id#5380, type#5381, name#5382, lat#5383, lon#5384, elev#5385, continent#5386, country#5387, region#5388, city#5389, iata#5390, code#5391, gps#5392]
Condition : (((((isnotnull(lon#5384) AND isnotnull(lat#5383)) AND (lon#5384 <= -104.05)) AND (lon#5384 >= -111.05)) AND (lat#5383 >= 41.0)) AND (lat#5383 <= 45.0))
(4) Project [codegen id : 1]
Output [14]: [id#5380 AS C_13#5366, type#5381 AS C_12#5367, name#5382 AS C_18#5368, (round((lat#5383 * 1000.0), 0) / 1000.0) AS C_21#5369, (round((lon#5384 * 1000.0), 0) / 1000.0) AS C_17#5370, (round((elev#5385 * 1000.0), 0) / 1000.0) AS C_20#5371, continent#5386 AS C_22#5372, country#5387 AS C_25#5373, region#5388 AS C_23#5374, city#5389 AS C_14#5375, iata#5390 AS C_24#5376, code#5391 AS C_16#5377, gps#5392 AS C_19#5378, elev#5385 AS C_15#5379]
Input [13]: [id#5380, type#5381, name#5382, lat#5383, lon#5384, elev#5385, continent#5386, country#5387, region#5388, city#5389, iata#5390, code#5391, gps#5392]
(5) TakeOrderedAndProject
Input [14]: [C_13#5366, C_12#5367, C_18#5368, C_21#5369, C_17#5370, C_20#5371, C_22#5372, C_25#5373, C_23#5374, C_14#5375, C_24#5376, C_16#5377, C_19#5378, C_15#5379]
Arguments: 5, [C_15#5379 DESC NULLS LAST], [C_13#5366, C_12#5367, C_18#5368, C_21#5369, C_17#5370, C_20#5371, C_22#5372, C_25#5373, C_23#5374, C_14#5375, C_24#5376, C_16#5377, C_19#5378, C_15#5379]