나는 회원 테스트 수행을 위해 블룸 필터를 사용해 보았습니다. 저는 약 100 회의 충돌 만 허용하면서 800 억 개의 항목에 대한 멤버십 테스트를 수행하고자합니다. 즉, 100 개의 항목 만 잘못된 결과를 얻을 수 있습니다.블룸 필터의 대안
블룸 필터에 의해 달성 될 수 있지만 입력 당 필요한 비트 수와 허위 양수 율이 허용되는 해시 함수의 수를 결정하는 공식을 사용한다는 것을 알고 있습니다. 나는 270GB의 메모리와 19 개의 해쉬 함수를 사용하여 끝낼 것이라고 생각했다.
나는 또한 Cuckoo 필터를 살펴 봤지만 메모리 요구 사항이 내 요구 사항과 일치하지 않습니다. 요소
- 사용하여 다음과 같이 내 요구 사항입니다.
누군가 내 요구 사항을 달성하는 데 도움이 될 수있는 위에 언급 된 것 이외의 확률 론적 데이터 구조를 제안 할 수 있습니까?
거짓 데이터 양수가 .00000000125이고 항목 수가 제한되지 않았더라도 60GB 만 사용하면 80 억 항목을 구분할 수있는 데이터 구조를 찾지 못할 것 같습니다. 해시 함수 증명할 수학은 없지만 이론적으로 가능한 범위를 넓히는 것처럼 보입니다. –
좋아요. 내 기억이 늘어나거나 거짓 긍정적 인 비율이 항목의 1 %까지 올라간다면, 블룸 필터를 사용 사례로 사용하거나 다른 선택적인 데이터 구조가 있습니까? –