The MongoDB Spark Connector
Scala Java Shell
Latest commit 78cdc81 Dec 13, 2016 @rozza rozza Ensure partitioners handle empty collections

MongoDB Spark Connector

The official MongoDB Spark Connector.

Build Status | Build Status



API Documentation

See the 1.x branch for the Spark 1.6.x version of the driver.


The connector is published on Spark packages; the community index of third-party packages for Apache Spark. The binaries and dependency information for Maven, SBT, Ivy and others can also be found on maven central.

Support / Feedback

For issues with, questions about, or feedback for the MongoDB Spark Connector, please look into our support channels. Please do not email any of the developers directly with issues or questions - you're more likely to get an answer on the mongodb-user list on Google Groups.

At a minimum, please include in your description the exact version of the driver that you are using. If you are having connectivity issues, it's often also useful to paste in the spark configuration. You should also check your application logs for any connectivity-related exceptions and post those as well.

Bugs / Feature Requests

Think you’ve found a bug? Want to see a new feature in the Scala driver? Please open a case in our issue management tool, JIRA:

Bug reports in JIRA for the driver and the Core Server (i.e. SERVER) project are public.

If you’ve identified a security vulnerability in a driver or any other MongoDB project, please report it according to the instructions here.


Major increments (such as 1.x -> 2.x) will occur when break changes are being made to the public API. All methods and classes removed in a major release will have been deprecated in a prior release of the previous major release branch, and/or otherwise called out in the release notes.

Minor 1.x increments (such as 1.1, 1.2, etc) will occur when non-trivial new functionality is added or significant enhancements or bug fixes occur that may have behavioral changes that may affect some edge cases (such as dependence on behavior resulting from a bug). An example of an enhancement is a method or class added to support new functionality added to the MongoDB server. Minor releases will almost always be binary compatible with prior minor releases from the same major release branch, exept as noted below.

Patch 1.x.y increments (such as 1.0.0 -> 1.0.1, 1.1.1 -> 1.1.2, etc) will occur for bug fixes only and will always be binary compatible with prior patch releases of the same minor release branch.


To build the driver:

$ git clone
$ cd mongo-spark
$ ./sbt check

To publish the signed jars:

$ ./sbt +publish-signed

To publish to spark packages:

$ ./sbt +spPublish


Additional contributors can be found here.