== Physical Plan == CollectLimit (21) +- InMemoryTableScan (1) +- InMemoryRelation (2) +- * Project (20) +- * Sort (19) +- Exchange (18) +- * Project (17) +- * BroadcastHashJoin Inner BuildLeft (16) :- BroadcastExchange (9) : +- * Filter (8) : +- * ColumnarToRow (7) : +- InMemoryTableScan (3) : +- InMemoryRelation (4) : +- * Project (6) : +- Scan csv (5) +- * Project (15) +- * Filter (14) +- InMemoryTableScan (10) +- InMemoryRelation (11) +- * Project (13) +- Scan csv (12) (1) InMemoryTableScan Output [3]: [cap#94180893, turnover#94178032, days_hold#94180927] Arguments: [cap#94180893, turnover#94178032, days_hold#94180927] (2) InMemoryRelation Arguments: [cap#94180893, turnover#94178032, days_hold#94180927], CachedRDDBuilder(org.apache.spark.sql.execution.columnar.DefaultCachedBatchSerializer@208e3fd9,StorageLevel(disk, memory, deserialized, 1 replicas),*(3) Project [cap#94180893, turnover#94178032, (1.0 / cast(turnover#94178032 as double)) AS days_hold#94180927] +- *(3) Sort [cap_sort#94180804 ASC NULLS FIRST], true, 0 +- Exchange rangepartitioning(cap_sort#94180804 ASC NULLS FIRST, 200), ENSURE_REQUIREMENTS, [id=#7519477] +- *(2) Project [turnover#94178032, cap_description#94180803 AS cap#94180893, cap_sort#94180804] +- *(2) BroadcastHashJoin [knownfloatingpointnormalized(normalizenanandzero(cap#94177927))], [knownfloatingpointnormalized(normalizenanandzero(cast(cap#94160394 as float)))], Inner, BuildLeft, false :- BroadcastExchange HashedRelationBroadcastMode(List(knownfloatingpointnormalized(normalizenanandzero(input[0, float, false]))),false), [id=#7519469] : +- *(1) Filter isnotnull(cap#94177927) : +- *(1) ColumnarToRow : +- InMemoryTableScan [cap#94177927, turnover#94178032], [isnotnull(cap#94177927)] : +- InMemoryRelation [cap#94177927, retIC#94177940, resretIC#94177941, numcos#94177944, numdates#94177945, annual_bmret#94177946, annual_ret#94177947, std_ret#94177948, Sharpe_ret#94177961, PctPos_ret#94177962, TR_ret#94177963, IR_ret#94177964, annual_resret#94177965, std_resret#94177966, Sharpe_resret#94177967, PctPos_resret#94177968, TR_resret#94177969, IR_resret#94177970, annual_retnet#94177971, std_retnet#94177972, Sharpe_retnet#94177973, PctPos_retnet#94177974, TR_retnet#94177975, IR_retnet#94178031, ... 2 more fields], StorageLevel(disk, memory, deserialized, 1 replicas) : +- *(1) Project [CASE WHEN ((cap#94177775 = NA) OR (cap#94177775 = null)) THEN null ELSE cast(cap#94177775 as float) END AS cap#94177927, CASE WHEN ((retIC#94177776 = NA) OR (retIC#94177776 = null)) THEN null ELSE cast(retIC#94177776 as float) END AS retIC#94177940, CASE WHEN ((resretIC#94177777 = NA) OR (resretIC#94177777 = null)) THEN null ELSE cast(resretIC#94177777 as float) END AS resretIC#94177941, CASE WHEN ((numcos#94177778 = NA) OR (numcos#94177778 = null)) THEN null ELSE cast(numcos#94177778 as float) END AS numcos#94177944, CASE WHEN ((numdates#94177779 = NA) OR (numdates#94177779 = null)) THEN null ELSE cast(numdates#94177779 as int) END AS numdates#94177945, CASE WHEN ((annual_bmret#94177780 = NA) OR (annual_bmret#94177780 = null)) THEN null ELSE cast(annual_bmret#94177780 as float) END AS annual_bmret#94177946, CASE WHEN ((annual_ret#94177781 = NA) OR (annual_ret#94177781 = null)) THEN null ELSE cast(annual_ret#94177781 as float) END AS annual_ret#94177947, CASE WHEN ((std_ret#94177782 = NA) OR (std_ret#94177782 = null)) THEN null ELSE cast(std_ret#94177782 as float) END AS std_ret#94177948, CASE WHEN ((Sharpe_ret#94177783 = NA) OR (Sharpe_ret#94177783 = null)) THEN null ELSE cast(Sharpe_ret#94177783 as float) END AS Sharpe_ret#94177961, CASE WHEN ((PctPos_ret#94177784 = NA) OR (PctPos_ret#94177784 = null)) THEN null ELSE cast(PctPos_ret#94177784 as float) END AS PctPos_ret#94177962, CASE WHEN ((TR_ret#94177785 = NA) OR (TR_ret#94177785 = null)) THEN null ELSE cast(TR_ret#94177785 as float) END AS TR_ret#94177963, CASE WHEN ((IR_ret#94177786 = NA) OR (IR_ret#94177786 = null)) THEN null ELSE cast(IR_ret#94177786 as float) END AS IR_ret#94177964, CASE WHEN ((annual_resret#94177787 = NA) OR (annual_resret#94177787 = null)) THEN null ELSE cast(annual_resret#94177787 as float) END AS annual_resret#94177965, CASE WHEN ((std_resret#94177788 = NA) OR (std_resret#94177788 = null)) THEN null ELSE cast(std_resret#94177788 as float) END AS std_resret#94177966, CASE WHEN ((Sharpe_resret#94177789 = NA) OR (Sharpe_resret#94177789 = null)) THEN null ELSE cast(Sharpe_resret#94177789 as float) END AS Sharpe_resret#94177967, CASE WHEN ((PctPos_resret#94177790 = NA) OR (PctPos_resret#94177790 = null)) THEN null ELSE cast(PctPos_resret#94177790 as float) END AS PctPos_resret#94177968, CASE WHEN ((TR_resret#94177791 = NA) OR (TR_resret#94177791 = null)) THEN null ELSE cast(TR_resret#94177791 as float) END AS TR_resret#94177969, CASE WHEN ((IR_resret#94177792 = NA) OR (IR_resret#94177792 = null)) THEN null ELSE cast(IR_resret#94177792 as float) END AS IR_resret#94177970, CASE WHEN ((annual_retnet#94177793 = NA) OR (annual_retnet#94177793 = null)) THEN null ELSE cast(annual_retnet#94177793 as float) END AS annual_retnet#94177971, CASE WHEN ((std_retnet#94177794 = NA) OR (std_retnet#94177794 = null)) THEN null ELSE cast(std_retnet#94177794 as float) END AS std_retnet#94177972, CASE WHEN ((Sharpe_retnet#94177795 = NA) OR (Sharpe_retnet#94177795 = null)) THEN null ELSE cast(Sharpe_retnet#94177795 as float) END AS Sharpe_retnet#94177973, CASE WHEN ((PctPos_retnet#94177796 = NA) OR (PctPos_retnet#94177796 = null)) THEN null ELSE cast(PctPos_retnet#94177796 as float) END AS PctPos_retnet#94177974, CASE WHEN ((TR_retnet#94177797 = NA) OR (TR_retnet#94177797 = null)) THEN null ELSE cast(TR_retnet#94177797 as float) END AS TR_retnet#94177975, CASE WHEN ((IR_retnet#94177798 = NA) OR (IR_retnet#94177798 = null)) THEN null ELSE cast(IR_retnet#94177798 as float) END AS IR_retnet#94178031, ... 2 more fields] : +- FileScan csv [cap#94177775,retIC#94177776,resretIC#94177777,numcos#94177778,numdates#94177779,annual_bmret#94177780,annual_ret#94177781,std_ret#94177782,Sharpe_ret#94177783,PctPos_ret#94177784,TR_ret#94177785,IR_ret#94177786,annual_resret#94177787,std_resret#94177788,Sharpe_resret#94177789,PctPos_resret#94177790,TR_resret#94177791,IR_resret#94177792,annual_retnet#94177793,std_retnet#94177794,Sharpe_retnet#94177795,PctPos_retnet#94177796,TR_retnet#94177797,IR_retnet#94177798,... 2 more fields] Batched: false, DataFilters: [], Format: CSV, Location: InMemoryFileIndex(1 paths)[file:/srv/plusamp/data/default/ea-market/output/risk_factors/volatilit..., PartitionFilters: [], PushedFilters: [], ReadSchema: struct<cap:string,retIC:string,resretIC:string,numcos:string,numdates:string,annual_bmret:string,... +- *(2) Project [cap#94160394, description#94160396 AS cap_description#94180803, sort#94160395 AS cap_sort#94180804] +- *(2) Filter isnotnull(cap#94160394) +- InMemoryTableScan [cap#94160394, description#94160396, sort#94160395], [isnotnull(cap#94160394)] +- InMemoryRelation [cap#94160394, sort#94160395, description#94160396, universe#94160397], StorageLevel(disk, memory, deserialized, 1 replicas) +- *(1) Project [CASE WHEN ((cap#94160377 = NA) OR (cap#94160377 = null)) THEN null ELSE cast(cap#94160377 as int) END AS cap#94160394, CASE WHEN (sort#94160378 = null) THEN null ELSE sort#94160378 END AS sort#94160395, CASE WHEN (description#94160379 = null) THEN null ELSE description#94160379 END AS description#94160396, CASE WHEN ((universe#94160380 = NA) OR (universe#94160380 = null)) THEN null ELSE cast(universe#94160380 as int) END AS universe#94160397] +- FileScan csv [cap#94160377,sort#94160378,description#94160379,universe#94160380] Batched: false, DataFilters: [], Format: CSV, Location: InMemoryFileIndex(1 paths)[file:/srv/plusamp/data/default/ea-market/curate/curate_cap.csv], PartitionFilters: [], PushedFilters: [], ReadSchema: struct<cap:string,sort:string,description:string,universe:string> ,None), [cap_sort#94180804 ASC NULLS FIRST] (3) InMemoryTableScan Output [2]: [cap#94177927, turnover#94178032] Arguments: [cap#94177927, turnover#94178032], [isnotnull(cap#94177927)] (4) InMemoryRelation Arguments: [cap#94177927, retIC#94177940, resretIC#94177941, numcos#94177944, numdates#94177945, annual_bmret#94177946, annual_ret#94177947, std_ret#94177948, Sharpe_ret#94177961, PctPos_ret#94177962, TR_ret#94177963, IR_ret#94177964, annual_resret#94177965, std_resret#94177966, Sharpe_resret#94177967, PctPos_resret#94177968, TR_resret#94177969, IR_resret#94177970, annual_retnet#94177971, std_retnet#94177972, Sharpe_retnet#94177973, PctPos_retnet#94177974, TR_retnet#94177975, IR_retnet#94178031, ... 2 more fields], CachedRDDBuilder(org.apache.spark.sql.execution.columnar.DefaultCachedBatchSerializer@208e3fd9,StorageLevel(disk, memory, deserialized, 1 replicas),*(1) Project [CASE WHEN ((cap#94177775 = NA) OR (cap#94177775 = null)) THEN null ELSE cast(cap#94177775 as float) END AS cap#94177927, CASE WHEN ((retIC#94177776 = NA) OR (retIC#94177776 = null)) THEN null ELSE cast(retIC#94177776 as float) END AS retIC#94177940, CASE WHEN ((resretIC#94177777 = NA) OR (resretIC#94177777 = null)) THEN null ELSE cast(resretIC#94177777 as float) END AS resretIC#94177941, CASE WHEN ((numcos#94177778 = NA) OR (numcos#94177778 = null)) THEN null ELSE cast(numcos#94177778 as float) END AS numcos#94177944, CASE WHEN ((numdates#94177779 = NA) OR (numdates#94177779 = null)) THEN null ELSE cast(numdates#94177779 as int) END AS numdates#94177945, CASE WHEN ((annual_bmret#94177780 = NA) OR (annual_bmret#94177780 = null)) THEN null ELSE cast(annual_bmret#94177780 as float) END AS annual_bmret#94177946, CASE WHEN ((annual_ret#94177781 = NA) OR (annual_ret#94177781 = null)) THEN null ELSE cast(annual_ret#94177781 as float) END AS annual_ret#94177947, CASE WHEN ((std_ret#94177782 = NA) OR (std_ret#94177782 = null)) THEN null ELSE cast(std_ret#94177782 as float) END AS std_ret#94177948, CASE WHEN ((Sharpe_ret#94177783 = NA) OR (Sharpe_ret#94177783 = null)) THEN null ELSE cast(Sharpe_ret#94177783 as float) END AS Sharpe_ret#94177961, CASE WHEN ((PctPos_ret#94177784 = NA) OR (PctPos_ret#94177784 = null)) THEN null ELSE cast(PctPos_ret#94177784 as float) END AS PctPos_ret#94177962, CASE WHEN ((TR_ret#94177785 = NA) OR (TR_ret#94177785 = null)) THEN null ELSE cast(TR_ret#94177785 as float) END AS TR_ret#94177963, CASE WHEN ((IR_ret#94177786 = NA) OR (IR_ret#94177786 = null)) THEN null ELSE cast(IR_ret#94177786 as float) END AS IR_ret#94177964, CASE WHEN ((annual_resret#94177787 = NA) OR (annual_resret#94177787 = null)) THEN null ELSE cast(annual_resret#94177787 as float) END AS annual_resret#94177965, CASE WHEN ((std_resret#94177788 = NA) OR (std_resret#94177788 = null)) THEN null ELSE cast(std_resret#94177788 as float) END AS std_resret#94177966, CASE WHEN ((Sharpe_resret#94177789 = NA) OR (Sharpe_resret#94177789 = null)) THEN null ELSE cast(Sharpe_resret#94177789 as float) END AS Sharpe_resret#94177967, CASE WHEN ((PctPos_resret#94177790 = NA) OR (PctPos_resret#94177790 = null)) THEN null ELSE cast(PctPos_resret#94177790 as float) END AS PctPos_resret#94177968, CASE WHEN ((TR_resret#94177791 = NA) OR (TR_resret#94177791 = null)) THEN null ELSE cast(TR_resret#94177791 as float) END AS TR_resret#94177969, CASE WHEN ((IR_resret#94177792 = NA) OR (IR_resret#94177792 = null)) THEN null ELSE cast(IR_resret#94177792 as float) END AS IR_resret#94177970, CASE WHEN ((annual_retnet#94177793 = NA) OR (annual_retnet#94177793 = null)) THEN null ELSE cast(annual_retnet#94177793 as float) END AS annual_retnet#94177971, CASE WHEN ((std_retnet#94177794 = NA) OR (std_retnet#94177794 = null)) THEN null ELSE cast(std_retnet#94177794 as float) END AS std_retnet#94177972, CASE WHEN ((Sharpe_retnet#94177795 = NA) OR (Sharpe_retnet#94177795 = null)) THEN null ELSE cast(Sharpe_retnet#94177795 as float) END AS Sharpe_retnet#94177973, CASE WHEN ((PctPos_retnet#94177796 = NA) OR (PctPos_retnet#94177796 = null)) THEN null ELSE cast(PctPos_retnet#94177796 as float) END AS PctPos_retnet#94177974, CASE WHEN ((TR_retnet#94177797 = NA) OR (TR_retnet#94177797 = null)) THEN null ELSE cast(TR_retnet#94177797 as float) END AS TR_retnet#94177975, CASE WHEN ((IR_retnet#94177798 = NA) OR (IR_retnet#94177798 = null)) THEN null ELSE cast(IR_retnet#94177798 as float) END AS IR_retnet#94178031, ... 2 more fields] +- FileScan csv [cap#94177775,retIC#94177776,resretIC#94177777,numcos#94177778,numdates#94177779,annual_bmret#94177780,annual_ret#94177781,std_ret#94177782,Sharpe_ret#94177783,PctPos_ret#94177784,TR_ret#94177785,IR_ret#94177786,annual_resret#94177787,std_resret#94177788,Sharpe_resret#94177789,PctPos_resret#94177790,TR_resret#94177791,IR_resret#94177792,annual_retnet#94177793,std_retnet#94177794,Sharpe_retnet#94177795,PctPos_retnet#94177796,TR_retnet#94177797,IR_retnet#94177798,... 2 more fields] Batched: false, DataFilters: [], Format: CSV, Location: InMemoryFileIndex(1 paths)[file:/srv/plusamp/data/default/ea-market/output/risk_factors/volatilit..., PartitionFilters: [], PushedFilters: [], ReadSchema: struct<cap:string,retIC:string,resretIC:string,numcos:string,numdates:string,annual_bmret:string,... ,None) (5) Scan csv Output [26]: [cap#94177775, retIC#94177776, resretIC#94177777, numcos#94177778, numdates#94177779, annual_bmret#94177780, annual_ret#94177781, std_ret#94177782, Sharpe_ret#94177783, PctPos_ret#94177784, TR_ret#94177785, IR_ret#94177786, annual_resret#94177787, std_resret#94177788, Sharpe_resret#94177789, PctPos_resret#94177790, TR_resret#94177791, IR_resret#94177792, annual_retnet#94177793, std_retnet#94177794, Sharpe_retnet#94177795, PctPos_retnet#94177796, TR_retnet#94177797, IR_retnet#94177798, turnover#94177799, coverage#94177800] Batched: false Location: InMemoryFileIndex [file:/srv/plusamp/data/default/ea-market/output/risk_factors/volatility/stats_cap.csv] ReadSchema: struct<cap:string,retIC:string,resretIC:string,numcos:string,numdates:string,annual_bmret:string,annual_ret:string,std_ret:string,Sharpe_ret:string,PctPos_ret:string,TR_ret:string,IR_ret:string,annual_resret:string,std_resret:string,Sharpe_resret:string,PctPos_resret:string,TR_resret:string,IR_resret:string,annual_retnet:string,std_retnet:string,Sharpe_retnet:string,PctPos_retnet:string,TR_retnet:string,IR_retnet:string,turnover:string,coverage:string> (6) Project [codegen id : 1] Output [26]: [CASE WHEN ((cap#94177775 = NA) OR (cap#94177775 = null)) THEN null ELSE cast(cap#94177775 as float) END AS cap#94177927, CASE WHEN ((retIC#94177776 = NA) OR (retIC#94177776 = null)) THEN null ELSE cast(retIC#94177776 as float) END AS retIC#94177940, CASE WHEN ((resretIC#94177777 = NA) OR (resretIC#94177777 = null)) THEN null ELSE cast(resretIC#94177777 as float) END AS resretIC#94177941, CASE WHEN ((numcos#94177778 = NA) OR (numcos#94177778 = null)) THEN null ELSE cast(numcos#94177778 as float) END AS numcos#94177944, CASE WHEN ((numdates#94177779 = NA) OR (numdates#94177779 = null)) THEN null ELSE cast(numdates#94177779 as int) END AS numdates#94177945, CASE WHEN ((annual_bmret#94177780 = NA) OR (annual_bmret#94177780 = null)) THEN null ELSE cast(annual_bmret#94177780 as float) END AS annual_bmret#94177946, CASE WHEN ((annual_ret#94177781 = NA) OR (annual_ret#94177781 = null)) THEN null ELSE cast(annual_ret#94177781 as float) END AS annual_ret#94177947, CASE WHEN ((std_ret#94177782 = NA) OR (std_ret#94177782 = null)) THEN null ELSE cast(std_ret#94177782 as float) END AS std_ret#94177948, CASE WHEN ((Sharpe_ret#94177783 = NA) OR (Sharpe_ret#94177783 = null)) THEN null ELSE cast(Sharpe_ret#94177783 as float) END AS Sharpe_ret#94177961, CASE WHEN ((PctPos_ret#94177784 = NA) OR (PctPos_ret#94177784 = null)) THEN null ELSE cast(PctPos_ret#94177784 as float) END AS PctPos_ret#94177962, CASE WHEN ((TR_ret#94177785 = NA) OR (TR_ret#94177785 = null)) THEN null ELSE cast(TR_ret#94177785 as float) END AS TR_ret#94177963, CASE WHEN ((IR_ret#94177786 = NA) OR (IR_ret#94177786 = null)) THEN null ELSE cast(IR_ret#94177786 as float) END AS IR_ret#94177964, CASE WHEN ((annual_resret#94177787 = NA) OR (annual_resret#94177787 = null)) THEN null ELSE cast(annual_resret#94177787 as float) END AS annual_resret#94177965, CASE WHEN ((std_resret#94177788 = NA) OR (std_resret#94177788 = null)) THEN null ELSE cast(std_resret#94177788 as float) END AS std_resret#94177966, CASE WHEN ((Sharpe_resret#94177789 = NA) OR (Sharpe_resret#94177789 = null)) THEN null ELSE cast(Sharpe_resret#94177789 as float) END AS Sharpe_resret#94177967, CASE WHEN ((PctPos_resret#94177790 = NA) OR (PctPos_resret#94177790 = null)) THEN null ELSE cast(PctPos_resret#94177790 as float) END AS PctPos_resret#94177968, CASE WHEN ((TR_resret#94177791 = NA) OR (TR_resret#94177791 = null)) THEN null ELSE cast(TR_resret#94177791 as float) END AS TR_resret#94177969, CASE WHEN ((IR_resret#94177792 = NA) OR (IR_resret#94177792 = null)) THEN null ELSE cast(IR_resret#94177792 as float) END AS IR_resret#94177970, CASE WHEN ((annual_retnet#94177793 = NA) OR (annual_retnet#94177793 = null)) THEN null ELSE cast(annual_retnet#94177793 as float) END AS annual_retnet#94177971, CASE WHEN ((std_retnet#94177794 = NA) OR (std_retnet#94177794 = null)) THEN null ELSE cast(std_retnet#94177794 as float) END AS std_retnet#94177972, CASE WHEN ((Sharpe_retnet#94177795 = NA) OR (Sharpe_retnet#94177795 = null)) THEN null ELSE cast(Sharpe_retnet#94177795 as float) END AS Sharpe_retnet#94177973, CASE WHEN ((PctPos_retnet#94177796 = NA) OR (PctPos_retnet#94177796 = null)) THEN null ELSE cast(PctPos_retnet#94177796 as float) END AS PctPos_retnet#94177974, CASE WHEN ((TR_retnet#94177797 = NA) OR (TR_retnet#94177797 = null)) THEN null ELSE cast(TR_retnet#94177797 as float) END AS TR_retnet#94177975, CASE WHEN ((IR_retnet#94177798 = NA) OR (IR_retnet#94177798 = null)) THEN null ELSE cast(IR_retnet#94177798 as float) END AS IR_retnet#94178031, CASE WHEN ((turnover#94177799 = NA) OR (turnover#94177799 = null)) THEN null ELSE cast(turnover#94177799 as float) END AS turnover#94178032, CASE WHEN ((coverage#94177800 = NA) OR (coverage#94177800 = null)) THEN null ELSE cast(coverage#94177800 as float) END AS coverage#94178033] Input [26]: [cap#94177775, retIC#94177776, resretIC#94177777, numcos#94177778, numdates#94177779, annual_bmret#94177780, annual_ret#94177781, std_ret#94177782, Sharpe_ret#94177783, PctPos_ret#94177784, TR_ret#94177785, IR_ret#94177786, annual_resret#94177787, std_resret#94177788, Sharpe_resret#94177789, PctPos_resret#94177790, TR_resret#94177791, IR_resret#94177792, annual_retnet#94177793, std_retnet#94177794, Sharpe_retnet#94177795, PctPos_retnet#94177796, TR_retnet#94177797, IR_retnet#94177798, turnover#94177799, coverage#94177800] (7) ColumnarToRow [codegen id : 1] Input [2]: [cap#94177927, turnover#94178032] (8) Filter [codegen id : 1] Input [2]: [cap#94177927, turnover#94178032] Condition : isnotnull(cap#94177927) (9) BroadcastExchange Input [2]: [cap#94177927, turnover#94178032] Arguments: HashedRelationBroadcastMode(List(knownfloatingpointnormalized(normalizenanandzero(input[0, float, false]))),false), [id=#7519469] (10) InMemoryTableScan Output [3]: [cap#94160394, description#94160396, sort#94160395] Arguments: [cap#94160394, description#94160396, sort#94160395], [isnotnull(cap#94160394)] (11) InMemoryRelation Arguments: [cap#94160394, sort#94160395, description#94160396, universe#94160397], CachedRDDBuilder(org.apache.spark.sql.execution.columnar.DefaultCachedBatchSerializer@208e3fd9,StorageLevel(disk, memory, deserialized, 1 replicas),*(1) Project [CASE WHEN ((cap#94160377 = NA) OR (cap#94160377 = null)) THEN null ELSE cast(cap#94160377 as int) END AS cap#94160394, CASE WHEN (sort#94160378 = null) THEN null ELSE sort#94160378 END AS sort#94160395, CASE WHEN (description#94160379 = null) THEN null ELSE description#94160379 END AS description#94160396, CASE WHEN ((universe#94160380 = NA) OR (universe#94160380 = null)) THEN null ELSE cast(universe#94160380 as int) END AS universe#94160397] +- FileScan csv [cap#94160377,sort#94160378,description#94160379,universe#94160380] Batched: false, DataFilters: [], Format: CSV, Location: InMemoryFileIndex(1 paths)[file:/srv/plusamp/data/default/ea-market/curate/curate_cap.csv], PartitionFilters: [], PushedFilters: [], ReadSchema: struct<cap:string,sort:string,description:string,universe:string> ,None) (12) Scan csv Output [4]: [cap#94160377, sort#94160378, description#94160379, universe#94160380] Batched: false Location: InMemoryFileIndex [file:/srv/plusamp/data/default/ea-market/curate/curate_cap.csv] ReadSchema: struct<cap:string,sort:string,description:string,universe:string> (13) Project [codegen id : 1] Output [4]: [CASE WHEN ((cap#94160377 = NA) OR (cap#94160377 = null)) THEN null ELSE cast(cap#94160377 as int) END AS cap#94160394, CASE WHEN (sort#94160378 = null) THEN null ELSE sort#94160378 END AS sort#94160395, CASE WHEN (description#94160379 = null) THEN null ELSE description#94160379 END AS description#94160396, CASE WHEN ((universe#94160380 = NA) OR (universe#94160380 = null)) THEN null ELSE cast(universe#94160380 as int) END AS universe#94160397] Input [4]: [cap#94160377, sort#94160378, description#94160379, universe#94160380] (14) Filter Input [3]: [cap#94160394, description#94160396, sort#94160395] Condition : isnotnull(cap#94160394) (15) Project Output [3]: [cap#94160394, description#94160396 AS cap_description#94180803, sort#94160395 AS cap_sort#94180804] Input [3]: [cap#94160394, description#94160396, sort#94160395] (16) BroadcastHashJoin [codegen id : 2] Left keys [1]: [knownfloatingpointnormalized(normalizenanandzero(cap#94177927))] Right keys [1]: [knownfloatingpointnormalized(normalizenanandzero(cast(cap#94160394 as float)))] Join condition: None (17) Project [codegen id : 2] Output [3]: [turnover#94178032, cap_description#94180803 AS cap#94180893, cap_sort#94180804] Input [5]: [cap#94177927, turnover#94178032, cap#94160394, cap_description#94180803, cap_sort#94180804] (18) Exchange Input [3]: [turnover#94178032, cap#94180893, cap_sort#94180804] Arguments: rangepartitioning(cap_sort#94180804 ASC NULLS FIRST, 200), ENSURE_REQUIREMENTS, [id=#7519477] (19) Sort [codegen id : 3] Input [3]: [turnover#94178032, cap#94180893, cap_sort#94180804] Arguments: [cap_sort#94180804 ASC NULLS FIRST], true, 0 (20) Project [codegen id : 3] Output [3]: [cap#94180893, turnover#94178032, (1.0 / cast(turnover#94178032 as double)) AS days_hold#94180927] Input [3]: [turnover#94178032, cap#94180893, cap_sort#94180804] (21) CollectLimit Input [3]: [cap#94180893, turnover#94178032, days_hold#94180927] Arguments: 1000000