나는 elasticsearch가 인덱싱 속도가 너무 느린 이유를 알아 내려고하고 있습니다. 나는 그것이 elasticsearch 자체의 제한인지 아닌지 확신 할 수 없지만 지금까지 가지고있는 것을 공유 할 것입니다.1 천만 회의 이벤트에 대한 elasticsearch의 인덱싱 속도
상자에서 실행되는 단일 elasticsearch 노드와 logstash 인스턴스가 있습니다. 내 문서에는 약 15 개의 필드가 있고 정확한 유형의 탄력적 인 검색 매핑 설정이 있습니다 (매핑없이 시도했지만 거의 동일한 결과가 나옵니다).
한 번에 약 8000 만개의 이벤트를 인덱싱하고 다음과 같은 접근 방식을 취했습니다. 다음 형식
벌크 API는 (I는 JSON에 CSV를 변환하고 난
{"create" : {}}
{"field1" : "value1", "field2" : "value2 .... }
{"create" : {}}
{"field1" : "value1", "field2" : "value2 .... }
{"create" : {}}
{"field1" : "value1", "field2" : "value2 .... }
에서 I는 원래 CSV와 TCP 입력 모두를 사용하거나 사용 logstash 시도했다 컬 파일에 두었다 파일 청취자와 고양이 파일 logstash의 마지막에 CSV는 수신 대기합니다.이 방법의 세 가지
을 매우 느립니다있는 초당 10,000 이벤트를 섭취하는 것.
내가 뭔가 잘못하고 있습니까? 내가 명시 적으로 assi되어야 하는가? 이드를 자동 생성하는 것보다 대량으로 섭취하는 것이 좋을까요?대량 API를 통해 처리 할 때 이벤트를 50,000 및 100,000 개의 이벤트 파일로 분할하고 각각을 개별적으로 처리했습니다.
링크가 없습니다. 여기에 답변을 쓸 수 있습니까? – m3rg
@ m3rg 블로그를 이전하는 과정에서 늦게 답변을 드려 죄송합니다. 오늘 저녁이나 내일이면 내가 가지고있는 것을 게시 할 것입니다. – Nate
링크가 여전히 삭제 된 페이지를 가리키고 있습니다 ... – Mark