Như mọi khi, như với bất kỳ giải pháp kiên trì, hiệu suất phụ thuộc rất nhiều vào các phương tiện truyền thông kiên trì sử dụng. Đĩa tốt hơn bằng hiệu suất tốt hơn. Nếu bạn có nhiều đĩa hoặc phương tiện truyền thông kiên trì có sẵn, nó có thể là một ý tưởng tốt để phân chia các tập tin lưu trữ và các bản ghi giao dịch trên các đĩa. Có các tập tin lưu trữ trên đĩa chạy với thời gian thấp tìm kiếm có thể làm điều kỳ diệu cho các hoạt động đọc. Hôm nay một ổ đĩa cơ khí điển hình có thời gian trung bình khoảng 5ms tìm kiếm. Điều này có thể gây ra một truy vấn hoặc traversal được rất chậm khi lượng RAM được gán cho bộ nhớ cache trang là quá nhỏ. Một SATA tốt mới kích hoạt SSD có trung bình thời gian ít hơn 100 micro giây tìm kiếm, có nghĩa là những kịch bản sẽ thực hiện ít nhất 50 lần nhanh hơn. Tuy nhiên, đây vẫn là hàng chục hoặc hàng trăm lần chậm hơn truy cập vào bộ nhớ RAM. Để tránh đụng đĩa bạn cần thêm RAM. Trên một ổ đĩa cơ khí tiêu chuẩn, bạn có thể xử lý đồ thị với một vài chục triệu của nguyên thủy (các nút, các mối quan hệ và tài sản) với 2-3 GB RAM. Một máy chủ với 8-16 GB bộ nhớ RAM có thể xử lý đồ thị với hàng trăm triệu người nguyên thủy, và một máy chủ tốt với 16-64 GBS có thể xử lý hàng tỷ nguyên thủy. Tuy nhiên, nếu bạn đầu tư vào một SSD tốt, bạn sẽ có thể xử lý đồ lớn hơn nhiều trên RAM ít hơn. Sử dụng các công cụ như dstat hoặc vmstat để thu thập thông tin khi ứng dụng của bạn đang chạy. Nếu trao đổi hoặc phân trang số cao, sau đó là một dấu hiệu cho thấy các chỉ số Lucene không hoàn toàn phù hợp trong bộ nhớ. Trong trường hợp này, các truy vấn mà làm tra cứu chỉ số sẽ có độ trễ cao. Khi Neo4j khởi động, bộ nhớ cache trang của nó là rỗng và cần phải ấm lên. Điều này có thể mất một thời gian, đặc biệt là cho các cửa hàng lớn, do đó, nó không phải là hiếm thấy một thời gian dài với nhiều khối được đọc từ ổ đĩa, và IO cao thời gian chờ đợi. Neo4j cũng xả cache của nó trong nền, do đó, nó không phải là không phổ biến để thấy một tia nước ổn định của khối được ghi vào ổ đĩa, trong trạng thái ổn định. Nền này chỉ xả nước sản xuất một số lượng nhỏ của IO chờ đợi, tuy nhiên. Nếu IO chờ đợi thời gian được tính cao trong trạng thái ổn định, sau đó nó có thể là một dấu hiệu cho thấy Neo4j là chai cổ trên IO ngẫu nhiên hiệu suất của ổ đĩa. Các ổ đĩa tốt nhất cho chạy Neo4j là ổ SSD nhanh, có thể mất rất nhiều IOPS ngẫu nhiên.
đang được dịch, vui lòng đợi..
