- Apache Ignite Quick Start Guide
- Sujoy Acharya
- 306字
- 2021-06-10 18:52:26
In-Memory Data Grid (IMDG)
One of the key features of Apache Ignite is the In-memory Data Grid. You can consider IMDG as a distributed Key-Value pair store; the key and value both must implement the serializable interface as they get transferred over the network. Apache Ignite stores objects in off-heap and on-heap memory (and on disk when native persistence is enabled). Apache Ignite's data grid operations, such as Create, Read, Update, and Delete (CRUD), are many times faster than RDBMs operations as the traditional databases store data in a filesystem (B+ tree), whereas IMDG data is stored in memory.
Apache Ignite IMDG has the following capabilities:
- It supports distributed ACID transactions. You can perform more than one cache operation in a transactional manner.
- Adding more Ignite nodes can store more data and scale elastically.
- It can store data in off-heap storage and also provides capabilities to persist data in RDBMS, HDFS, and NoSQL databases.
- JCache (JSR 107)-compliant cache APIs.
- Supports Spring Framework Integration. You can annotate your Java methods with a Spring cache annotation to access data from the Ignite cache. As we know, SQL summation is a costly time consuming database operation; the following code snippet calculates total PTO hours for a department and stores it in an Apache Ignite cache. Now, if you again invoke the retrieveTotalPaidTimeOffFor method with the same departmentId, it will be served from the cache instead of performing a costly database aggregation:
"ptoHours")
public double retrieveTotalPaidTimeOffFor(int departmentId) {
String sql =
"SELECT SUM(e.ptoHrs) " +
"FROM Employee e " +
"WHERE e.deptId= ?";
return jdbcTemplate.queryForObject(sql, Double.class,
departmentId);
} (
- Hibernate can be configured to store an L2 cache in a Data Grid.
- Web Session Data clustering for high availability.
We will cover the IMDG in Chapter 3, Working with Data Grids.
推薦閱讀
- 集成架構中型系統
- 火格局的時空變異及其在電網防火中的應用
- OpenStack for Architects
- 7天精通Dreamweaver CS5網頁設計與制作
- 并行數據挖掘及性能優化:關聯規則與數據相關性分析
- RPA(機器人流程自動化)快速入門:基于Blue Prism
- 數據掘金
- Prometheus監控實戰
- 深度學習與目標檢測
- Hands-On Data Warehousing with Azure Data Factory
- 電子設備及系統人機工程設計(第2版)
- 30天學通Java Web項目案例開發
- Oracle 11g Anti-hacker's Cookbook
- 網絡規劃與設計
- Orange'S:一個操作系統的實現