[ElasticSearch] 성능 최적화의 해석

2024. 11. 24. 19:02·Data Enginnering/Elastic

출처; Elastic

성능 최적화의 해석

1. kB_read/s와 kB_wrtn/s의 의미

  • kB_read/s:
    • 디스크에서 데이터를 읽는 속도를 나타냅니다.
    • 검색 쿼리를 실행할 때 디스크에서 얼마나 많은 데이터를 읽는지 보여줍니다.
    • 검색 속도가 중요하다면, 읽기 속도가 높은 것이 일반적으로 더 많은 데이터가 처리되고 있음을 의미할 수 있습니다.
  • kB_wrtn/s:
    • 디스크에 데이터를 쓰는 속도를 나타냅니다.
    • 데이터 색인(indexing) 작업 시 얼마나 많은 데이터를 디스크에 쓰는지 보여줍니다.
    • 쓰기 속도가 높으면 색인이 활발하게 이루어지고 있다는 뜻이며, 쓰기 지연이 없으면 성능이 양호하다고 볼 수 있습니다.

2. 읽기 속도(kB_read/s) 증가

  • 좋은 신호일 수 있는 경우:
    • 검색 쿼리가 많아지고, 효율적으로 처리되고 있는 경우.
    • 캐시 미스(Cache Miss) 상황에서 디스크 읽기가 원활하게 이루어지고 있는 경우.
  • 문제가 될 수 있는 경우:
    • 캐시가 제대로 작동하지 않아 불필요한 디스크 읽기가 증가하는 경우.
    • 디스크 I/O가 병목 상태에 있어 읽기 작업이 전체 성능을 저해하는 경우.

3. 쓰기 속도(kB_wrtn/s) 감소

  • 좋은 신호일 수 있는 경우:
    • 불필요한 데이터 쓰기 작업이 줄어들거나, 효율적인 색인 설계가 이루어진 경우.
    • 데이터가 디스크 대신 메모리나 캐시에 잘 저장되고 있는 경우.
    • Refresh Interval이나 Translog 설정이 조정되어 디스크 쓰기 빈도가 줄어든 경우.
  • 문제가 될 수 있는 경우:
    • 쓰기 작업이 제대로 이루어지지 않아 데이터 손실 위험이 있는 경우.
    • 색인 지연(indexing lag)이 발생하거나, 쓰기 큐가 쌓이는 경우.

4. 성능 최적화 실험에서의 해석

  • Elasticsearch 성능 최적화 실험에서는 목표에 따라 **kB_read/s**와 **kB_wrtn/s**의 변화가 달라질 수 있습니다.

검색(읽기) 성능을 최적화하는 경우:

  • kB_read/s: 증가하는 것이 긍정적인 신호일 가능성이 높습니다. 이는 더 많은 검색 요청을 처리하거나, 효율적으로 데이터를 읽어오고 있다는 것을 나타냅니다.
  • kB_wrtn/s: 낮아지는 경우 문제가 없을 수 있습니다. 색인 작업이 적어지고, 읽기 중심의 작업으로 자원이 전환된 상황일 수 있습니다.

색인(쓰기) 성능을 최적화하는 경우:

  • kB_read/s: 일반적으로 큰 영향을 미치지 않으며, 주로 쓰기 성능 개선에만 집중합니다.
  • kB_wrtn/s: 높아지더라도 쓰기 지연이 없다면, 더 많은 데이터를 빠르게 처리하고 있다는 긍정적인 신호일 수 있습니다. 단, 디스크 I/O가 병목이 되지 않도록 모니터링해야 합니다.

5. 실험 결과가 좋은 상황 예시

  • 검색 성능 최적화:
    • kB_read/s 증가, kB_wrtn/s 감소:
      • 캐시 적중률이 높아졌거나, 데이터 읽기 효율이 향상된 상태.
  • 색인 성능 최적화:
    • kB_wrtn/s 증가, kB_read/s 유지 또는 감소:
      • 디스크 쓰기 병목 없이 더 많은 데이터를 색인할 수 있는 상태.

6. 최적화를 위한 추가 고려 사항

  • 디스크 I/O 병목:
    • iowait를 확인하여 디스크 쓰기/읽기 작업이 시스템의 병목을 초래하지 않는지 점검하세요.
  • 캐시 사용률:
    • Elasticsearch는 파일 시스템 캐시를 적극적으로 활용합니다. kB_read/s가 너무 높다면, 캐시 미스율을 점검하여 캐시를 더 효율적으로 사용할 수 있는 방법을 모색하세요.
  • Refresh Interval 조정:
    • 색인 작업이 많을 경우, refresh_interval을 늘려 쓰기 빈도를 줄이고, kB_wrtn/s를 낮출 수 있습니다.
  • Disk I/O 용량 모니터링:
    • 고성능 SSD를 사용하여 디스크 I/O 병목을 줄이는 것도 고려하세요.

 

 

 

 

 

'Data Enginnering > Elastic' 카테고리의 다른 글

[ElasticSearch] Logstash 와 Elasticsearch / 디스크 I/O 병목  (0) 2024.11.24
[Elasticsearch] 샤딩(Sharding), kBwrtn/s vs kBread/s 비교  (0) 2024.11.05
[ElasticSearch] 검색 성능 최적화  (1) 2024.11.04
[ElasticSearch] 데이터 처리, 검색 성능 최적화  (5) 2024.11.02
[ElasticSearch] 샤드 (Shard) & 인덱싱 (Indexing)  (0) 2024.11.01
'Data Enginnering/Elastic' 카테고리의 다른 글
  • [ElasticSearch] Logstash 와 Elasticsearch / 디스크 I/O 병목
  • [Elasticsearch] 샤딩(Sharding), kBwrtn/s vs kBread/s 비교
  • [ElasticSearch] 검색 성능 최적화
  • [ElasticSearch] 데이터 처리, 검색 성능 최적화
Ctrl_engineer
Ctrl_engineer
Ctrl 키는 혼자일 때보다 다른 키와 함께할 때 진짜 힘을 발휘합니다. 데이터도, 사람도 마찬가지입니다. 연결되고 흐를 때, 세상은 더 나은 방향으로 움직입니다. 저는 데이터의 흐름을 설계하고, 신뢰를 심는 엔지니어가 되고자 합니다. 이곳은, 그 여정의 작은 흔적들을 기록하는 공간입니다.
  • Ctrl_engineer
    Ctrl the flow
    Ctrl_engineer
  • 전체
    오늘
    어제
    • 분류 전체보기 (61)
      • Research (9)
        • Raspberry Pi (9)
      • Data Enginnering (24)
        • Cloud (3)
        • Elastic (6)
        • Database (9)
        • Pipeline (3)
      • CS STUDY (0)
        • Computer Science (0)
        • DataStructure & Algorithm (0)
      • Programming (13)
        • Python (13)
      • Mathematics and Statistics (10)
      • Data Science (3)
        • Data Insight (2)
        • Learning (0)
        • ML & DL (0)
      • DIARY (0)
      • TIL (Today I Learned) (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    py4e
    elasticSearch
    proxyjump 설정
    Khan Academy
    라즈베리파이 네트워크 설정
    linear algebra
    점프투파이썬
    climb-mates
    spark
    라즈베리파이5
    3blue1brown
    부스트코스
    Statistics and Probability
    SQL
    ssh 비밀번호 없이 접속
    오블완
    shellyplugs
    heap size
    Khan
    티스토리챌린지
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
Ctrl_engineer
[ElasticSearch] 성능 최적화의 해석
상단으로

티스토리툴바