diff options
Diffstat (limited to 'docs/merkle-tree-hierarchy.puml')
| -rw-r--r-- | docs/merkle-tree-hierarchy.puml | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/docs/merkle-tree-hierarchy.puml b/docs/merkle-tree-hierarchy.puml new file mode 100644 index 0000000..4e86e26 --- /dev/null +++ b/docs/merkle-tree-hierarchy.puml @@ -0,0 +1,50 @@ +@startuml merkle-tree-hierarchy +!theme plain +title Merkle Tree Hierarchy + +package "Database Level" { + [Database Hash] as DBHash + database "Merkle Tree of Relations" as DBTree +} + +package "Relation Level" { + [Relation Hash 1] as R1Hash + [Relation Hash 2] as R2Hash + [Relation Hash N] as RNHash + + database "Merkle Tree of Tuples (R1)" as R1Tree + database "Merkle Tree of Tuples (R2)" as R2Tree +} + +package "Tuple Level" { + [Tuple Hash 1.1] as T11 + [Tuple Hash 1.2] as T12 + [Tuple Hash 2.1] as T21 + [Tuple Hash 2.2] as T22 +} + +DBHash --> DBTree +DBTree --> R1Hash +DBTree --> R2Hash +DBTree --> RNHash + +R1Hash --> R1Tree +R2Hash --> R2Tree + +R1Tree --> T11 +R1Tree --> T12 +R2Tree --> T21 +R2Tree --> T22 + +note bottom of DBHash + Single hash represents + entire database state + + Benefits: + - Version control + - Efficient diffing + - Distributed sync + - Integrity verification +end note + +@enduml |
