코딩스타트

코딩스타트

반응형
  • 분류 전체보기 (363)
    • IT이론 (8)
    • ChatBot (2)
    • 머신러닝 (5)
    • Web (110)
      • Spring (57)
      • Spring batch (0)
      • Spring Cloud (5)
      • Spring Security&OAuth (4)
      • JPA (24)
      • Maven (3)
      • Gradle (5)
      • TDD (7)
      • Netty (1)
      • gRPC (4)
    • Front-End (3)
      • Vue.js (3)
      • React (0)
    • Search-Engine (29)
      • Lucene (4)
      • Elasticsearch&Solr (25)
    • Middleware (23)
      • Kafka&RabbitMQ (17)
      • Redis (5)
      • Zookeeper (1)
    • 프로그래밍언어 (50)
      • Java&Servlet (26)
      • Kotlin (5)
      • JavaScript (4)
      • Python (2)
      • 디자인패턴 (13)
    • Database (14)
      • MongoDB (14)
    • 인프라 (46)
      • Web Server & WAS (4)
      • Docker&Kubernetes (19)
      • Jenkins (5)
      • AWS (4)
      • 네트워크(기초) (8)
      • 운영체제 (6)
    • Tools (13)
      • Git&GitHub (12)
      • IntelliJ (1)
    • 알고리즘&자료구조 (19)
      • 그래프&다익스트라 (7)
      • 백트랙킹 (2)
      • 재귀호출 (2)
      • 다이나믹 프로그래밍 (5)
      • 문자열 처리 (2)
    • 일상&기타 (35)
      • TODO (1)
      • Apple (0)
      • IT News (2)
      • 티스토리&구글애드센스 (1)
      • Toy Project (0)
      • IT 잡학다식 (1)
      • 일상 (1)
      • 책 (28)
  • 방명록
  • Sptirng OAuth2.0
  • Spring Security
  • Kubernetes Sample
  • Kakao Tech
  • GoReplay
  • AI Dev
RSS 피드
로그인
로그아웃 글쓰기 관리

코딩스타트

컨텐츠 검색

태그

엘라스틱서치 루씬 springboot Lucene 백준 java git 디자인패턴 github 알고리즘 mongodb 쿠버네티스 스프링 몽고디비 Spring Kafka ElasticSearch 검색엔진 docker JPA

최근글

댓글

공지사항

아카이브

Comiit(1)

  • Lucene - 인메모리버퍼(In-Memory-Buffer) 역할, 세그먼트 병합(Merge)

    루씬은 색인 요청이 올때마다 새로운 세그먼트가 추가된다. 그리고 일정한 주기로 세그먼트들을 병합하는 과정을 갖는다. 만약 이러한 루씬에 인메모리버퍼가 하는 역할은 무엇일까? 우선 인메모리버퍼가 없는 루씬을 가정한다면, 만약 순간적으로 대용량의 데이터의 색인요청이 많아질 경우 세그먼트(역색인 파일)의 개수가 너무 많아져서 문제가 될 수 있다. 파일이 갑자기 많아지고 이는 당연히 색인에 지연이 생길 것이고 최종적으로 서비스 장애로 이어질 것이다. 하지만 실제적으로 루씬은 색인 작업이 요청되면 전달된 데이터는 일단 인메모리버퍼에 순서대로 쌓이고 버퍼가 일정크기 이상의 데이터가 쌓였다면 그때 한번에 모아서 색인처리를 한다. 즉, 버퍼가 일종의 큐역할을 하는 것이다. 버퍼에 모여 한번에 처리된 데이터는 즉시 세그..

    2019.05.25
이전
1
다음
티스토리
© 2018 TISTORY. All rights reserved.

티스토리툴바