사전에 접근하다

사전에 접근하다

250,000개의 사전 항목이 여러 파일로 나누어져 있다고 가정해 보겠습니다. 각 파일은 용어가 포함된 줄로 시작됩니다. 합쳐서 2GB입니다. 쉽고 빠르게 단어를 찾을 수 있도록 정보를 정리하는 가장 좋은 방법은 무엇입니까? 하위 디렉터리 abc 등을 만들어야 합니까? 여러 파일을 더 큰 파일로 병합해야 합니까?

답변1

당신은 무엇을 하고 싶은지, 데이터가 무엇인지에 대해 많이 말하지 않았지만 제 생각은 다음과 같습니다. 모든 단어가 고유하다고 가정합니다. 디스크 공간의 효율적인 사용에 대해 우려한다고 말하지 않았습니다.

Ext4 파일 시스템. 각 단어를 큰 디렉터리의 별도 파일에 저장합니다. 파일 시스템이 자동으로 파일을 찾도록 합니다. 이는 매우 쉽고(원하는 파일을 이름으로 열면 됩니다) 파일 시스템은 파일을 찾는 효율적인 방법을 제공합니다.

파일 시스템에 충분한 여유 inode가 있는지 확인해야 합니다(파일당 하나씩). 따라서 250,000개의 여유 inode가 필요합니다 du -i.

ls파일을 열거해야 하는 작업이나 기타 작업(예: 파일 브라우저에서 파일 열기)을 수행 하면 성능이 좋아질 것입니다.

답변2

Python 사전과 같은 사전인 경우 JSON으로 변환하여 MongoDB 또는 일부 NoSQL 구현에 저장하고 데이터베이스에서 액세스합니다.

관련 정보