2012-07-03 26 views
6

Tôi có hai trường hợp Jackrabbit chứa cùng một nội dung. Việc xây dựng lại chỉ số Lucene chậm, 30 giờ trở lên và thời gian ngừng hoạt động cần thiết trong cụm là nguy hiểm. Có thể thay vào đó chỉ cần tái chỉ mục một Jackrabbit sau đó sao chép chỉ số Lucene từ thể hiện đó sang thể hiện khác?Sao chép các chỉ mục Lucene giữa các kho lưu trữ của Jackrabbit

Tạm thời sao chép các tệp chỉ mục Lucene bên dưới thư mục không gian làm việc không hoạt động. Vấn đề có vẻ là nội dung được lập chỉ mục theo số tài liệu ánh xạ tới UUID ánh xạ tới đường dẫn JCR cho nút được lập chỉ mục, nhưng các UUID này không ổn định cho một đường dẫn nhất định giữa các cá thể Jackrabbit. (Cả hai thực tế là các phiên bản của nhà xuất bản Ngày CQ được điền bằng cách sao chép từ một cá thể tác giả CQ.)

Tôi đã quản lý ánh xạ UUID-to-path trong kho lưu trữ theo/jcr: system/jcr: versionStorage/but I không thể thấy một cách dễ dàng để sao chép giữa các kho lưu trữ cùng với chỉ mục Lucene. Và sau đó tôi không thể tìm thấy ánh xạ ID tài liệu UUID-> ở bất kỳ đâu trong các tệp - đó có phải là phần của chỉ mục Lucene không?

Cảm ơn bạn đã được trợ giúp. Tôi đang nghiêng về phía chỉ tái lập chỉ mục dụ thứ hai một cách riêng biệt và chấp nhận thời gian chết nhưng bất kỳ ý tưởng nào để giảm nguy cơ hoặc thời gian trôi qua của việc tái lập nhóm được đánh giá cao!


Cuối cùng chúng ta sẽ tái-index-chúng-cả hai tuyến đường: chúng ta đã quản lý để sử dụng lại một trường hợp thử nghiệm như một ví dụ sống thêm rằng chúng ta có thể thả vào trại tạm trong khi chúng tôi lấy khác hai lần lượt để tái lập chỉ mục. Tuy nhiên tôi vẫn muốn được nghe những cách tốt hơn để làm điều này!

+0

Hãy xem bài đăng này - mặc dù có thể bạn đã thấy nó. http://stackoverflow.com/questions/670182/index-replication-and-load-balancing –

+0

Cảm ơn. Không, tôi không nghĩ bất kỳ cái nào phù hợp với tôi: đó là công cụ tìm kiếm được nhúng nên tôi không thể chuyển sang Solr và các câu trả lời khác sao chép các tệp chỉ mục không đủ cho tôi. Tôi cần bằng cách nào đó kết hợp dữ liệu đường dẫn nút với chỉ mục và sao chép, sau đó xây dựng lại đường dẫn -> UUID -> ánh xạ số tài liệu ở khác, hoặc bằng cách nào đó chuyển đổi chỉ mục sao chép để sử dụng các số tài liệu trên hệ thống đích trên hệ thống nguồn. – Rup

Trả lời

2

Điều đó có vẻ như một ý tưởng đáng sợ, trung thực. Tôi không chắc chắn có bất kỳ cách nào để đảm bảo rằng bạn đã có cùng một dữ liệu cơ bản, ngay cả với cấu hình phần cứng và nội dung giống nhau.

Nếu số hiệu suất của bạn giống như số của chúng tôi, thời gian sao chép toàn bộ kho lưu trữ nhỏ hơn thời gian cần thiết để reindex. Bạn đã xem xét chỉ reindexing một kho lưu trữ, làm một bản sao lưu/sao chép, và sau đó cấu hình sao lưu/sao chép là trường hợp thứ hai của bạn?

+0

Cảm ơn - không, điều đó đã không xảy ra với tôi, đó là một ý kiến ​​hay. Có rsyncing hai kho lưu trữ là nhanh hơn so với một chỉ số lại, nhưng khi chúng tôi rsync sống đến một máy tính thử nghiệm, chúng tôi luôn luôn kết thúc với một vài ổn định. Kho lưu trữ của chúng tôi quá lớn và chúng tôi không có đủ bộ nhớ để thử sử dụng các tùy chọn sao lưu và khôi phục khác nhau của CQ, vì vậy tôi nghĩ chúng tôi phải gỡ xuống máy chủ nguồn sao chép cũng như máy chủ đích sao chép để thử điều này, và sau đó chúng tôi trở lại chỉ có một máy trong cụm trực tiếp trong khi bản sao đang diễn ra. Tuy nhiên tôi sẽ chạy quá khứ này! – Rup

+0

Nếu bạn nhìn vào cách hoạt động của sao lưu trực tuyến CQ, về cơ bản nó sẽ thực hiện một loạt các rsyncs. Mỗi lần lặp lại có ít hơn để sao chép và sau đó nó khóa ở cuối cùng. Tôi đã có may mắn khá tốt bằng cách sử dụng các rsyncs lặp lại để thực hiện điều tương tự để sao chép máy chủ đang chạy. Rõ ràng là hoạt động tốt nhất nếu máy chủ được sao chép không nhìn thấy nhiều ghi. – lo5an

Các vấn đề liên quan