2014-02-07 44 views
1

我使用neo4j 1.9.4,我存儲28M節點,267M屬性和157M關係。 。neostore。*刪除百萬節點後的文件大小

的neostore *文件:

-rw-R - R-- 1個用戶輪10961964959 7 FEV 9時58 neostore.propertystore.db
-rw-R - R-- 1個用戶wheel 5185764606 7fév09:58 neostore.relationshipstore.db
-rw-r - r-- 1個用戶滾輪3550760192 7fév09:58 neostore.propertystore.db.strings
-rw-r - r-- 1用戶輪子249658236 7fév09:58 neostore.nodestore.db

我刪除26M節點和neostore。*不是縮減:

-rw-r - r-- 1個用戶輪子10961964979 7fév10:20 neostore.propertystore.db
-rw-r - r-- 1個用戶輪子5185764630 7時間10:20 neostore.relationshipstore.db
-rw-r - r-- 1個用戶輪子3550760218 7fév10:20 neostore.propertystore.db.strings
-rw-r - r-- 1個用戶輪子249658252 7fév10:20 neostore.nodestore .db的

我從「門票」索引中刪除所有節點,Lucene索引/索引/ Lucene的/節點/票務文件夾爲空 當我指望所有門票節點我得到0 - >確定

爲什麼neostore 。*文件大小不減少?

這裏刪除代碼=

EndResult<Ticket> tickets = ticketRepository.findByDate(date); // by 1000 
Iterator<Ticket> itTicket = tickets.iterator(); 

    while (itTicket.hasNext()) { 

Ticket t = itTicket.next(); 
Node n = neo4jTemplate.getGraphDatabase().getNodeById(t.getId()); 
neo4jTemplate.getIndex("Ticket").remove(n); 

Iterable<Relationship> relationships = n.getRelationships(); 

    for (Relationship relationship : relationships) { 

    relationship.delete(); 
} 
n.delete(); 

} 

你能幫助我嗎? Charles 關於

回答

1

實際上,在刪除節點後,節點存儲不會立即壓縮。相反,如果您創建新節點,則它們將回收先前在節點存儲中刪除的域。