Appendix B. Spark Connect
Spark Connect decouples much of the driver from your Spark application. Spark Connect does not support the full Spark APIs, but if your application uses the restricted subset that is supported by Spark Connect, it gives you more flexibility to move between different backends. Since Spark Connect decouples the driver, you also have more flexibility with which language (and language version) you use to work with Spark.
With Spark Connect, a Spark application converts DataFrame/Dataset operations into protobuf messages and sends them to a remote Spark Connect server. This remote server performs many of the same tasks as the Spark driver does in the full version of Spark. Because the driver is already running separately, this can reduce the startup time for a Spark query, making Spark Connect especially well suited to smaller queries (like interactive analytics).
Warning
Some of the Spark Connect features discussed online, even in the Spark documentation, are not available in the open source “vanilla” Spark and only available from closed source vendors.
While Spark Connect gives you more flexibility to move between different execution engines, the limited API makes it poorly suited to many “high performance” applications where you want to access internals or exercise increased levels of control.
Supported API
Spark Connect supports most of the DataFrame/Dataset APIs and even has limited user-defined function support, but only in Python and Scala and only ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access