SaaSHub helps you find the best software and product alternatives Learn more →
Libpmemobj-cpp Alternatives
Similar projects and alternatives to libpmemobj-cpp based on common topics and language
-
OpenMLDB
OpenMLDB is an open-source machine learning database that provides a feature platform computing consistent features for training and inference.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
libpmemobj-cpp reviews and mentions
-
UltraRAM: 'Universal Memory' That Brings RAM-Like Speed to Non-Volatile Storage
Another comment already mentions this, but I guess a functional data structure would be easiest to maintain, even though there's stuff like this for PMEM such that any data structure would work essentially: https://pmem.io/
This[1] Open Source data store I'm maintaining is storing a huge tree of tries eventually on durable storage, but it's essentially a huge persistent index stored in an append-only file. The last layer of "indirect index pages" stores list of pointers to page fragments, which store the actual records (the list however is bound to a predefinded size). A single read-write trx per resource syncs the new page fragments, which mainly only include the updated or new records plus the paths to the root page to a durable device during a postorder traversal of the in-memory log. The last thing is an atomic update, which sets a new offset to point to the new UberPage, the root of the storage. All pages are only word aligned except for RevisionRootPages, which are aligned to a multiple of 256 bytes. All pages are compressed and might in the future optionally be encrypted.
I guess these byte addressable persistent memory devices are an ideal fit for small sized parallel random reads of potentially tiny page fragments to reconstruct a full page in-memory.
However, I hope they'll eventually achieve a better price in comparison to DRAM and SSDs than Intel Optane DC PMEM current price range.
[1] https://github.com/sirixdb/sirix
-
ELI5: what is pmem?
Yes it is persistent memory programming. https://pmem.io/
-
Languages experimented with distributed heap support?
Predating Intel's persistent memory a.k.a. NVDIMM, I see a research product "Hotpot" on its practical application as distributed shared memory ( paper and source code ), despite the hardware adoption issue and its apparent research nature (stuck with customized 3.x Linux kernel), I find the core idea not so bound to such a whole new technology stack, covering from low level device driver to application programming toolkit, even depending on sth like 40Gbps RDMA with InfiniBand SAN connection.
-
Can't figure out how to link C++ library installed with apt-get
It's more work but it looks like you can get the C++ bindings off their github and use them directly. You may have to experiment with different releases to find one compatible with whatever version of the base library you have installed.
-
A note from our sponsor - SaaSHub
www.saashub.com | 10 May 2024
Stats
pmem/libpmemobj-cpp is an open source project licensed under GNU General Public License v3.0 or later which is an OSI approved license.
The primary programming language of libpmemobj-cpp is C++.
Popular Comparisons
Sponsored