== Parsed Logical Plan ==
GlobalLimit 21
+- LocalLimit 21
+- Project [cast(LocationID#14 as string) AS LocationID#26, cast(Borough#15 as string) AS Borough#27, cast(Zone#16 as string) AS Zone#28, cast(service_zone#17 as string) AS service_zone#29]
+- LogicalRDD [LocationID#14, Borough#15, Zone#16, service_zone#17], false
== Analyzed Logical Plan ==
LocationID: string, Borough: string, Zone: string, service_zone: string
GlobalLimit 21
+- LocalLimit 21
+- Project [cast(LocationID#14 as string) AS LocationID#26, cast(Borough#15 as string) AS Borough#27, cast(Zone#16 as string) AS Zone#28, cast(service_zone#17 as string) AS service_zone#29]
+- LogicalRDD [LocationID#14, Borough#15, Zone#16, service_zone#17], false
== Optimized Logical Plan ==
GlobalLimit 21
+- LocalLimit 21
+- Project [cast(LocationID#14 as string) AS LocationID#26, Borough#15, Zone#16, service_zone#17]
+- LogicalRDD [LocationID#14, Borough#15, Zone#16, service_zone#17], false
== Physical Plan ==
CollectLimit 21
+- *(1) Project [cast(LocationID#14 as string) AS LocationID#26, Borough#15, Zone#16, service_zone#17]
+- *(1) Scan ExistingRDD[LocationID#14,Borough#15,Zone#16,service_zone#17]