ES 성능 테스트를 진행하게 되었다. ㅎr... 성장하는 나의 모습! 아쟈아쟈!^^ ㅋㅋ
esrally라는 것을 통해서 테스트를 진행하게 되었는데, 테스트를 진행하는 순서에 대해 알아볼까 한다.
공식문서: https://esrally.readthedocs.io/en/stable/index.html
파이썬이 설치된 환경이라 가정한다.
파이썬의 가상환경이 생성된 상태라고 가정한다. (ref. https://www.daleseo.com/python-venv/)
. ~/project/esrally/.venv/bin/activate
~/project/esrally/.venv/bin/activate
python3.8 -m pip install --upgrade pip
python3.8 -m pip install esrally
~/project/esrally/.venv/bin/activate
mkdir .rally/benchmarks/tracks/
git clone "{git주소}" /rally/benchmarks/tracks/elasticsearch-rally
https://esrally.readthedocs.io/en/latest/adding_tracks.html#structuring-your-track
https://github.com/elastic/rally-tracks/tree/master/geonames
~/project/esrally/.venv/bin/activate
esrally list tracks --track-repository=elasticsearch-rally
esrally race --track-repository=elasticsearch-rally \
--track={정의할 track이름} \
--kill-running-processes \
--target-hosts={es_host주소} \
--client-options="timeout:5,use_ssl:true,verify_certs:false,enable_cleanup_closed:true,basic_auth_user:user,basic_auth_password:password" \
--pipeline=benchmark-only \
--report-format=csv \
--report-file=~/reports/result_$(date +"%Y_%m_%d_%H_%M").csv \
--challenge={challenge이름}
Total Old Gen GC count,,0,
Store size,,142.86248402670026,GB
Translog size,,0.04528494365513325,GB
Heap used for segments,,11.595909118652344,MB
Heap used for doc values,,1.1869659423828125,MB
Heap used for terms,,9.299263000488281,MB
Heap used for norms,,0.2933349609375,MB
Heap used for points,,0,MB
Heap used for stored fields,,0.81634521484375,MB
Segment count,,1656,
Min Throughput,operation_query_numbers_of_medium_categories_0302_with_3_indexes,0.29,ops/s
Mean Throughput,operation_query_numbers_of_medium_categories_0302_with_3_indexes,8.25,ops/s
Median Throughput,operation_query_numbers_of_medium_categories_0302_with_3_indexes,8.38,ops/s
Max Throughput,operation_query_numbers_of_medium_categories_0302_with_3_indexes,11.97,ops/s
50th percentile latency,operation_query_numbers_of_medium_categories_0302_with_3_indexes,6090.019604191184,ms
90th percentile latency,operation_query_numbers_of_medium_categories_0302_with_3_indexes,266121.9505386427,ms
99th percentile latency,operation_query_numbers_of_medium_categories_0302_with_3_indexes,298580.40040740743,ms
99.9th percentile latency,operation_query_numbers_of_medium_categories_0302_with_3_indexes,305097.96546353213,ms
99.99th percentile latency,operation_query_numbers_of_medium_categories_0302_with_3_indexes,307610.97741795477,ms
100th percentile latency,operation_query_numbers_of_medium_categories_0302_with_3_indexes,309582.2379607707,ms
50th percentile service time,operation_query_numbers_of_medium_categories_0302_with_3_indexes,5996.4440157637,ms
90th percentile service time,operation_query_numbers_of_medium_categories_0302_with_3_indexes,6041.053719818592,ms
99th percentile service time,operation_query_numbers_of_medium_categories_0302_with_3_indexes,6094.961124174297,ms
99.9th percentile service time,operation_query_numbers_of_medium_categories_0302_with_3_indexes,6126.352462966001,ms
99.99th percentile service time,operation_query_numbers_of_medium_categories_0302_with_3_indexes,6188.533448188938,ms
100th percentile service time,operation_query_numbers_of_medium_categories_0302_with_3_indexes,6213.549362495542,ms
50th percentile processing time,operation_query_numbers_of_medium_categories_0302_with_3_indexes,5996.903588064015,ms
90th percentile processing time,operation_query_numbers_of_medium_categories_0302_with_3_indexes,6041.504356265068,ms
99th percentile processing time,operation_query_numbers_of_medium_categories_0302_with_3_indexes,6095.430531017482,ms
99.9th percentile processing time,operation_query_numbers_of_medium_categories_0302_with_3_indexes,6126.830244086689,ms
99.99th percentile processing time,operation_query_numbers_of_medium_categories_0302_with_3_indexes,6188.962100987695,ms
100th percentile processing time,operation_query_numbers_of_medium_categories_0302_with_3_indexes,6214.004173874855,ms
error rate,operation_query_numbers_of_medium_categories_0302_with_3_indexes,94.38,%
음 쓰고보니 설명이 부족한 것 같다. 추후에 보충을 해줘야겠다.