== Parsed Logical Plan ==
GlobalLimit 21
+- LocalLimit 21
+- Project [cast(logs#2937 as string) AS logs#2964, cast(processing_time#2938-T3000ms as string) AS processing_time#2972, cast(idx#2939 as string) AS idx#2965, cast(hostname#2940 as string) AS hostname#2966, cast(time#2941 as string) AS time#2967, cast(method#2942 as string) AS method#2968, cast(url#2943 as string) AS url#2969, cast(responsecode#2944 as string) AS responsecode#2970, cast(bytes#2945 as string) AS bytes#2971]
+- LocalRelation [logs#2937, processing_time#2938-T3000ms, idx#2939, hostname#2940, time#2941, method#2942, url#2943, responsecode#2944, bytes#2945]
== 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#2937 as string) AS logs#2964, cast(processing_time#2938-T3000ms as string) AS processing_time#2972, cast(idx#2939 as string) AS idx#2965, cast(hostname#2940 as string) AS hostname#2966, cast(time#2941 as string) AS time#2967, cast(method#2942 as string) AS method#2968, cast(url#2943 as string) AS url#2969, cast(responsecode#2944 as string) AS responsecode#2970, cast(bytes#2945 as string) AS bytes#2971]
+- LocalRelation [logs#2937, processing_time#2938-T3000ms, idx#2939, hostname#2940, time#2941, method#2942, url#2943, responsecode#2944, bytes#2945]
== Optimized Logical Plan ==
LocalRelation [logs#2964, processing_time#2972, idx#2965, hostname#2966, time#2967, method#2968, url#2969, responsecode#2970, bytes#2971]
== Physical Plan ==
LocalTableScan [logs#2964, processing_time#2972, idx#2965, hostname#2966, time#2967, method#2968, url#2969, responsecode#2970, bytes#2971]