Book Image

Scalable Data Architecture with Java

By : Sinchan Banerjee
Book Image

Scalable Data Architecture with Java

By: Sinchan Banerjee

Overview of this book

Java architectural patterns and tools help architects to build reliable, scalable, and secure data engineering solutions that collect, manipulate, and publish data. This book will help you make the most of the architecting data solutions available with clear and actionable advice from an expert. You’ll start with an overview of data architecture, exploring responsibilities of a Java data architect, and learning about various data formats, data storage, databases, and data application platforms as well as how to choose them. Next, you’ll understand how to architect a batch and real-time data processing pipeline. You’ll also get to grips with the various Java data processing patterns, before progressing to data security and governance. The later chapters will show you how to publish Data as a Service and how you can architect it. Finally, you’ll focus on how to evaluate and recommend an architecture by developing performance benchmarks, estimations, and various decision metrics. By the end of this book, you’ll be able to successfully orchestrate data architecture solutions using Java and related technologies as well as to evaluate and present the most suitable solution to your clients.
Table of Contents (19 chapters)
1
Section 1 – Foundation of Data Systems
5
Section 2 – Building Data Processing Pipelines
11
Section 3 – Enabling Data as a Service
14
Section 4 – Choosing Suitable Data Architecture

Implementing and verifying the design

The first step in a real-time implementation like this is to set up the streaming platform. To implement our architecture, we need to install Apache Kafka and create the necessary topics on our local machine.

Setting up Apache Kafka on your local machine

In this section, you will learn how to set up an Apache Kafka cluster, run it, and create and list topics. Follow these steps:

  1. Download Apache Kafka version 2.8.1 from https://archive.apache.org/dist/kafka/2.8.1/kafka_2.12-2.8.1.tgz.
  2. Extract the kafka_2.12-2.8.1.tgz archive file. The following command will help you do the same on Linux or macOS:
    $ tar -xzf kafka_2.12-2.8.1.tgz
    $ cd kafka_2.12-2.8.1
  3. Navigate to the Kafka installation root directory and start zookeeper using the following command:
    $ bin/zookeeper-server-start.sh config/zookeeper.properties
  4. Next, run the Kafka server using the following command:
    $ bin/kafka-server-start.sh config/server.properties
  5. Next,...