in-memory 3

1-11-2. Dynamically Updatable

The next problem that needed to be solved was how to make an inverted index updatable without losing the benefits of immutability? The answer turned out to be: use more than one index.해결해야 할 다음 문제는, 불변성의 장점을 잃지 않고, inverted index를 업데이트 가능하도록 만드는 방법이다. 답은 하나 이상의 index를 사용하는 것이다.Instead of rewriting the whole inverted index, add new supplementary indices to reflect more-recent changes. Each invert..

1-11-3. Near Real-Time Search

With the development of per-segment search, the delay between indexing a document and making it visible to search dropped dramatically. New documents could be made searchable within minutes, but that still isn’t fast enough.segment별 검색의 개발로, document의 색인과 검색 시에 보이도록 하는 것 사이에 지연이 크게 발생한다. 새로운 document는 수분 내에 검색이 가능하지만, 아직 충분히 빠르지는 않다.The bottleneck is the disk. Commiting a new segment to disk req..

1-11-4. Making Changes Persistent

Without an fsync to flush data in the filesystem cache to disk, we cannot be sure that the data will still be there after a power failure, or even after exiting the application normally. For Elasticsearch to be reliable, it needs to ensure that changes are persisted to disk.fsync 없이, filesystem cache에서 디스크로, 데이터를 flush하면, 정전 후에 또는 응용프로그램이 정상적으로 종료된 후에, 데이터가 거기 있다고 확신할 수 없다. 신뢰할 수 있는 Elasticsearc..