Angel \”Java\” Lopez on Blog

July 26, 2014

AjKeyvs Implementing Key-Value Store in C# (1) The Project

Filed under: .NET, AjKeyvs, C Sharp, No, NoSQL, Open Source Projects, Test-Driven Development — ajlopez @ 6:40 pm

I want to implement a key-value store (as Redis) in C#, play with data structures, and practice TDD (Test-Driven Development). I started:

The current structure:

There is a class library project, AjKeyvs, that contains the collections in an in-memory repository. The interesting part of this projects is to implement arrays and sets that can be sparse, having different keys. Example, having a key 1 (one) and a key 1000000 (one million) does not imply to have an array with one million positions. At the same, I want to have a good access and update time. In other use cases, I will have string keys, like “user”, “user:1”, “user:1:email”, etc. There are use cases that need the use of sets, with union, intersection, difference, etc… For integer keys, I jave a set where a could turn a bit on or off, for the presence or absense of an element. More implementation details in upcoming post.

The library can be used in-process, but I added a server and a client program. The server listen commands sent by the clientes. All collections reside in memory. Persistence is something orthogonal to the implemented use cases. I should decide if add the persistence into the command processing, or is something to be implemented outside the project.

As usual, I followed TDD workflow.

Next topics: data structures, collections, commands, concurrency, etc.

Stay tuned!

Angel “Java” Lopez

June 9, 2014

MongoDB: Links, News, And Resources (6)

Filed under: Links, MongoDB, No, NoSQL — ajlopez @ 6:43 pm

Previous Post
Next Post

New Course: Introduction to MongoDB | the pluralsight blog

Paul Scott | Rants and musings

Julian Hyde on Streaming Data, Open Source OLAP. And stuff.: Efficient SQL queries on MongoDB

MongoDB Aggregation Framework Examples in C# – Mikael Koskinen

Embedded Node.js database upward compatible with MongoDB

Better MongoDB Performance | Tokutek

Webinar: General Technical Overview of MongoDB for Dev Teams | 10gen

How to Set Up a MongoDB NoSQL Cluster Using Oracle Solaris Zones

Julian Hyde on Streaming Data, Open Source OLAP. And stuff.: Efficient SQL queries on MongoDB MongoDB Aggregation Framework Principles and Examples eBook: John Lynn: Kindle Store

Building a Localized Bidding Platform with MongoDB – New York MongoDB User Group (New York, NY) – Meetup

10gen Education

MongoNYC 2013 | 10gen

Webinar: MongoDB for Content Management | 10gen

shubik/prometheus · GitHub
ODM for Node.js with adapter for MongoDB, with built-in form builder and form parser

My Links

Stay tuned!

Angel “Java” Lopez

Blog at