Skip to content

Maven dependencies

Regunath B edited this page Jul 18, 2014 · 9 revisions

This page lists Maven Dependencies for applications that intend to use Aesop libraries.

Aesop release repository

Aesop builds are distributed via the Clojars community maintained repository for open source libraries.

Add the following repository to your Maven settings or project POM build file to access releases builds:

<repository>
    <id>clojars</id>
    <name>Clojars repository</name>
    <url>https://clojars.org/repo</url>
</repository>

Maven artifacts

Aesop is made up of multiple modules. These modules allow users to compose/create Relays using existing event producers and consumers (or) create own Relay implementations for data stores that are yet not readily available in Aesop. Version of these artifacts map to stable releases. For e.g. 1.0.0 for Version 1.0.0.

Event Producers

GroupID/Org ArtifactID/Name Description
com.flipkart.aesop mysql-producer Aesop Event producer implementation for MySQL
com.flipkart.aesop mysql-hbase Aesop Event producer implementation for HBase
com.flipkart.aesop diff-producer Aesop Event producer implementation from Netflix Zeno snapshots and deltas

Runtime

GroupID/Org ArtifactID/Name Description
com.flipkart.aesop runtime Launches the JVM and starts up one or more configured Databus ServerContainer instances (Netty NIO socket listener) for accepting requests. Also manages lifecycle of deployed server containers. Has embedded Jetty based admin console.

Runtime instances

GroupID/Org ArtifactID/Name Description
com.flipkart.aesop runtime-relay Relay runtime. Also has base implementations of Event producers.
com.flipkart.aesop runtime-client Client runtime. Also has base implementations for registering Event consumers on Relays.
com.flipkart.aesop runtime-client-cluster Clustered Client runtime. Supports HA and Load-balancing using Zookeeper via Apache Helix.
com.flipkart.aesop runtime-client-bootstrap-producer Bootstrap data producing Client runtime. Optional module and has concrete implementation that writes snapshots to MySQL database.
com.flipkart.aesop runtime-bootstrap Bootstrap server runtime for new clients or those that fall off the Relay and need to catchup. Optional module and has concrete implementation that reads snapshots from MySQL database.
com.flipkart.aesop runtime-snapshot-serializer Trooper Batch Job Step and Writer implementations for initializing and writing Netflix Zeno state engine instances for storing snapshots and deltas.

Samples

GroupID/Org ArtifactID/Name Description
com.flipkart.aesop sample-memory-relay Simple Memory based Event producer and Relay
com.flipkart.aesop sample-client Simple Consumer that logs consumed events to console/log file
com.flipkart.aesop sample-client-bootstrap-producer Bootstrap producer that consumes events off a configured Relay and writes it to the configured MySQL bootstrap snapshots database
com.flipkart.aesop sample-bootstrap-server Bootstrap server that serves snapshot and catchup requests of clients from the configured MySQL bootstrap snapshots database
com.flipkart.aesop sample-mysql-relay Relay with MySQL Event producer that maps bin log events to sample Person object
com.flipkart.aesop sample-hbase-relay Relay with HBase Event producer that maps WAL edit events to sample Person object
com.flipkart.aesop sample-client-mysql-relay Simple Consumer for MySQL events that logs consumed events to console/log file
com.flipkart.aesop sample-snapshot-serializer Trooper batch job with Reader for iterating over sample User data using UserService and Serializer implementations for storing the data as Netflix Zeno snapshot and delta files.
com.flipkart.aesop sample-diff-relay Relay with Diff Event producer that maps Netflix Zeno TypeDiff instances to the sample Person change event.

Utilities

GroupID/Org ArtifactID/Name Description
com.flipkart.aesop avro-schema-generator Utility module for generating Avro schemas for Datastore Meta data. Currently supports only MySQL