> For the complete documentation index, see [llms.txt](https://gunkim.gitbook.io/undefined/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://gunkim.gitbook.io/undefined/bloom-filter.md).

# bloom-filter

### 배운 개념

* 오탐(False Positive)은 해시 충돌 때문이며, 서로 다른 시드(Seed)를 통해 동일 데이터로 다중 해시값을 얻음.
* 오탐률을 낮추기 위해 해시 개수만 늘려선 안 되고 본질적으로 **'비트 배열 크기(도화지)'를 키워야 함**.
* 지정된 비트를 1로 마스킹하므로, 나중에 검사할 때 하나라도 0이라면 100% 없음을 보장함.

### 오답 및 정정

> \[!WARNING] **오개념**: 블룸 필터 오탐률을 줄이려면 해시 함수 개수만 무작정 늘리면 된다. **정정**: 본질적으로 전체 비트 배열의 크기(메모리)를 늘려야 해시 충돌이 줄어듦.

### 복습 체크

* [ ] 블룸 필터가 '확실히 없음'은 보장하지만 '확실히 있음'은 보장하지 못하는 이유는 무엇인가?
* [ ] 오탐률을 획기적으로 낮추려면 어떤 조치를 취해야 하는가?

\[\[lsm-tree]]


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://gunkim.gitbook.io/undefined/bloom-filter.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
