ES에서의 Coordinate Node

모든 es에서의 node는 coordinate node가 될 수 있다.

  • coordinate node가 없는 경우, data node가 coordinate node 역할을 수행한다.
  • es cluster에서 로드밸런서와 비슷한 역할을 수행
    • cluster 크기가 커지면 커질수록 coordinate node가 필요

coordinate node는 client node라고도 불리며 elastic search 2.x 이후로는 client node라는 용어를 사용하지 않는다

routing이 안되어있는 경우 Coordinate node의 역할

  1. 특정 데이터를 찾아야 하는 요청(request)을 받는다
  2. cluster의 모든 노드에게 해당 데이터를 가지고 있는지 질의
    1. routing이 안되어있기 때문에 어떤 노드가 해당 데이터를 가지고 있는지 알 수 없음
  3. 모든 노드로부터 데이터 유무와 데이터 정보를 받고 데이터를 모아서(aggregate) 요청(request)에 응답(response)
    1. 모든 노드로부터 response를 받아야만 aggregate 수행
    2. 만약 하나의 노드라도 누락된 경우, timeout

routing이 되어있는 경우 Coordinate Node의 역할

  1. 특정 데이터를 찾아야 하는 요청(request)을 받는다
    1. routing을 통해 어떤 node가 해당 데이터를 가지고 있는지 알 수 있다
  2. 해당 노드에게만 데이터를 질의
  3. 전달받은 데이터로 요청(request)에 응답(respopnse)

 

 

 

틀렸거나 잘못된 정보 지적은 언제나 감사합니다 :)

+ Recent posts