현재 성능 문제를 해결하기 위해 노력하고 있습니다. 데이터를 검색하고 페이지 매김 방식으로 제시하는 데는 약 2-3 분이 걸립니다.거대한 데이터베이스 테이블을 빠르게 복제하는 방법
추가 조사 (그리고 여러 SQL 튜닝 후)에서는 데이터 양이 너무 많아서 검색 속도가 느린 것으로 보입니다.
내가 현재 조사하고있는 가능한 해결책은 검색 가능한 캐시에 데이터를 복제하는 것입니다. 이제이 캐시는 데이터베이스 (즉, 구체화 된 뷰)에있을 수도 있고 db 외부에있을 수도 있습니다 (nosql 방식). 그러나, 나는 캐시를 수평으로 확장 가능하게하고 싶기 때문에 데이터베이스 외부로 캐싱하기를 기대합니다.
개념 증명을 만들었으며 실제로 캐시에서 검색하는 것이 db보다 빠릅니다. 그러나 초기 전체 복제는 완료하는 데 시간이 오래 걸립니다. 전체 복제는 한 번 발생하지만 후속 복제는 마지막 복제 이후 변경된 복제에 대해 점진적으로 증가하지만 초기 전체 복제의 속도를 높일 수 있다면 여전히 좋습니다.
그러나 전체 복제 중에 쿼리 실행 속도가 느린 것을 제외하고 네트워크 대기 시간에도 맞서야합니다. 사실, 느린 쿼리 실행 시간을 처리 할 수 있습니다. 그러나 네트워크 지연으로 인해 실제로 복제 속도가 느려집니다.
그럼 내 질문에 이르게됩니다. 어떻게 복제 속도를 높일 수 있습니까? 각 스레드마다 여러 개의 스레드를 생성해야합니까? 스크롤 할 수 있어야합니까? 객체 또는 데이터 구조
실시간 데이터인가요, 아니면 사실보고 후입니까? nosql 솔루션이이 특정 쿼리 (예 : –
)에서 작동하는지 확인하려고 할 수 있습니다. 우리의 RDBM (또는 어쨌든 테이블의 일부)을 nosql 저장소에 복제 할 것입니다. –