Enabling Continuous Data Processing with Apache Spark and Azure Event Hubs
Перейти к файлу
SJ 33ee66e23a
Several bug fixes and improvements for 2.3.14 release (#465)
* [Bug fix] fix IO pipe issue that causes a blocking issue on send calls
* [Bug fix] fix broken TCP connection issue that causes prolonged delay in receiving events
* [Configuration] provide a configuration knob to specify whether an epoch receiver should be used. Default value is true.
* [Tracing] add a Spark task ID to log messages and emit latency data for receive calls
2019-10-23 09:44:13 -07:00
.github Update version number for new release (2.3.13) (#451) 2019-07-26 13:29:19 -07:00
core Several bug fixes and improvements for 2.3.14 release (#465) 2019-10-23 09:44:13 -07:00
docs Update version number for new release (2.3.13) (#451) 2019-07-26 13:29:19 -07:00
project Make the code more Scala idomatic (#356) 2018-07-23 10:15:16 -07:00
.gitignore Codebase cleanup. Details in in description. (#174) 2017-10-16 18:45:51 -07:00
.scalafmt.conf Codebase cleanup. Details in in description. (#174) 2017-10-16 18:45:51 -07:00
.travis.yml Update .travis.yml 2017-11-07 12:57:47 -08:00
FAQ.md Prepare for 2.3.6 & 2.2.6 release (#407) 2018-11-08 09:06:05 -08:00
LICENSE Initial commit 2015-09-03 22:11:45 -07:00
README.md Update version number for new release (2.3.13) (#451) 2019-07-26 13:29:19 -07:00
event-hubs_spark.png initial repo clean up: first draft of new README, unfinished docs/README and CONTRIBUTING, removed javadocs folder 2017-10-10 09:53:29 -07:00
pom.xml Several bug fixes and improvements for 2.3.14 release (#465) 2019-10-23 09:44:13 -07:00
run_tests.sh Library re-write (For Spark 2.3) (#229) 2018-03-02 10:33:18 -08:00

README.md

Azure Event Hubs + Apache Spark Connector

Azure Event Hubs Connector for Apache Spark

chat on gitter build status star our repo

This is the source code of the Azure Event Hubs Connector for Apache Spark.

Azure Event Hubs is a highly scalable publish-subscribe service that can ingest millions of events per second and stream them into multiple applications. Spark Streaming and Structured Streaming are scalable and fault-tolerant stream processing engines that allow users to process huge amounts of data using complex algorithms expressed with high-level functions like map, reduce, join, and window. This data can then be pushed to filesystems, databases, or even back to Event Hubs.

By making Event Hubs and Spark easier to use together, we hope this connector makes building scalable, fault-tolerant applications easier for our users.

Latest Releases

Spark

Spark Version Package Name Package Version
Spark 2.4 azure-eventhubs-spark_2.11 Maven Central
Spark 2.3 azure-eventhubs-spark_2.11 Maven Central
Spark 2.2 azure-eventhubs-spark_2.11 Maven Central
Spark 2.1 azure-eventhubs-spark_2.11 Maven Central

Databricks

Databricks Runtime Version Artifact Id Package Version
Databricks Runtime 5.X azure-eventhubs-spark_2.11 Maven Central
Databricks Runtime 4.X azure-eventhubs-spark_2.11 Maven Central
Databricks Runtime 3.5 azure-eventhubs-spark_2.11 Maven Central

Roadmap

There is an open issue for each planned feature/enhancement.

Usage

Linking

For Scala/Java applications using SBT/Maven project definitions, link your application with the artifact below. Note: See Latest Releases to find the correct artifiact for your version of Apache Spark (or Databricks)!

groupId = com.microsoft.azure
artifactId = azure-eventhubs-spark_2.11
version = 2.3.13

Documentation

Documentation for our connector can be found here. The integration guides there contain all the information you need to use this library.

If you're new to Apache Spark and/or Event Hubs, then we highly recommend reading their documentation first. You can read Event Hubs documentation here, documentation for Spark Streaming here, and, the last but not least, Structured Streaming here.

FAQ

We maintain an FAQ - reach out to us via gitter if you think anything needs to be added or clarified!

Further Assistance

If you need additional assistance, please don't hesitate to ask! General questions and discussion should happen on our gitter chat. Please open an issue for bug reports and feature requests! Feedback, feature requests, bug reports, etc are all welcomed!

Contributing

If you'd like to help contribute (we'd love to have your help!), then go to our Contributor's Guide for more information.

Build Prerequisites

In order to use the connector, you need to have:

More details on building from source and running tests can be found in our Contributor's Guide.

Build Command

// Builds jar and runs all tests
mvn clean package

// Builds jar, runs all tests, and installs jar to your local maven repository
mvn clean install