== Parsed Logical Plan ==
GlobalLimit 21
+- LocalLimit 21
+- Project [cast(logs#305 as string) AS logs#332, cast(processing_time#306-T3000ms as string) AS processing_time#340, cast(idx#307 as string) AS idx#333, cast(hostname#308 as string) AS hostname#334, cast(time#309 as string) AS time#335, cast(method#310 as string) AS method#336, cast(url#311 as string) AS url#337, cast(responsecode#312 as string) AS responsecode#338, cast(bytes#313 as string) AS bytes#339]
+- LocalRelation [logs#305, processing_time#306-T3000ms, idx#307, hostname#308, time#309, method#310, url#311, responsecode#312, bytes#313]
== 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#305 as string) AS logs#332, cast(processing_time#306-T3000ms as string) AS processing_time#340, cast(idx#307 as string) AS idx#333, cast(hostname#308 as string) AS hostname#334, cast(time#309 as string) AS time#335, cast(method#310 as string) AS method#336, cast(url#311 as string) AS url#337, cast(responsecode#312 as string) AS responsecode#338, cast(bytes#313 as string) AS bytes#339]
+- LocalRelation [logs#305, processing_time#306-T3000ms, idx#307, hostname#308, time#309, method#310, url#311, responsecode#312, bytes#313]
== Optimized Logical Plan ==
LocalRelation [logs#332, processing_time#340, idx#333, hostname#334, time#335, method#336, url#337, responsecode#338, bytes#339]
== Physical Plan ==
LocalTableScan [logs#332, processing_time#340, idx#333, hostname#334, time#335, method#336, url#337, responsecode#338, bytes#339]