== Parsed Logical Plan ==
GlobalLimit 21
+- LocalLimit 21
+- Project [cast(logs#1033 as string) AS logs#1060, cast(processing_time#1034-T3000ms as string) AS processing_time#1068, cast(idx#1035 as string) AS idx#1061, cast(hostname#1036 as string) AS hostname#1062, cast(time#1037 as string) AS time#1063, cast(method#1038 as string) AS method#1064, cast(url#1039 as string) AS url#1065, cast(responsecode#1040 as string) AS responsecode#1066, cast(bytes#1041 as string) AS bytes#1067]
+- LocalRelation [logs#1033, processing_time#1034-T3000ms, idx#1035, hostname#1036, time#1037, method#1038, url#1039, responsecode#1040, bytes#1041]
== 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#1033 as string) AS logs#1060, cast(processing_time#1034-T3000ms as string) AS processing_time#1068, cast(idx#1035 as string) AS idx#1061, cast(hostname#1036 as string) AS hostname#1062, cast(time#1037 as string) AS time#1063, cast(method#1038 as string) AS method#1064, cast(url#1039 as string) AS url#1065, cast(responsecode#1040 as string) AS responsecode#1066, cast(bytes#1041 as string) AS bytes#1067]
+- LocalRelation [logs#1033, processing_time#1034-T3000ms, idx#1035, hostname#1036, time#1037, method#1038, url#1039, responsecode#1040, bytes#1041]
== Optimized Logical Plan ==
LocalRelation [logs#1060, processing_time#1068, idx#1061, hostname#1062, time#1063, method#1064, url#1065, responsecode#1066, bytes#1067]
== Physical Plan ==
LocalTableScan [logs#1060, processing_time#1068, idx#1061, hostname#1062, time#1063, method#1064, url#1065, responsecode#1066, bytes#1067]