Elasticsearch Node의 역할을 설정하지 않고 실행하게 되면, 해당 Node는 Master, Data 역할을 부여받게 됩니다. 이후 elasticsearch.yml 파일을 수정해서 Master 역할만 설정하게 되면, 에러가 발생하게 되고 이를 해결한 과정입니다. elasticsearch.yml 파일을 수정하지 않고, 그대로 실행 첫 번째로 elasticsearch.yml 파일을 수정하지 않고 실행하게 되면, Master 및 Data 역할을 포함한 모든 역할을 맡은 채로 실행됩니다. $ bin/elasticsearch # Elasticsearch Node 실행 elasticsearch.yml 파일에 node.roles를 master로 설정하여 실행 elasticsearch.yml 파일을 아래와 ..

Lucene에서 색인을 하는 과정 우선 lucene에서는 크게 다음과 같은 과정으로 색인을 하게 됩니다. Lucene에서는 Index File을 생성할 때, Index File Format인 Segment File을 통해 색인을 하며, Segment File이 생성되면, DocumentWriter를 통해 색인하는 과정이 만들어지고 색인이 완료되면, Commit을 통해 실제 데이터 파일에 쓰입니다. 하나의 Index에는 여러 개의 Segment File이 존재하는데, 여러 개의 Segment File이 Commit이 되면, SegmentMerger를 통해 merge 작업을 수행하는 흐름으로 색인을 하게 됩니다. 여기서 여러 개의 Segment File이 존재하는 이유가 궁금하실 수도 있는데요. 색인이 된 ..