Spark
JVM since1.3.0 Nativeunsupported
Send RDD or DataFrame jobs to Apache Spark clusters.
What’s inside
-
Spark component, URI syntax:
spark:endpointType
Please refer to the above link for usage and configuration details.
Maven coordinates
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-spark</artifactId>
</dependency>
Check the User guide for more information about writing Camel Quarkus applications.
Usage
Special BOM
camel-quarkus-spark is special compared to other Camel Quarkus extensions which are managed in
camel-quarkus-bom together with their important dependencies. This is because the Camel Spark extension depends
on rather old versions of various libraries, that may conflict with their newer versions required by other Quarkus and
Camel Quarkus extensions. Therefore, camel-quarkus-spark extension and its dependencies are managed in a special
BOM called camel-quarkus-spark-bom.
For camel-quarkus-spark to work properly in end user applications, camel-quarkus-spark-bom need to be
imported before any other Quarkus or Camel Quarkus BOMs.
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-spark-bom</artifactId>
<version>${camel-quarkus.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- Other BOMs -->
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-bom</artifactId>
<version>${camel-quarkus.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
|
The above setup will make |
Camel Quarkus limitations
-
spark:dataframedoes not work on Java 9+ because Spark 2.x does not support Java 9+. This will be solved when Spark is upgraded to 3.x in Camel, see issue #1955. -
spark:hiveis does not work, see issue #1956.