Getting Started
Documentation

Download

Samza is released as a source artifact, and also through Maven.

If you just want to play around with Samza for the first time, go to Hello Samza.

JDK Notice

Starting from 2016, Samza will begin requiring JDK8 or higher. Please see this mailing list thread for details on this decision.

Samza Tools

Samza tools package contains command line tools that user can run to use Samza and it’s input/output systems.

Source Releases

Maven

All Samza JARs are published through Apache’s Maven repository.

Artifacts

A Maven-based Samza project can pull in all required dependencies Samza dependencies this XML block:

<dependency>
  <setId>org.apache.samza</setId>
  <artifactId>samza-api</artifactId>
  <version>1.6.0</version>
</dependency>
<dependency>
  <setId>org.apache.samza</setId>
  <artifactId>samza-core_2.11</artifactId>
  <version>1.6.0</version>
  <scope>runtime</scope>
</dependency>
<dependency>
  <setId>org.apache.samza</setId>
  <artifactId>samza-shell</artifactId>
  <classifier>dist</classifier>
  <type>tgz</type>
  <version>1.6.0</version>
  <scope>runtime</scope>
</dependency>
<dependency>
  <setId>org.apache.samza</setId>
  <artifactId>samza-yarn_2.11</artifactId>
  <version>1.6.0</version>
  <scope>runtime</scope>
</dependency>
<dependency>
  <setId>org.apache.samza</setId>
  <artifactId>samza-kv_2.11</artifactId>
  <version>1.6.0</version>
  <scope>runtime</scope>
</dependency>
<dependency>
  <setId>org.apache.samza</setId>
  <artifactId>samza-kv-rocksdb_2.11</artifactId>
  <version>1.6.0</version>
  <scope>runtime</scope>
</dependency>
<dependency>
  <setId>org.apache.samza</setId>
  <artifactId>samza-kv-inmemory_2.11</artifactId>
  <version>1.6.0</version>
  <scope>runtime</scope>
</dependency>
<dependency>
  <setId>org.apache.samza</setId>
  <artifactId>samza-kafka_2.11</artifactId>
  <version>1.6.0</version>
  <scope>runtime</scope>
</dependency>

Samza versions less than 0.12 should use artifacts with scala version 2.10 as suffix. For example,

<dependency>
  <setId>org.apache.samza</setId>
  <artifactId>samza-yarn_2.10</artifactId>
  <version>0.11.0</version>
</dependency>

Samza versions less than 0.9 should include this additional dependency.

<dependency>
  <setId>org.apache.samza</setId>
  <artifactId>samza-serializers_2.10</artifactId>
  <version>0.8.1</version>
</dependency>

Hello Samza is a working Maven project that illustrates how to build projects that have Samza jobs in them.

Repositories

Samza is available in the Apache Maven repository.

<repository>
  <id>apache-releases</id>
  <url>https://repository.apache.org/content/groups/public</url>
</repository>

Snapshot builds are available in the Apache Maven snapshot repository.

<repository>
  <id>apache-snapshots</id>
  <url>https://repository.apache.org/content/groups/snapshots</url>
</repository>

Checking out and Building

If you’re interested in working on Samza, or building the JARs from scratch, then you’ll need to checkout and build the code. Samza does not have a binary release at this time. To check out and build Samza, run these commands.

git clone http://git-wip-us.apache.org/repos/asf/samza.git
cd samza
./gradlew clean build

See the README.md file for details on building.