Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Added README. Minor changes to management scripts.

  • Loading branch information...
commit 5b1d49fb6fead92676776715b1dea8fc2c205dd4 1 parent 2f6671b
Ville Tuulos authored
View
75 README
@@ -0,0 +1,75 @@
+
+Ringo - Distributed key/value storage for immutable data
+--------------------------------------------------------
+
+Ringo is an experimental, distributed, replicating key-value store based
+on consistent hashing and immutable data. Unlike many general-purpose
+databases, Ringo is designed for a specific use case: For archiving
+small (less than 4KB) or medium-size data items (<100MB) in real-time
+so that the data can survive K - 1 disk breaks, where K is the desired
+number of replicas, without any downtime, in a manner that scales to
+terabytes of data. In addition to storing, Ringo should be able to
+retrieve individual or small sets of data items with low latencies
+(<10ms) and provide a convenient on-disk format for bulk data access.
+
+WARNING: Ringo should not be used yet as a primary storage for critical
+data. Due to the fact that Ringo treats all data immutable, data
+corruption or loss should be improbable. However, Ringo needs more
+testing in real-world settings before we can be reasonably sure that it
+works as advertised. To make this happen, feel free to try it out, adapt
+it to your needs, and report your experiences!
+
+
+Requirements
+''''''''''''
+
+- Erlang R12B or newer
+- Lighttpd (or other web server that supports SCGI)
+- Python (optional, needed to run the test harness)
+
+
+Directories
+'''''''''''
+
+doc/ Documentation
+
+ring/ Ringo backend
+ring/bfile High-performance replacement for the Erlang's standard file
+ module
+ring/src Backend sources
+ring/test Test harness
+
+ringogw/ Ringo web frontend
+ringogw/src Frontend sources
+ringogw/web Web interface
+ringogw/py Python interfaces for the Ringo frontend and for the Disco
+ map/reduce framework
+
+
+Compiling
+'''''''''
+
+cd ringo
+./compile.sh
+
+
+Usage
+'''''
+
+
+
+Running the Test Harness
+''''''''''''''''''''''''
+
+
+
+
+
+
+
+
+
+
+
+
+
View
2  create_node.sh
@@ -1,7 +1,7 @@
#!/bin/bash
if [ -z $1 ]; then
- echo "Usage: create_node.sh [host] [ringo_root]"
+ echo "Usage: create_node.sh [host] [ringo_data]"
exit 1
fi
View
2  delete_domain.sh
@@ -1,7 +1,7 @@
#!/bin/bash
if [ -z $1 ]; then
- echo "Usage: delete_domain.sh [node] [ringo_root] [domainid]"
+ echo "Usage: delete_domain.sh [node] [ringo_data] [domainid]"
exit 1
fi
View
2  list_domains.sh
@@ -1,7 +1,7 @@
#!/bin/bash
if [ -z $1 ]; then
- echo "Usage: list_domains.sh [node] [ringo_root]"
+ echo "Usage: list_domains.sh [node] [ringo_data]"
exit 1
fi
View
11 start_nodes.sh
@@ -1,14 +1,19 @@
#!/bin/bash
if [ -z $1 ]; then
- echo "Usage: start_nodes.sh [host] [ringo_root]"
+ echo "Usage: start_nodes.sh [host] [ringo_data]"
exit 1
fi
-for id in `ssh $1 "ls -1 $2"`
+if [ -z $RIBGO_ROOT ]; then
+ RINGO_ROOT=$(cd `dirname $0`; pwd)
+fi
+echo "RINGO_ROOT is $RINGO_ROOT"
+
+for id in `ssh $1 "ls -1 $3"`
do
echo "Starting ringo-$id"
- ssh $1 "ringo/ring/start_ringo.sh $2/$id"
+ ssh $1 "$RINGO_ROOT/ring/start_ringo.sh $3/$id"
sleep 1
done
Please sign in to comment.
Something went wrong with that request. Please try again.