대상 테이블을 대상(100,000개 데이터)이라고 하고, 가져와야 하는 테이블을 소스(100,000개 데이터)라고 가정합니다. 이 예에서 소요되는 시간의 대부분은 두 테이블의 레코드가 동일한지 확인하는 것입니다. 작성자는 모든 필드가 동일하기를 원합니다(id 필드 제외). 같은 기록.
새로 생성된 대상 및 소스 필드(hashValue)에 저장할 수 있는 각 레코드에 대해 해시와 같은 값을 계산합니다. 그런 다음 다음 명령문을 사용하여 데이터를 가져옵니다
대상 테이블을 대상(100,000개 데이터)이라고 하고, 가져와야 하는 테이블을 소스(100,000개 데이터)라고 가정합니다.
이 예에서 소요되는 시간의 대부분은 두 테이블의 레코드가 동일한지 확인하는 것입니다. 작성자는 모든 필드가 동일하기를 원합니다(id 필드 제외). 같은 기록.
새로 생성된 대상 및 소스 필드(hashValue)에 저장할 수 있는 각 레코드에 대해 해시와 같은 값을 계산합니다.
으아악그런 다음 다음 명령문을 사용하여 데이터를 가져옵니다
거래 효율성을 고려한다면 높지 않아야 합니다
개인적인 생각은 다음을 참고해주세요
1. 먼저 삽입할 데이터가 존재하는지 확인하세요
id가 있는 테이블에서 ID를 선택하세요('k1,k2,k3');
2. 데이터베이스에 SQL을 작성합니다.
10w 데이터, 1 sql, 삽입 속도, 2초 안에 해결https://my.oschina.net/famous...
제 개인적인 생각은, 가져올 때 무게를 판단하고 고유한 색인을 설정하여 고유성을 보장하는 것이 핵심입니다.
이 문제를 토대로 후속 가져오기 과정에서 큰 문제가 발생했고, 데이터 가져오기 속도도 느려져서 이에 대한 글을 작성하게 되었습니다.
/a/11...
누군가 나중에 보시고 참고용으로 활용하시면 좋겠습니다.