2013-02-20 2 views
1

derby DB 및 파일 시스템 저장소를 기반으로하는 내부 지속성 관리자를 사용했습니다.즉시 Jackrabbit 지속 관리자를 변경하는 방법은 무엇입니까?

이제는 약 150 만 개의 파일과 3TB의 레포가 있으며 약 6 백만 개의 레코드가 더비 DB에 저장됩니다.

지난 번에 성능이 매우 느려졌 기 때문에 그 DB에는 너무 많은 부분이 있다고 생각합니다.

그래서 지속성 관리자를 MySQL 또는 Oracle과 같은 것으로 변경하고 싶습니다.

Apache Jackrabbit derby DB에서 데이터를 내보내고 MySQL로 가져 오는 가장 좋은 방법은 무엇입니까?

가장 쉽고 빠른 방법으로 어떻게 할 수 있습니까?

+0

실시간으로 변경하고 싶습니까? 아니면 지속성 관리자를 변경할 때 데이터를 유지 하시겠습니까? –

+0

아니요, 24x7 런타임이 필요하지 않습니다. 다른 곳으로 데이터를 보내지 않고도 데이터를 유지할 수 있습니다. – vvchik

답변

2

Backup and Migration 페이지에서 Jackrabbit 또는 새로운 persistence manager 버전으로 이전하는 방법에 대해 설명합니다.

제 경험상 MySQL이나 Oracle이 실제로 빠르지는 않습니다. Derby가 내장되어 있습니다. MySQL과 Oracle은 원격이므로 각 요청마다 네트워크 왕복이 있습니다.

대신 더 높은 bundle cache size 및/또는 더 높은 데이터베이스 캐시 크기를 사용하면됩니다.

+0

가능한 한 바로, 성능이 훨씬 더 작은 데이터베이스에서 더비와 동일합니다. 하지만 큰 db 결과에서 무엇이 동일 할 지 확신하지 못합니다. 나는 시도하고 싶다. 프로파일 링 도구 (dynatrace)가 db에 삽입되는 데 약 7 초가 걸렸음을 보여주기 때문입니다. 그것은 너무 많습니다. 그러나 작은 DB에서는 몇 밀리 초 밖에 걸리지 않았습니다. 수백만 개의 레코드가있는 외부 DB보다 네트워크 대기 시간이 더 빨라질 것이라고 생각합니다. 인덱스는 삽입 작업에 많은 도움이되지 않는다고 생각합니다. – vvchik

+0

큰 저장소의 문제는 임의로 분산 된 노드 ID입니다 (https://issues.apache.org/jira/browse/JCR-2857 참조). –

관련 문제