Frameless: A More Well-Typed Interface for Spark
summary
Frameless adds a more well-typed veneer over Spark Datasets, using shapeless and cats to provide TypedDataset APIs that prove column names at compile time (selecting a missing column fails to compile). It introduces typed encoders and frameless injections to map custom types (example: sealed Genre ↔ Int) so Spark can serialize them, but API coverage is incomplete, encoded values show as ints in output, and encoders can still blow up at runtime if Spark serialization requirements aren’t met; project just graduated from incubator to full project.
AI-written summary · about
chapters (15)
- 0:00Intro
- 1:03What is frameless
- 1:51RDDs
- 2:29Example
- 2:48DataFrames
- 3:49DataFrame Limitations
- 4:22Encoders
- 5:10Columns
- 7:32Factory methods
- 8:32Group buys
- 8:52Static encoders
- 9:55frameless injections
- 11:30Defining instances
- 12:35Conclusion
- 13:34Questions
related talks
46mIntroduction to Apache Spark with Frameless
06mInterview
47mKeeping the fun in Apache Spark Datasets and FP
51mThe middle way for static typing in Spark DataFrames
23mSpark Datasets: why they aren't great and what could be done
47mKeeping the “fun” in Apache Spark Datasets and FP
54mWhy Netflix ❤'s Scala for Machine Learning
31mGoing structural with Named Tuples
