2 utf-8 텍스트 파일이 있어야합니다. 파일의 각 행에는 Ü, Ö, ą, ª와 같은 언어 특정 문자를 포함 할 수있는 문자열이 있습니다. 문자열은 무작위 순서 및 길이이며 반복 될 수 있습니다. 첫 번째 파일에는 적어도 3 백만 건의 행이 있습니다 (1mld 행을 넘는 것은 쉽습니다). 두 번째 파일은 작아서 일반적으로 약 400,000 행을 얻습니다 (그러나 훨씬 더 커질 수 있음).빠른 데이터 추출 알고리즘
파일 2에 나타나는 제거 된 항목이있는 파일 1의 항목과 모든 반복 항목을 포함하는 새 파일을 만들어야합니다.
현재 두 파일을 모두 정렬하고 반복되는 항목을 제거합니다. 다음으로 두 번째 파일에 새 파일이 있는지 확인하면서 새 파일에 쓰고 있습니다.
더 빠른 방법이 있습니까?
편집
메모리에 문제가 있습니다. 이 문자열을 메모리에 복사하지 않고 파일을 구매하십시오. 친구는 메모리에 복사하지 말고 파일 스트림에서 작업 할 것을 제안했습니다. 이 실행 시간이 상당히 지난 후에.
컴퓨터 관리자는 데이터베이스에 데이터베이스를 설치하고 싶지 않습니다.
은 후 종류의 루프에서이 같은 내 코드의 룬 : 해시 설정
if stringFromFile1 < stringFromFile2 then writeToFile3 and get next stringFromFile1
else if stringFromFile1 == stringFromFile2 then dropStringFromFile1 and get next stringFromFile1
else if stringFromFile1 > stringFromFile2 then get next stringFromFile2 and go to line 1
10 억? 데이터가 메모리에 들어 맞습니까? –