나는 당신의 상황이 정확히 무엇인지 잘 모르겠지만 몇 가지 가능성을 생각해 볼 수 있습니다.
- 두 데이터베이스는 정확히 동일합니다. 두 디렉토리 모두에서 체크섬을 실행하면 해시가 일치합니다.
왜이 두 사본이 필요합니까? 여러 개의 q 프로세스를 동일한 데이터베이스 사본에서 실행할 수 있습니다. 실제로 이것은 OS 디스크 캐시가 제공하는 공유 캐싱의 이점을 누리기 때문에 바람직합니다. 사본 중 하나를 삭제하고 모든 q 프로세스가 동일한 디렉토리를 가리 키기 만하면됩니다.
- 두 데이터베이스에는 동일한 출처에서로드 된 데이터가 포함되어 있지만 다른 데이터는 포함되어 있지 않습니다. 동일한 쿼리로 각 데이터베이스를 쿼리하면 동일한 결과가 나올 수 있지만 파일의 체크섬은 일치하지 않습니다.
데이터베이스가 독립적으로 생성되었지만 원본 데이터가 동일한 경우에 발생할 수 있습니다. 실제로 파일의 복사본을 만들지 않는 한 데이터베이스가 동일하다고 가정 할 수는 없습니다. 분명한 예로는 각 데이터베이스에로드 한 파일 묶음이 있지만로드 된 파일의 순서는 각 데이터베이스마다 다릅니다. 이 경우에 은 같은 sym 파일을 사용할 수 없습니다! 이렇게하면 데이터가 으로 보이게됩니다. 언뜻보기에는 괜찮지 만 모든 sym 값이 잘못되었습니다. 어떤 이유로 두 데이터베이스를 결합하려면 하나의 데이터베이스에서 데이터를 가져 와서 다른 데이터베이스에로드해야합니다. 이것은 데이터를 손상시키지 않는 100 % 확신 할 수있는 유일한 신뢰할 수있는 방법입니다.
- 각각 동일한 테이블을 포함하는 서로 다른 두 개의 데이터베이스가 있습니다 (체크섬 의미에서 하나의 디렉토리에서 다른 디렉토리로 테이블 파일을 복사했을 수 있습니다).
일부 기적에 의해 sym 값이 모두 일치하지 않는 한이 방법은 효과가 없을 것입니다. 나머지 데이터베이스가 다른 경우에는 그렇지 않습니다. 이것은 열거 된 sym 값이 전역 적이며 데이터베이스의 모든 sym 값에 종속되기 때문입니다. 두 데이터베이스 모두에서 테이블을 원할 경우 복사 할 데이터베이스의 sym 열을 다시 열어야합니다.
데이터베이스가 정확히 동일한 데이터 형식을 포함하고 있지 않습니다. 하나를 읽고 다른 사람에게 저장해야하는 것처럼 보입니다.도와 줘서 고마워. –