코딩스타트

코딩스타트

반응형
  • 분류 전체보기 (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 피드
로그인
로그아웃 글쓰기 관리

코딩스타트

컨텐츠 검색

태그

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

최근글

댓글

공지사항

아카이브

Refresh(1)

  • Elasticsearch - 엘라스틱서치와 루씬의 관계 - 2(세그먼트 불변성,Translog)

    바로 이전 포스팅에 이어 세그먼트 불변성에 대한 포스팅을 이어나가겠습니다. 세그먼트 불변성 세그먼트가 수정 불가능한 불변성을 가짐으로써 제공되는 장점들이 있다. 1)동시성 문제 회피 불변성이 보장된다면 Lock이 필요 없어진다. 다수의 스레드가 동작하는 복잡한 다중 스레드 환경에서 동시성 문제는 매우 중대한 문제이다. 루씬은 세그먼트의 불변성으로 이러한 동시성 문제를 간단히 피해갔다. 2)시스템 캐시 활용 데이터가 OS 커널에서 제공하는 시스템 캐시에 한번 생성되면 일정 시간 동안은 그대로 유지된다. 불변성을 보장하지 않을 경우 수정이 있을 때마다 시스템 캐시를 삭제하고 다시 생성해야하는 비용이 큰 작업을 수행하게 된다. 하지만 불변성이라면 이러한 시스템 캐시를 효율적으로 이용할 수 있다. 3)높은 캐시..

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

티스토리툴바