나는 여러 파일을 제공하는 미니 검색 엔진을 설계했습니다. 내가 한 일은이 파일들을 크롤링했고, 해시 테이블을 만들었습니다. 해시 테이블은 단어의 해시 값이고 테이블 엔트리는 같은 해시를 가진 모든 단어와 단어와 관련된 다른 정보를 보유하는 이진 트리입니다 .미니 검색 엔진 및 데이터 구조 설계
이 데이터 구조가 메모리에 있음을 알고 있습니다. 나는 문제를 확장하는 것을 생각하고있다. 엄청난 수의 항목이 제공된다면이 엄청난 양의 데이터를 저장할 수 없으므로 하드 드라이브에 지속적으로 저장해야합니다. 그러나 내가 아는 한 데이터는 하드 디스크에 블록으로 저장되며 필자는 프로그래머로서 데이터가 디스크에 저장되는 방식을 제어하지 못합니다. 그렇다면 메모리에 저장된 것과 같은 방법으로 디스크에 저장 될 데이터를 어떻게 강제 적용 할 수 있습니까?
간단한 말로하면 데이터 구조가 올바른 방식으로 데이터를 처리하는 데 중요하다는 것을 알지만 프로그래머는 메모리의 데이터 구조 만 제어합니다. 데이터가 크다면 프로그래머는 효율적인 검색을 위해 어떻게 데이터를 디스크에 저장할 수 있습니까?