== Parsed Logical Plan ==
GlobalLimit 21
+- LocalLimit 21
+- Project [cast(logs#699 as string) AS logs#726, cast(timestamp#700-T3000ms as string) AS timestamp#734, cast(idx#701 as string) AS idx#727, cast(hostname#702 as string) AS hostname#728, cast(time#703 as string) AS time#729, cast(method#704 as string) AS method#730, cast(url#705 as string) AS url#731, cast(responsecode#706 as string) AS responsecode#732, cast(bytes#707 as string) AS bytes#733]
+- LocalRelation [logs#699, timestamp#700-T3000ms, idx#701, hostname#702, time#703, method#704, url#705, responsecode#706, bytes#707]
== Analyzed Logical Plan ==
logs: string, timestamp: string, idx: string, hostname: string, time: string, method: string, url: string, responsecode: string, bytes: string
GlobalLimit 21
+- LocalLimit 21
+- Project [cast(logs#699 as string) AS logs#726, cast(timestamp#700-T3000ms as string) AS timestamp#734, cast(idx#701 as string) AS idx#727, cast(hostname#702 as string) AS hostname#728, cast(time#703 as string) AS time#729, cast(method#704 as string) AS method#730, cast(url#705 as string) AS url#731, cast(responsecode#706 as string) AS responsecode#732, cast(bytes#707 as string) AS bytes#733]
+- LocalRelation [logs#699, timestamp#700-T3000ms, idx#701, hostname#702, time#703, method#704, url#705, responsecode#706, bytes#707]
== Optimized Logical Plan ==
LocalRelation [logs#726, timestamp#734, idx#727, hostname#728, time#729, method#730, url#731, responsecode#732, bytes#733]
== Physical Plan ==
LocalTableScan [logs#726, timestamp#734, idx#727, hostname#728, time#729, method#730, url#731, responsecode#732, bytes#733]