Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Data Lake for Enterprises

You're reading from   Data Lake for Enterprises Lambda Architecture for building enterprise data systems

Arrow left icon
Product type Paperback
Published in May 2017
Publisher Packt
ISBN-13 9781787281349
Length 596 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Authors (3):
Arrow left icon
Pankaj Misra Pankaj Misra
Author Profile Icon Pankaj Misra
Pankaj Misra
Tomcy John Tomcy John
Author Profile Icon Tomcy John
Tomcy John
Vivek Mishra Vivek Mishra
Author Profile Icon Vivek Mishra
Vivek Mishra
Arrow right icon
View More author details
Toc

Table of Contents (13) Chapters Close

Preface 1. Introduction to Data FREE CHAPTER 2. Comprehensive Concepts of a Data Lake 3. Lambda Architecture as a Pattern for Data Lake 4. Applied Lambda for Data Lake 5. Data Acquisition of Batch Data using Apache Sqoop 6. Data Acquisition of Stream Data using Apache Flume 7. Messaging Layer using Apache Kafka 8. Data Processing using Apache Flink 9. Data Store Using Apache Hadoop 10. Indexed Data Store using Elasticsearch 11. Data Lake Components Working Together 12. Data Lake Use Case Suggestions

Kafka architecture


This section aims to explain ins and outs of Apache Kafka. We will try to dive deep into its architecture and then, later on try expanding each part of it's architecture's components in a bit more detail.

So, let's stream forward.

Core architecture principles of Kafka

The main motivation behind Kafka when developed by LinkedIn’s engineering team was

To create a unified messaging platform to cater to real-time data from various applications in a big organization.

- LinkedIn

 

There are core architecture principles based on which Kafka was conceived and designed. The bulleted points sum up these principles:

  • Maximize performance (compression and B-tree usage is an example)
  • Wherever possible, core kernel capabilities to offload work to drive optimization and performance (zero-copy and direct use of Linux filesystem cache is an example)
  • Distributed architecture
  • Fault tolerance
  • Durability of messages
  • Wherever possible, eliminate redundant work
  • Offload responsibility of tasks to consuming...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image