Tôi đã cố gắng để chạy truy vấn này theo khuyến cáo trong nhóm neo4j google và trong các nguồn trực tuyến khác:Xóa tất cả các nút và các mối quan hệ trong neo4j sử dụng cypher vượt quá không gian đống
BẮT ĐẦU n = nút (*) Đội hình thi đấu n - [r?] -() WHERE ID (n)> 0 DELETE n, r;
để xóa tất cả các nút và mối quan hệ giữa các lần kiểm tra. Khi tôi làm như vậy từ giao diện điều khiển, tôi chạy ra khỏi không gian java heap. Khi tôi làm như vậy từ python (bằng cách sử dụng graph_db.clear mới(), xuất hiện sử dụng cùng một truy vấn), tôi nhận được một "SystemError: None" mà, tôi giả định, là cùng một lỗi không gian java heap. Tôi có một cơ sở dữ liệu với 500k nút, chỉ có mối quan hệ 5k và thuộc tính 7M. Tôi đang chạy trên máy tính xách tay Mac (10.6.8) với RAM 8GB sử dụng neo4j-1.8.1. Tôi đoán tôi là một chút ngạc nhiên khi xóa các nút (về cơ bản không có mối quan hệ, vì vậy rất nhỏ subgraphs) sẽ vượt quá không gian java heap, nhưng tôi khá ngây thơ về cách neo4j hoạt động. Bất kỳ đề xuất nào về cách tiếp tục được đánh giá cao. Tôi biết rằng rm -rf trong thư mục dữ liệu và bắt đầu từ đầu sẽ làm việc, nhưng tôi nghĩ rằng có thể có một giải pháp ít quyết liệt hơn.
[chéo được đưa lên neo4j nhóm google]
Phân trang sau WITH WITH thậm chí còn thuận tiện hơn và hợp lý hơn: 'START n = node (*) MATCH n- [r?] -() VỚI n, r LIMIT 10000 DELETE n, r; ' –
@MichaelHunger không nên là:' START n = node (*) VỚI n LIMIT 10000 MATCH n- [r?] -() DELETE n, r; '? – joewhite86