== Parsed Logical Plan ==
GlobalLimit 21
+- LocalLimit 21
+- Project [cast(logs#1369 as string) AS logs#1396, cast(processing_time#1370-T3000ms as string) AS processing_time#1404, cast(idx#1371 as string) AS idx#1397, cast(hostname#1372 as string) AS hostname#1398, cast(time#1373 as string) AS time#1399, cast(method#1374 as string) AS method#1400, cast(url#1375 as string) AS url#1401, cast(responsecode#1376 as string) AS responsecode#1402, cast(bytes#1377 as string) AS bytes#1403]
+- LocalRelation [logs#1369, processing_time#1370-T3000ms, idx#1371, hostname#1372, time#1373, method#1374, url#1375, responsecode#1376, bytes#1377]
== 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#1369 as string) AS logs#1396, cast(processing_time#1370-T3000ms as string) AS processing_time#1404, cast(idx#1371 as string) AS idx#1397, cast(hostname#1372 as string) AS hostname#1398, cast(time#1373 as string) AS time#1399, cast(method#1374 as string) AS method#1400, cast(url#1375 as string) AS url#1401, cast(responsecode#1376 as string) AS responsecode#1402, cast(bytes#1377 as string) AS bytes#1403]
+- LocalRelation [logs#1369, processing_time#1370-T3000ms, idx#1371, hostname#1372, time#1373, method#1374, url#1375, responsecode#1376, bytes#1377]
== Optimized Logical Plan ==
LocalRelation [logs#1396, processing_time#1404, idx#1397, hostname#1398, time#1399, method#1400, url#1401, responsecode#1402, bytes#1403]
== Physical Plan ==
LocalTableScan [logs#1396, processing_time#1404, idx#1397, hostname#1398, time#1399, method#1400, url#1401, responsecode#1402, bytes#1403]