Coder Social home page Coder Social logo

expert-spoon's People

Contributors

cs5204dpdkteam avatar fire30 avatar luthern avatar vedahari avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

expert-spoon's Issues

Key Value Store Implementation

So I have been looking at ways to do the key value store and there seem to be two possible ways to do a relatively fast key value store. What we use will probably be decided based on what features we want.

We can do something like the B+ tree that was mentioned earlier. This will allow us to do things other than just the simple get, insert, delete etc. For example getting a range would be much easier. It will not be the easiest to implement however.

A simpler way to do it however might just be with a very large hashtable. We could use a hashing algorithm such as FarmHash truncated to something like 28 bits, and then use a bucketing system to store the actual key value pairs. It will take up more memory and doing things such as querying for ranges will not be as easy, however it will probably be a tad faster and will be much easier to implement. We seem to have an abundance of memory though so using a couple gigabytes for the hashtable doesn't seem to be so bad.

I was wondering if anyone had any thoughts on either of these two strategies, or any input in general.

Code Formatting

Since github issues are pretty nice we might as well use them lol.

Anyways I was wondering if there was any style guide that we want to follow. I really like to use clang-format when I am developing and I guess having some guidelines for the code we commit could be nice. We could decide on what we want and then just have one commit to fix all the formatting to the style we chose.

testclient parseLine

From what I can tell 'parseLine' in the testclient file 'main.cpp' allocates the 'struct send_message request' as a local variable and then returns it. Does that work? I would imagine we should be passing the struct by reference but I'm pretty awful at C++.

It seemed like we were getting random data from the client at the KV store when I was playing with it last night, but I could have made a mistake there.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.