[Elasticsearch] ๋จ์
elasticsearch๋ ๋ฐ์ด๋ ๊ฒ์์ฉ DB๋ก ๊ฐ๊ด๋ฐ๊ณ ์๊ณ , ์ค์ ๋ก๋ ํ๋ฅญํ ์ฑ๋ฅ์ ์๋ํ์ง๋ง, ๋ฉ์ธ DB๋ก ์ฌ์ฉํ๊ธฐ์๋ ๋ง์ ๊ฒฐํจ์ ๊ฐ๊ณ ์๋ค.
๋๋ ์ด
๊ทธ ์ค ๋ํ์ ์ธ ๊ฒฐํจ ์ค ํ๋๊ฐ ์ค์๊ฐ์ฑ์ด๋ค.
์ผ๋ฐ์ ์ธ DB๋ค์์๋ write๋ฅผ ํ ์ดํ์ read๋ฅผ ํ๋ฉด ์ด์ write์ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ ธ์ฌ ์ ์๋ค.
ํ์ง๋ง elasticsearch์์๋ ์ด๋ฐ ๋น์ฐํ ๋ณด์ฅ์ด ์ ์ฉ๋์ง ์๋๋ค. ํต์์ ์ผ๋ก 1์ด ์ ๋์ ๋๋ ์ด๋ฅผ ๋๊ณ ์กฐํ๊ฐ ๊ฐ๋ฅํด์ง๋ค.
๊ทธ ์ด์ ๋, ๋น์ฐํ ์ฑ๋ฅ ๋๋ฌธ์ด๋ค.
ํ๋ํ๋ ์ง์ด๋ฃ์ผ๋ฉด ๋๋ฌด ๋๋ฆฌ๋๊น ๋ฒํผ๋ฅผ ๋๊ณ , ์ ๋นํ ์์ด๋ฉด ๊ทธ๋ ์ธ๊ทธ๋จผํธ์ flush-๋ฐ์ํ๋ ๊ตฌ์กฐ๋ฅผ ๊ฐ๊ณ ์๋ค.
https://velog.io/@taneeflow/Elasticsearch-What-is-the-FlushCommitMerge-FlushCommitMerge%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80
flush๋ฅผ ์๋์ผ๋ก ํ ์ ์๊ธด ํ๋ฐ, ์ฑ๋ฅ ๋ฌธ์ ๋๋ฌธ์ ๋น๊ถ์ฅ๋๋ ๊ธฐ๋ฅ์ด๋ค.
๊ฒ๋ค๊ฐ flush๊ฐ ๋ผ์ ์ธ๊ทธ๋จผํธ๊ฐ ๋ง๋ค์ด์ง๋๋ผ๋, ์ค์ ๋์คํฌ์ ๋ฐ์๋๋ ๋ถ๋ถ์ ๋ ๋๋ ์ด๊ฐ ์๋ค.
๋๊ธฐ์ ์ผ๋ก ๋์ํ๋ fsync syscall ๋์ write syscall์ ์ฐ๊ธฐ ๋๋ฌธ์ด๋ค.
ํธ๋์ญ์ ์ ๋ถ์ฌ
elasticsearch์์๋ ํธ๋์ญ์ ์ด๋ ๊ทธ์ ๋ฐ๋ฅด๋ ๋กค๋ฐฑ ๊ธฐ๋ฅ์ด ์ง์๋์ง ์๋๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ ์์ค๊ณผ ์ ํฉ์ฑ์ ๋ํ ๋ณด์ฅ์ด ๋ถ๊ฐ๋ฅํ๋ค.
Update์ ๋นํจ์จ์ฑ
elasticsearch๋ ์ต์ ํ๋ฅผ ์ํด ์ก์๋์ ํน์ ์ ๋ถ๋ณ์ฑ ๊ตฌ์กฐ๋ก ์ธํด, update ์ฐ์ฐ์ด ๊ต์ฅํ ๋นํจ์จ์ ์ผ๋ก ๋์ํ๋ค.
๊ทธ๋ฌ๋๊น, elasticsearch์ update๋ ๊ธฐ์กด ๋ฐ์ดํฐ๋ฅผ deleteํ ํ์ insertํ๋ ํํ๋ค.
๋์ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋
elasticsearch์ ๋ฐ์ด๋ ์ฑ๋ฅ์ ๊ณต์ง๋ก ๋์ค๋๊ฒ ์๋๋ค.
elasticsearch์ ์ฑ๋ฅ์ ๋๋ถ๋ถ ๋ฉ๋ชจ๋ฆฌ ์บ์๋ฅผ ์๋ฉ ์ฌ์ฉํ๋ ๋ฐ์ ๋์ค๊ณ , ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ๋ฉ๋ชจ๋ฆฌ ์๊ตฌ์ฌํญ๋ ๋์ ํธ์ด๋ค.
์ค์ง์ ์ธ ์ฌ์ฉ๋์ 50% ์ ๋๋ os ํ์ด์ง ์บ์๋ฅผ ์ํด ๋จ๊ฒจ๋ฌ์ผ ํ๊ณ , ์ฌ์ฉ๋์ ๋ฐ๋ผ์ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋๋ ๋น์ฐํ ์ ํ์ ์ผ๋ก ์ฆ๊ฐํ๋ค.
https://m.blog.naver.com/sssang97/223664141145