The Apache Ignite book (The Book with code samples)
The Apache Ignite book
The next phase of the distributed systems
About the Book
This book is addressed to anyone interested in learning in-memory computing and distributed database. It is useful for developers and architects new to Apache Ignite as well as those who already use any other in-memory databases and want to expand their knowledge.
The source code of the book is updated to Ignite version 2.14.0 and is available at GitHub
We upload a PDF file that has color images of the diagrams used in this book. You can download it here https://bit.ly/36Mw0y9
What you will learn (please see the table of contents below for more details):
- Apache Ignite architecture in depth such as data distributing technics (DHT), Rendezvous hashing, durable memory architecture, various cluster topologies, Ignite native persistence, Baseline topology, and much more.
- Apache Ignite proven use cases as a memory-centric distributed database, caching, and computing platforms.
- Getting started with Apache Ignite by using different tools and technics.
- Caching strategies by examples and how to use Apache Ignite for improving application performance including Hibernate L2 cache, MyBatis, Memoization, and Web session clustering.
- Using Spring Data with Apache Ignite for developing high-performance web applications.
- Ignite query (SQL, API, Text, and Scan queries) capabilities in depth.
- Using Spark RDD and Data frames for improving performance on processing fast data.
- Developing and executing distributed computations in a parallel fashion to gain high performance, low latency, and linear scalability.
- Developing distributed Microservices in fault-tolerant fashion.
- Processing events & streaming data for IoT projects, integrate Apache Ignite with other frameworks like Kafka, Storm, Camel, etc.
- Real-time data Replication between Ignite clusters through Kafka.
- Configuring, management and monitoring Ignite cluster with built-in and 3rd party tools.
For every topic, a complete application is delivered, which helps the audience to a quick start with the topic. Each chapter focuses on the complete implementation of a real-world scenario, the commonly occurring challenges in each scenario have also discussed, along with tips and tricks and best practices on how to overcome them.
Readership:
The target audiences of this book will be an IT architect, team leader, or programmer with minimum programming knowledge. No excessive knowledge is required, though it would be good to be familiar with Java, Spring framework, and tools like Maven. The book is also useful for any reader, who already familiar with Oracle Coherence, Hazelcast, Infinispan, or Memcached.
If you are not sure if this book is for you, I suggest you read the sample chapter of the book. The sample chapter is available in different formats including HTML. Anyway, I encourage you to try it out, and if you don't like the book, you can always ask a 100% refund within 45 days.
The entire source code of the book is available at GitHub
We need your feedback!
We would like to hear what you think, what you like or dislike the content of the book. Your feedback will help us to write a better book and help others to clear all the concepts. To submit your feedback, please use the feedback link below.
Bundles that include this book
Reader Testimonials
Edward Kuenen
Government, Netherlands
This is one of the very few good books on Apache Ignite. It covers the whole spectrum of Ignite. From use-cases and architecture till maintenance and code examples to get your hands dirty. If you want one book to get it all, this is it!
Sadruddin Md, technology enthusiast
This book has been very handy to me and the reading experience is fantastic. The balance of theory, coding, examples make reading the book very fun-filled and enlightening. You don't get bored! I definitely recommend this book to Ignite users; doesn’t matter if you are a developer, support team member, architect or a solution designer. Everyone has got something or other to learn from this book.
Manoj GT
When it comes to Ignite, you have very less number of books to choose from, and by far this is the best book you will get. The Author has explained all the topics in a straightforward and understanding way with a working example for each. I have started with zero knowledge of Ignite, and now I'm able to build many working projects using Ignite due to the learning I got from this book. Big thanks to the author for writing this excellent book.
Table of Contents
-
Preface
- What this book covers
- Code Samples
- Readership
- Conventions
- Reader feedback
- About the authors
- Other book by the author
- Acknowledgments
- Chapter 1. Introduction
-
Chapter 2. Getting started with Apache Ignite
-
Installing and setting up Apache Ignite
- Building from source code
- Running multiple instances of the Apache Ignite in a single host
- Running Apache Ignite in Docker containers
- Using Apache Ignite SQLLINE CLI
- Using a universal SQL client IDE to work with Apache Ignite
- First Java application
- Apache Ignite thin client
- Using REST API for manipulating the Apache Ignite caches
- Configuring a multi-node Ignite cluster in different hosts
- A simple checklist for beginners
- Summary
- What’s next?
-
Installing and setting up Apache Ignite
-
Chapter 3. Apache Ignite use cases
- Caching for fast data access
- HTAP
- High-volume transaction processing
- Fast data processing
- Lambda architecture
- Resilient web acceleration
- Microservices in distributed fashion
- Cache as a service
- Big Data accelerations
- In-memory machine learning
- In-memory geospatial
- Cluster management
- Summary
- What’s next?
-
Chapter 4. Architecture deep dive
- Functional overview
-
Understanding the cluster topology: shared-nothing architecture
- Client and server node
- Embedded with the application
- Client and the server nodes in the same host
- Running multiple nodes within single JVM
- Real cluster topology
-
Data partitioning in Ignite
- Understanding data distribution: DHT
- Rendezvous hashing
- Replication
- Master-Slave replication
- Peer-to-peer replication
- Partitioned mode
- Replicated mode
- Local mode
- Near cache
- Partition loss policies
-
Caching strategy
- Cache a-side
- Read through and write through
- Write behind
- Ignite data model
- CAP theorem and where does Ignite stand in?
- Apache Ignite life cycle
- Memory-Centric storage
-
Durable memory architecture
- Page
- Data Page
- Index pages and B+ trees
- Segments
- Region
-
Data eviction
- Page based eviction
- Entry based eviction
- Data expiration
- Ignite read/write path
-
Native persistence
- Write-Ahead-Log (WAL)
- Checkpointing
-
Baseline topology
- Automatic cluster activation
- Split-brain protection
- Fast rebalancing and it’s pitfalls
- Tool to control baseline topology
- Automate the rebalancing
-
Discovery and communication mechanisms
- Discovery
- Communication
-
Cluster groups
- Predefined cluster group
- Cluster group with node attributes
- Custom cluster group
- Data collocation
- Compute collocation with data
- Protocols and clients
-
Resilience & Automatic failover
- Ignite client node
- Ignite thin client
- JDBC client
- Ignite Rest client
- Multi data center replication
- Key API’s
- Summary
- What’s next?
-
Chapter 5. Intelligent caching
-
Smart caching
- Caching best practices
- Design patterns
- Basic terms
-
Database caching
- Hibernate caching
- MyBatis caching
- Memoization
-
Web session clustering
- Classic solution 1: using a sticky session
- Classic solution 2: store sessions in DB
- Classic solution 3: use only stateless service
- Distributed web session clustering
- Prepare the caches correctly
- Summary
- What’s next?
-
Smart caching
-
Chapter 6. Database
- Ignite tables & indexes configuration
-
Ignite queries
- SQL queries
-
Query API
- SqlFieldsQuery
- SqlQuery
-
Cache queries
- Scan queries
- Text queries
- Affinity collocation based data modeling
- Collocated distributed joins
- Non-collocated distributed joins
- Spring Data integration
-
Persistence
- Native persistence
- Persistence in 3 party database (MongoDB)
-
Transaction
- Ignite transactions
- Transaction commit protocols
- Node types (NearNode/Remote/DHT)
- Concurrency Modes and Isolation Levels
- MVCC
- Performance impact on transaction
- Summary
- What’s next?
-
Chapter 7. Distributed computing
-
Compute grid
- Distributed Closures
- MapReduce and Fork-join
- Per-Node share state
- Distributed task session
- Fault tolerance and checkpointing
- Collocation of computation and data
- Job scheduling
-
Service Grid
- Developing services
- Cluster singleton
- Service management and configuration
- Developing microservices in Apache Ignite
- Summary
- What’s next?
-
Compute grid
-
Chapter 8. Streaming and complex event processing
-
Kafka Streamer
- IgniteSinkConnector
- IgniteSourceConnector
-
Camel Streamer
- Direct Ingestion
- Mediated Ingestion
- Flume sink
- Storm streamer
- Summary
- What’s next?
-
Kafka Streamer
-
Chapter 9. Accelerating Big data computing
-
Ignite for Apache Spark
- Apache Spark – a short history
- Ignite RDD
- Ignite DataFrame
- Summary
- What’s next?
-
Ignite for Apache Spark
-
Chapter 10. Management and monitoring
-
Managing Ignite cluster
- Configuring Zookeeper discovery
- Managing Baseline topology
-
Monitoring Ignite cluster
- VisualVM
- Grafana
- Summary
-
Managing Ignite cluster
Other books by these authors
The Leanpub 60 Day 100% Happiness Guarantee
Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.
You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!
So, there's no reason not to click the Add to Cart button, is there?
See full terms...
Earn $8 on a $10 Purchase, and $16 on a $20 Purchase
We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.
(Yes, some authors have already earned much more than that on Leanpub.)
In fact, authors have earnedover $14 millionwriting, publishing and selling on Leanpub.
Learn more about writing on Leanpub
Free Updates. DRM Free.
If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).
Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.
Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.
Learn more about Leanpub's ebook formats and where to read them