== Parsed Logical Plan ==
GlobalLimit 21
+- LocalLimit 21
+- Project [cast(logs#585 as string) AS logs#612, cast(processing_time#586-T3000ms as string) AS processing_time#620, cast(idx#587 as string) AS idx#613, cast(hostname#588 as string) AS hostname#614, cast(time#589 as string) AS time#615, cast(method#590 as string) AS method#616, cast(url#591 as string) AS url#617, cast(responsecode#592 as string) AS responsecode#618, cast(bytes#593 as string) AS bytes#619]
+- LocalRelation [logs#585, processing_time#586-T3000ms, idx#587, hostname#588, time#589, method#590, url#591, responsecode#592, bytes#593]
== Analyzed Logical Plan ==
logs: string, processing_time: string, idx: string, hostname: string, time: string, method: string, url: string, responsecode: string, bytes: string
GlobalLimit 21
+- LocalLimit 21
+- Project [cast(logs#585 as string) AS logs#612, cast(processing_time#586-T3000ms as string) AS processing_time#620, cast(idx#587 as string) AS idx#613, cast(hostname#588 as string) AS hostname#614, cast(time#589 as string) AS time#615, cast(method#590 as string) AS method#616, cast(url#591 as string) AS url#617, cast(responsecode#592 as string) AS responsecode#618, cast(bytes#593 as string) AS bytes#619]
+- LocalRelation [logs#585, processing_time#586-T3000ms, idx#587, hostname#588, time#589, method#590, url#591, responsecode#592, bytes#593]
== Optimized Logical Plan ==
LocalRelation [logs#612, processing_time#620, idx#613, hostname#614, time#615, method#616, url#617, responsecode#618, bytes#619]
== Physical Plan ==
LocalTableScan [logs#612, processing_time#620, idx#613, hostname#614, time#615, method#616, url#617, responsecode#618, bytes#619]