Book Image

Fast Data Processing Systems with SMACK Stack

By : Raúl Estrada
Book Image

Fast Data Processing Systems with SMACK Stack

By: Raúl Estrada

Overview of this book

SMACK is an open source full stack for big data architecture. It is a combination of Spark, Mesos, Akka, Cassandra, and Kafka. This stack is the newest technique developers have begun to use to tackle critical real-time analytics for big data. This highly practical guide will teach you how to integrate these technologies to create a highly efficient data analysis system for fast data processing. We’ll start off with an introduction to SMACK and show you when to use it. First you’ll get to grips with functional thinking and problem solving using Scala. Next you’ll come to understand the Akka architecture. Then you’ll get to know how to improve the data structure architecture and optimize resources using Apache Spark. Moving forward, you’ll learn how to perform linear scalability in databases with Apache Cassandra. You’ll grasp the high throughput distributed messaging systems using Apache Kafka. We’ll show you how to build a cheap but effective cluster infrastructure with Apache Mesos. Finally, you will deep dive into the different aspect of SMACK using a few case studies. By the end of the book, you will be able to integrate all the components of the SMACK stack and use them together to achieve highly effective and fast data processing.
Table of Contents (15 chapters)
Fast Data Processing Systems with SMACK Stack
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface

Apache Cassandra on Apache Mesos


The easiest way to deploy Apache Cassandra on Apache Mesos is through Marathon. Mesosphere has already packaged the Cassandra executor and the necessary JAR files on tarball that can be submitted to Mesos with Marathon with the JSON code located at: https://downloads.mesosphere.io/cassandra-mesos/artifacts/0.2.0-1/marathon.json

{ 
  "id": "/cassandra/dev-test", 
  "instances": 1, 
  "cpus": 0.5, 
  "mem": 512, 
  "ports": [ 
    0 
  ], 
  "uris": [ 
    "https://downloads.mesosphere.io/cassandra-mesos/artifacts/0.2.0-1/cassandra-mesos-0.2.0-1.tar.gz", 
    "https://downloads.mesosphere.io/java/jre-7u76-linux-x64.tar.gz" 
  ], 
  "env": { 
    "MESOS_ZK": "zk://localhost:2181/mesos", 
    "JAVA_OPTS": "-Xms256m -Xmx256m", 
    "CASSANDRA_CLUSTER_NAME": "dev-test", 
    "CASSANDRA_ZK": "zk://localhost:2181/cassandra-mesos", 
    "CASSANDRA_NODE_COUNT": "3", 
    "CASSANDRA_RESOURCE_CPU_CORES": "2.0", 
    "CASSANDRA_RESOURCE_MEM_MB": "2048", 
    "CASSANDRA_RESOURCE_DISK_MB...