aboutsummaryrefslogtreecommitdiff
path: root/note/weedfs.txt
diff options
context:
space:
mode:
Diffstat (limited to 'note/weedfs.txt')
-rw-r--r--note/weedfs.txt46
1 files changed, 0 insertions, 46 deletions
diff --git a/note/weedfs.txt b/note/weedfs.txt
deleted file mode 100644
index 329bb5690..000000000
--- a/note/weedfs.txt
+++ /dev/null
@@ -1,46 +0,0 @@
-How to submit a content
-1. Find physical volumes
-1.c Create a hash value
-1.d find a write logic volume id, and return [logic volume id, {physical volume ids}]
-2. submit to physical volumes
-2.c
- generate the cookie
- generate a unique id as key
- choose the right altKey
- send bytes to physical volumes
-2.s each
- save bytes
- store map[key uint64, altKey uint32]<offset, size>
- for updated entry, set old entry's offset to zero
-3.c
- wait for all physical volumes to finish
- store the /<logic volume id>/<key>_<cookie>_<altKey>.<ext>
-
-How to retrieve a content
-1.c
- send logic volume id
-1.d
- find least busy volume's id
-2.c
- send URI /<physical volume id>/<key>_<cookie>_<altKey>.<ext>
-
-
-How to submit a content
-1. send bytes to SeaweedFS, got <volume id, key uint64, cookie code>
- store <key uint64, volume id uint32, cookie code uint32, ext>, and other information
-
-To read a content
-2. use logic volume id to lookup a <machine id>
- render url as /<machine id>/<volume id>/<key>/<cookie>.ext
-
-The directory server
-0.init
- load and collect <logic volume id, machine ids> mapping
-1.on submit content
- find a free logic volume id, start sending content to 3 machines
- if all of them finishes, return <logic volume id, key, cookie code>
-2.on read content
- based on logic volume id, pick a machine with less load,
- return <machine id>
-
-