我想开发一个分层数据库来在文件系统中存储目录结构。
就像
一样Root -dir -subdir -subdir -subdir -subdir -subdir -subdir -subdir
我可以使用Apache Cassandra吗
一个java示例会更好理解。
答案 0 :(得分:7)
您可以在列族中存储路径的数据,类型和父级,
paths { #colum family
"/some/path" { # key
"type" : "file|directory" #column, either file or directory, if this is a file or a directory
"data" : "??" # if this is a file, the data for the file. you don't want to be storing very large files in cassandra in one column
}
}
使用cassandra,您需要进行非规范化以提供您要执行的查询。您可能想要查询目录的子项,因此具有类似
的结构children { #column family
"/some/path" { # key
"child-path-1" : null #column, one for each child of /some/path
"child-path-2" : null
}
}
添加更多列系列以支持您希望执行的其他查询。
答案 1 :(得分:1)
您好我会为关系型dbms架构做些什么。
product{
id int,
parent_id int,
name varchar2(30)
}
示例数据:
product
--------------------
id | parent_id | name
0 | 0 | root
1 | 0 | laptop
2 | 0 | pc
3 | 1 | Dell Latitude E4310
4 | 1 | Dell Vostro E3300
5 | 2 | Compaq Desktop 3
6 | 2 | Compaq Presario 2