polyhaze / sharpdb Goto Github PK
View Code? Open in Web Editor NEW100% Native C# Key Value Store High Performance NoSQL Database with ACID Transaction
License: MIT License
100% Native C# Key Value Store High Performance NoSQL Database with ACID Transaction
License: MIT License
Implement cache, reader and writer that will give in memory ability.
Also add reader & writer which load from file but then read from and write to memory
in in memory configuration the cache should be disabled.
Implement connection pool in the driver
right now the server is single threaded. I will be smart to make multiple threads, one to handle writes, one to handle reads and another one for long operations (like backup, shrinking or indexing in the future).
This is must in order to implement shrinking feature without to clear all cache
Right now the driver is working with objects (Get, Update, Delete) add extensions method that add JsonDocument and byte array instead of objects.
will use common logging for all components, executable application will configure log4net as the logging framework.
Host more than one database on the same server and connection
Run the database inside the running application (using netmq in proc)
When reading an object during transaction I might want to mark it as locked to make sure it's not changed until the end of transaction
Give the ability to extend the server by handling custom messages and listen to internal server events.
In the server the server class handle all message types internally, it should call different message handlers.
This is more elegant and in the future will give the possibility to extend the server with more message types.
Have configuration file to configure the server with different parameters (cache type,cache size, file writer and file reader)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.