SparkSQL is a Spark component that allows SQL queries to be executed on Spark. It uses Catalyst, which provides an execution planning framework for relational operations like SQL parsing, logical optimization, and physical planning. Catalyst defines logical and physical operators, expressions, data types and provides rule-based optimizations of the logical query plan. The SQL core in SparkSQL converts logical plans to physical plans and enables reading/writing to data sources like Parquet files and in-memory columnar tables.