《Seven NoSQL Databases in a week》关于Neo4j的笔记。
1. 不要把neo4j 当作关系数据库使用
关系数据库关心的是数据如何存储。而不关心数据如何查询。所以在使用nosql之前,建模很重要。Neo4j关注的是节点,以及节点之间如何关联。
2. 第一次在关键任务中使用Neo4j
3. 将关系存储在节点内部,即一个实体内部嵌套其他实体,这样会导致节点数据很大
这就是为什么要单独创建关系了。
4. 不恰当的使用关系的类型。
节点之间的关系必须是有意义的。关系必须是唯一的。这需要深入的理解图形数据库。
5. 存储大的二进制对象。
BLOB对象导致大的属性值,Neo4j使用一个文件来存储属性值的。这样会导致读取时间过长,同时减缓其他属性的读取。
6. 在所有属性上添加索引
Neo4j支持两种类型的索引:schema indexes 和 legacy indexes。如果节点或者关系的每个属性都创建索引,会导致额外的写操作。