GithubHelp home page GithubHelp logo

robaho / leveldbr Goto Github PK

View Code? Open in Web Editor NEW
7.0 4.0 0.0 43 KB

remote access to robaho/leveldb databases

License: GNU General Public License v3.0

Dockerfile 0.28% Go 99.72%
database go key-value leveldb lsm lsm-tree

leveldbr's Introduction

About

Remote access to leveldb database. Uses Google protobufs and gRPC.

Notes

There is a single gRPC stream per open database, upon which all requests are multiplexed. The stream is shared but requests are completed synchronously (since the server processes an inbound message synchronously) but this may change in the future to allow overlapping requests - that is, asynchronous handling by the server. For best performance, multiple connections should be made to the server, rather than sharing a database connection.

To Use

go run cmd/server

There is a sample command line client in cmd/client which uses the client API.

Performance

Using the same 'performance' test as leveldb, but using the remote layer:

insert time  1000000 records =  111719 ms, usec per op  111.719936
close time  1356 ms
scan time  2779 ms, usec per op  2.779619
scan time 50%  1238 ms, usec per op  2.476208
random access time  93.91525 us per get
insert batch time  1000000 records =  2814 ms, usec per op  2.814384
close time  815 ms
scan time  2891 ms, usec per op  2.891363
scan time 50%  1212 ms, usec per op  2.42586
random access time  96.80413 us per get

leveldbr's People

Contributors

robaho avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

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.