-
Notifications
You must be signed in to change notification settings - Fork 10
Garbage Collection
LunarMMU has an internal garbage collector to release the memory allocated by lmalloc. Its design aims to collect various memory blocks allocated by user at JAVA end, but strictly makes sure it will never cause any pause at run-time. It is light weighted, but can clean up discarded blocks via hundreds of GB memories. And if user want a direct control of big off-heap memory, LunarMMU is the right choice to you.
Internally, LunarBase use MMU to cache hot data, e.g. the latest one million records in memory. Data inside heap is controlled by JVM memory unit and GC, there is a serialization and de-serialization procedure to transfer data from inside to the outside direct memory.
In run time, user may specify via cache_records_in_memory parameter to control the memory upper bound.
cache_records_in_memory = 24
In this example, 1<<24=16M records will be cached. If with each size of 1k, the memory consumption will up to 16GB.
1 Home
1.1 summary
1.2 System Preparation
1.3 When LunarBase is your best choice
1.4 Benchmark
1.5 Power consumption
2 Data Model And Process
2.1 Why internal big cache
2.2 Memory Management: LunarMMU
2.3 Garbage Collection
2.4 Transaction Log
2.5 JOIN via materialized view
3 Real Time Computation: LunarMax
3.1 In-Memory File System: Memory Estimation
3.2 Configuration
3.3 Use SSD as a cheaper memory
3.4 Data Safety
3.5 HE Server VS. Cluster
3.6 High Availability
4 Create a database
4.1 Three modes
4.2 creation.conf settings
4.3 Table space
4.4 Multiple Instance
4.5 Database Status
4.6 Remove and Restore a table
5 Insertion
5.1 Insert as normal record
5.2 Insert to search engine
6 Query
6.1 Point Query
6.2 Result Handler: register your own event handler
6.3 Interpreter Pattern: complex query conditions
6.4 Range Query
6.5 Full-text Search
6.6 Algebraic Logical Query
8 Deletion
9 Materialized view
9.1 Eventual consistency
9.2 Update
9.3 MVCC in LunarBase
9.4 Easy JOIN via denormalization
9.5 CRUD in view
10 Distributed integration with
10.1 Kafka
10.2 Storm
10.3 Spark
11 Storage: Lunar Virtual File System
13 Roadmap of LunarBase future
15 FAQ