== Parsed Logical Plan ==
'Project [cast('PULocationID as int) AS src#163, cast('DOLocationID as int) AS dst#164]
+- Relation[lpep_pickup_datetime#129,lpep_dropoff_datetime#130,PULocationID#131,DOLocationID#132,passenger_count#133,trip_distance#134,fare_amount#135,extra#136,mta_tax#137,tip_amount#138,tolls_amount#139,ehail_fee#140,total_amount#141,payment_type#142,trip_type#143,congestion_surcharge#144,taxi_type#145] csv
== Analyzed Logical Plan ==
src: int, dst: int
Project [cast(PULocationID#131 as int) AS src#163, cast(DOLocationID#132 as int) AS dst#164]
+- Relation[lpep_pickup_datetime#129,lpep_dropoff_datetime#130,PULocationID#131,DOLocationID#132,passenger_count#133,trip_distance#134,fare_amount#135,extra#136,mta_tax#137,tip_amount#138,tolls_amount#139,ehail_fee#140,total_amount#141,payment_type#142,trip_type#143,congestion_surcharge#144,taxi_type#145] csv
== Optimized Logical Plan ==
Project [cast(PULocationID#131 as int) AS src#163, cast(DOLocationID#132 as int) AS dst#164]
+- Relation[lpep_pickup_datetime#129,lpep_dropoff_datetime#130,PULocationID#131,DOLocationID#132,passenger_count#133,trip_distance#134,fare_amount#135,extra#136,mta_tax#137,tip_amount#138,tolls_amount#139,ehail_fee#140,total_amount#141,payment_type#142,trip_type#143,congestion_surcharge#144,taxi_type#145] csv
== Physical Plan ==
*(1) Project [cast(PULocationID#131 as int) AS src#163, cast(DOLocationID#132 as int) AS dst#164]
+- FileScan csv [PULocationID#131,DOLocationID#132] Batched: false, DataFilters: [], Format: CSV, Location: InMemoryFileIndex[s3a://data-repository-bkt/ECS765/nyc_taxi/green_tripdata/2023], PartitionFilters: [], PushedFilters: [], ReadSchema: struct<PULocationID:string,DOLocationID:string>