Wednesday 11 September 2024

KVRocks - The fascinating Redis Replacement from the Apache project

Kvrocks is an advanced, open-source, distributed key-value store that extends the functionalities of traditional key-value databases by integrating the simplicity of Redis with the robustness of RocksDB. Developed as an Apache project, Kvrocks combines the high-performance capabilities of RocksDB, a leading embedded database engine, with the rich, in-memory data structure features found in Redis.

At its core, Kvrocks leverages RocksDB’s log-structured merge-tree (LSM-tree) architecture to offer efficient write operations and high compression rates, addressing common challenges associated with persistent storage. This architecture enables Kvrocks to handle large volumes of data and achieve high throughput, making it suitable for scenarios requiring both high-speed access and persistent storage.

Kvrocks is designed with a focus on high availability and scalability. It supports various data distribution strategies, including sharding, to manage large datasets across multiple nodes. The system’s architecture incorporates a distributed design that enables horizontal scaling, facilitating seamless expansion as data and request volumes increase.

In terms of API compatibility, Kvrocks provides a Redis-compatible interface, allowing for straightforward migration from Redis to Kvrocks. This compatibility ensures that existing Redis clients and applications can leverage Kvrocks without extensive modifications.

Furthermore, Kvrocks includes features for data replication and fault tolerance, using mechanisms such as master-slave replication and automatic failover to maintain data integrity and availability. These features are crucial for ensuring continuous operation in distributed environments. 

The replication uses a MySQL like binlog mechanism that helps relay changes to multiple layers of replicas from a single source and thus allows the data to be replicated into cluster nodes near or far. 

Overall, Kvrocks represents a sophisticated blend of Redis’s in-memory data handling and RocksDB’s persistent storage capabilities, offering a powerful solution for modern data management needs in distributed and high-throughput contexts.

Wednesday 11 October 2023

eXistDB - The Open Source native XML Database

So, a bit of history to start with... XML or Extensible Markup Language is a subset of SGML that gained popularity in late 90's and beginning of the next decade. That's when SOAP was considered the best way to implement SOA and it made you use XML. That was well before JSON was ubiquitous and BSON was known to most. Software AG were the first to come up with a native XML data store called Tamino XML Server. It was rightly timed and feature rich, the open source community realized there was a need for something that offered similar functionality in the open source world. eXistDB was created.

While one might think of eXistDB as something similar to CouchDB, i.e. a document store with a RESTful API. But eXistDB has to offer a lot more in terms of application development. It allows ease of development and deeper integration into applications via support for XSLT and hence can deliver the documents in a formatted state, thus taking the processing burden off from the front end application and reduce the amount of data exchange required.




Sunday 17 April 2022

OpenSource Software Comparison Database

If you have ever looked up a comparison of software, a number of sites show up with a side by side omparison. However, there is one that stands out where the comparison data is crowd sourced and isn't coming from the website management team. Secondly, the UI is slick and offers a decent categorized catalog of softwares to look up and compare.

Here is the link 🔗

Please do beowse and share your thoughts.

Sunday 16 August 2020

ScyllaDB's newest selling proposition

So, all the Cassandra users probably know by now that ScyllaDB provides a great drop-in replacement for Cassandra and not just that, it does so with guaranteed response times and improved deployment density.

The latest release from ScyllaDB boasts another interesting feature, in addition to the standard Cassandra interface it now offers a full-flegedged DynamoDB API.

 So, if you have an application that's write-heavy and is getting very expensive, it may be time to either redesign your application or consider switching to ScyllaDB with DynamoDB support.

In case you are wondering how it's done, Scylla University has got a training course for exactly that, and can be found here

Thursday 2 July 2020

New MySQL Terminology for High Availability

Kenny Gryp is a good friend who is working for Oracle these days and is really really good with MySQL. He recently wrote a great article about something that is changing for all the right reasons, namely the terms you use to refer to a master or slave server (speaking customarily, being an old timer).

The new nomenclature for #mysql replication is good, and will take some time to get used to but this is a good time to get it over with.

The article is available here on the MySQL High Availability Blog

Yes, Another Open Source Database Blog !

Every professional is a unique individual, with a potentially unique perspective about what they have been up to in their professional and personal life and hence can always provide value to their readers through their original content or by augmenting content from other experts with their opinions and thoughts.

Having been involved with large scale database work during my previous job engagements, I have had some interesting experiences. I used to have a blog that's been lost during a country move where the custom domain was lost. It wasn't focused on databases, but this one is different as it is focused on databases.

 The fact that computers can store and retrieve data at a very high rate and usually don't forget any of they fasinated me when I first learned that in early nineties. So, from dBase 3 Plus and FoxPro 🦊 to MySQL, Oracle, SQL Server, MongoDB and Couchbase I have had a chance to use a lot of data stores, some as a developer and others in more if an administrative role.

So, thanks for visiting and read on, hope to see you around often !

KVRocks - The fascinating Redis Replacement from the Apache project

Kvrocks is an advanced, open-source, distributed key-value store that extends the functionalities of traditional key-value datab...