Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 75 lines (57 sloc) 2.604 kb
fbd0f95 jkreps Initial import
jkreps authored
1 Getting Started
2
9bb13d7 jkreps Add page for swapping data files for read only stores.
jkreps authored
3 For the most up-to-date information see http://project-voldemort.com
4
fbd0f95 jkreps Initial import
jkreps authored
5 ## checkout and build
6 jkreps@jkreps-md:/tmp > svn co svn+ssh://cm01.corp/lirepo/voldemort/trunk voldemort
7 jkreps@jkreps-md:/tmp > cd voldemort
8 jkreps@jkreps-md:/tmp/voldemort > ant
9
10 ## start single node cluster and connect to table named ÒtestÓ
11 jkreps@jkreps-md:/tmp/voldemort > ./bin/voldemort-server.sh config/single_node_cluster &
12 jkreps@jkreps-md:/tmp/voldemort> ./bin/voldemort-shell.sh test tcp://localhost:6666
13
14 ## run some random commands to put and get strings
15 > help
16 Commands:
17 put key value -- Associate the given value with the key.
18 get key -- Retrieve the value associated with the key.
19 delete key -- Remove all values associated with the key.
236947b Edited NOTES to correct the locate command (which is now preflist).
Chinmay Soman authored
20 preflist key -- Get node preference list for given key.
fbd0f95 jkreps Initial import
jkreps authored
21 help -- Print this message.
22 exit -- Exit from this shell.
23 > put "hello" "there"
24 > get "hello"
25 version(0:1): "there"
236947b Edited NOTES to correct the locate command (which is now preflist).
Chinmay Soman authored
26 > preflist "hello"
fbd0f95 jkreps Initial import
jkreps authored
27 Node 0
28 host: localhost
29 port: 6666
30 available: yes
31 last checked: 4614 ms ago
32
33 Example usage in example/java/voldemort/example/VoldemortExample.java.
34 Example configurations in config/
35
36
37 Code layout
38
39 annotations - Helper annotations
40 client - Code specific to the client
41 cluster - domain model for a voldemort cluster
42 routing - Code specific to routing requests
43 serialization - Code for turning bytes into objects and vice versa
44 server - Code for handling client requests
45 store - All the store implementations used by both client and server
46 utils - Helpers!
47 versioning - Vector clock stuff
48 xml - Code for serializing the configuration data...should probably be move to serialization
49
50
51 Background Resources
52
53 - Amazon Dynamo Paper -- http://s3.amazonaws.com/AllThingsDistributed/sosp/amazon-dynamo-sosp2007.pdf
54 - http://www.allthingsdistributed.com/2007/12/eventually_consistent.html
55 - OpenDHT and Bamboo papers
56 - BDB Performance: http://www.oracle.com/technology/products/berkeley-db/pdf/berkeley-db-perf.pdf
57 - Origin of vector clocks: http://research.microsoft.com/users/lamport/pubs/time-clocks.pdf
9bb13d7 jkreps Add page for swapping data files for read only stores.
jkreps authored
58 - Brewer's conjecture: http://citeseer.ist.psu.edu/544596.html
59
c49df1b jkreps Add support for protocol buffers based network format. Add new client co...
jkreps authored
60 Current build is from r19
61
62
63 Supporting other clients
64 - Each store is available via all protcols, they are seperated by port
65 - Wire format vs. protocol (HTTP vs. Tcp/IP), protocol buffers
66 - How to abstract wire format?
67 - A given serialization type may or may not be supported by the client language
68
69 Socket servers share threadpool?
70
71 A WireProtocol takes bytes and creates a voldemort request, and takes objects to create a voldemort response.
72 Likewise the client does the opposite
73
236947b Edited NOTES to correct the locate command (which is now preflist).
Chinmay Soman authored
74 Connector.handleRequest()
Something went wrong with that request. Please try again.