Skip to content

Commit

Permalink
More text.
Browse files Browse the repository at this point in the history
  • Loading branch information
szmyd committed Sep 19, 2023
1 parent 8d19933 commit 3ca90e1
Showing 1 changed file with 13 additions and 9 deletions.
22 changes: 13 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,20 +12,24 @@ model throughout making it easy to extend the functionality to tune to specific
A reference Object *StorageSolution* can be found in [HomeObject](https://github.com/eBay/HomeObject).

## Building Blocks
Several building blocks are provided by Homestore that should satisfy the majority cases for custom any given storage
Several building blocks are provided by Homestore that should satisfy the majority cases for any given storage
solution. Each "service" provides a crash-resilient and persistent form of familiar data structures.

### MetaSvc (Map)
// TODO
### MetaSvc (std::map)
K/V store that avoids _torn pages_. Used to store recovery information (e.g. Superblocks) to re-initialize application
state after reboot.

### DataSvc (Heap)
// TODO
### DataSvc (new/delete)
Free flat-allocation space. Hooks are provided if a particular allocation pattern (e.g. Heap) is desirable.

### IndexSvc (HashMap)
// TODO
### IndexSvc (std::unordered_map)
A B+Tree used to optimize for *FAST* Reads. Value is typically the result of allocation from the DataSvc.

### LogSvc (Circular Buffer)
// TODO
### LogSvc (std::list)
Random Access ciruclar buffer. Typically not used directly but levaraged by other Services to provide crash-resiliency.

### ReplicationSvc
An abstraction on DataSvc that replicates between application instances.

## Building

Expand Down

0 comments on commit 3ca90e1

Please sign in to comment.