ํ์ฌ ๊ฑฐ์ ๋ชจ๋ ๊ณณ์ ๋ง์ ๋ฐ์ดํฐ๊ฐ ์์์๋ ๋ถ๊ตฌํ๊ณ ๋ถ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ฌ์ ํ ๋งค์ฐ ์ด๊ตญ์ ์ ๋๋ค. ๊ทธ๋ค์ ์ ์๋ ค์ง์ง ์์์ผ๋ฉฐ ํจ๊ณผ์ ์ผ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋ง์ ์ฌ๋๋ค์ด ๋ค๋ฅธ ์๋๋ฆฌ์ค๋ฅผ ์ํด ์ค๊ณ๋ MySQL ๋๋ PostgreSQL๋ก ๊ณ์ํด์ "์ ์ธ์ฅ์ ๋จน์ต๋๋ค", NoSQL๋ก ์ธํด ์ด๋ ค์์ ๊ฒช๊ฑฐ๋ ์์ฉ ์๋ฃจ์ ์ ๋ํด ์ด๊ณผ ๋น์ฉ์ ์ง๋ถํฉ๋๋ค. ClickHouse๋ ๊ฒ์์ ๊ท์น์ ๋ณ๊ฒฝํ๊ณ ๋ถ์ DBMS์ ์ธ๊ณ์ ์ง์ ํ๊ธฐ ์ํ ์๊ณ๊ฐ์ ํฌ๊ฒ ๋ฎ์ถฅ๋๋ค.
BackEnd Conf 2018์ ๋ณด๊ณ ์์ด๋ฉฐ ๋ฐํ์์ ํ๊ฐ๋ฅผ ๋ฐ์ ๊ฒ์๋ฉ๋๋ค.
๋๋ ๋๊ตฌ์ด๋ฉฐ ClickHouse์ ๋ํด ์ด์ผ๊ธฐํ๋ ์ด์ ๋ ๋ฌด์์
๋๊น? ์ ๋ ClickHouse๋ฅผ ์ฌ์ฉํ๋ LifeStreet์ ๊ฐ๋ฐ ์ด์ฌ์
๋๋ค. ๋ํ ์ ๋ Altinity์ ์ฐฝ๋ฆฝ์์
๋๋ค. ClickHouse๋ฅผ ํ๋ณดํ๊ณ Yandex๊ฐ ClickHouse๋ฅผ ๋์ฑ ์ฑ๊ณต์ ์ผ๋ก ๋ง๋ค ์ ์๋๋ก ๋๋ Yandex ํํธ๋์
๋๋ค. ๋ํ ClickHouse์ ๋ํ ์ง์์ ๊ณต์ ํ ์ค๋น๊ฐ ๋์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ ๋ Petya Zaitsev์ ํ์ ๊ฐ ์๋๋๋ค. ๋๋ ์ข ์ข ์ด๊ฒ์ ๋ํด ๋ฌป๋๋ค. ์๋์, ์ฐ๋ฆฌ๋ ํ์ ๊ฐ ์๋๋๋ค.
ClickHouse๊ฐ:
- ๋งค์ฐ ๋น ๋ฅด๊ณ ,
- ์์ฃผ ํธ์ํ
- Yandex์์ ์ฌ์ฉ๋ฉ๋๋ค.
์ด๋ค ํ์ฌ์์ ์ด๋ป๊ฒ ์ฌ์ฉ๋๋์ง๋ ์กฐ๊ธ ๋ ์๋ ค์ ธ ์์ต๋๋ค.
Yandex๋ฅผ ์ ์ธํ๊ณ ClickHouse๊ฐ ์ฌ์ฉ๋๋ ์ด์ , ์์น ๋ฐ ๋ฐฉ๋ฒ์ ์๋ ค ๋๋ฆฌ๊ฒ ์ต๋๋ค.
๋ค๋ฅธ ํ์ฌ์์ ClickHouse์ ๋์์ผ๋ก ํน์ ์์ ์ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ, ์์ ์ ์ฌ์ฉํ ์ ์๋ ClickHouse ๋๊ตฌ ๋ฐ ๋ค๋ฅธ ํ์ฌ์์ ์ฌ์ฉ๋ ๋ฐฉ๋ฒ์ ์๋ ค๋๋ฆฝ๋๋ค.
๋ค๋ฅธ ๊ฐ๋์์ ClickHouse๋ฅผ ๋ณด์ฌ์ฃผ๋ ์ธ ๊ฐ์ง ์๋ฅผ ์ ํํ์ต๋๋ค. ์ฌ๋ฏธ์์ ๊ฒ ๊ฐ์์.
์ฒซ ๋ฒ์งธ ์ง๋ฌธ์ "ClickHouse๊ฐ ํ์ํ ์ด์ ๋ ๋ฌด์์ ๋๊น?"์ ๋๋ค. ๊ฝค ๋ปํ ์ง๋ฌธ์ธ ๊ฒ ๊ฐ์ง๋ง ๊ทธ์ ๋ํ ๋๋ต์ ํ๋ ์ด์์ ๋๋ค.
- ์ฒซ ๋ฒ์งธ ๋๋ต์ ์ฑ๋ฅ์ ๋๋ค. ClickHouse๋ ๋งค์ฐ ๋น ๋ฆ ๋๋ค. ClickHouse์ ๋ถ์๋ ๋งค์ฐ ๋น ๋ฆ ๋๋ค. ๋ค๋ฅธ ๊ฒ์ด ๋งค์ฐ ๋๋ฆฌ๊ฑฐ๋ ๋งค์ฐ ๋์ ๊ฒฝ์ฐ์ ์์ฃผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- ๋ ๋ฒ์งธ ๋๋ต์ ๋น์ฉ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฌด์๋ณด๋ค๋ ํ์ฅ ๋น์ฉ์ ๋๋ค. ์๋ฅผ ๋ค์ด Vertica๋ ์ ๋ง ํ๋ฅญํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋๋ค. ํ ๋ผ๋ฐ์ดํธ์ ๋ฐ์ดํฐ๊ฐ ๋ง์ง ์์ ๊ฒฝ์ฐ ๋งค์ฐ ์ ์๋ํฉ๋๋ค. ๊ทธ๋ฌ๋ ์๋ฐฑ ํ ๋ผ๋ฐ์ดํธ ๋๋ ํํ๋ฐ์ดํธ์ ๊ฒฝ์ฐ ๋ผ์ด์ผ์ค ๋ฐ ์ง์ ๋น์ฉ์ด ์๋นํ ๋ง์ด ๋ญ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋น์ธ๋ค. ClickHouse๋ ๋ฌด๋ฃ์ ๋๋ค.
- ์ธ ๋ฒ์งธ ๋๋ต์ ์ด์ ๋น์ฉ์ ๋๋ค. ์ด๊ฒ์ ์ฝ๊ฐ ๋ค๋ฅธ ์ ๊ทผ๋ฒ์ ๋๋ค. RedShift๋ ํ๋ฅญํ ์๋ ๋ก๊ทธ์ ๋๋ค. RedShift์์๋ ๋งค์ฐ ๋น ๋ฅด๊ฒ ๊ฒฐ์ ์ ๋ด๋ฆด ์ ์์ต๋๋ค. ๊ทธ๊ฒ์ ์ ์๋ํ์ง๋ง ๋์์ ๋งค์๊ฐ, ๋งค์ผ, ๋งค๋ฌ ์๋ง์กด์ ์๋นํ ๋น์ผ ์๋น์ค๋ฅผ ์ง๋ถํ๊ฒ ๋ ๊ฒ์ ๋๋ค. ์๋ํ๋ฉด ์ด๊ฒ์ ์๋นํ ๋น์ผ ์๋น์ค์ด๊ธฐ ๋๋ฌธ์ ๋๋ค. ๊ตฌ๊ธ ๋น ์ฟผ๋ฆฌ๋ ๋ง์ฐฌ๊ฐ์ง๋ค. ๋๊ตฐ๊ฐ๊ฐ ๊ทธ๊ฒ์ ์ฌ์ฉํ๋ค๋ฉด ๊ทธ๋ ๊ฑฐ๊ธฐ์์ ์ฌ๋ฌ ์์ฒญ์ ์คํํ๊ณ ๊ฐ์๊ธฐ ์๋ฐฑ ๋ฌ๋ฌ์ ์ฒญ๊ตฌ์๋ฅผ ๋ฐ์ ์ ์๋ค๋ ๊ฒ์ ์๊ณ ์์ต๋๋ค.
ClickHouse์๋ ์ด๋ฌํ ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
ClickHouse๋ ํ์ฌ ์ด๋์ ์ฌ์ฉ๋ฉ๋๊น? Yandex ์ธ์๋ ClickHouse๋ ๋ค์ํ ๋น์ฆ๋์ค ๋ฐ ํ์ฌ์์ ์ฌ์ฉ๋ฉ๋๋ค.
- ์ฐ์ ์ด๊ฒ์ ์น ์ ํ๋ฆฌ์ผ์ด์ ๋ถ์์ ๋๋ค. ์ด๊ฒ์ Yandex์์ ์จ ์ฌ์ฉ ์ฌ๋ก์ ๋๋ค.
- ๋ง์ AdTech ํ์ฌ์์ ClickHouse๋ฅผ ์ฌ์ฉํฉ๋๋ค.
- ๋ค์ํ ์์ค์ ํธ๋์ญ์ ๋ก๊ทธ๋ฅผ ๋ถ์ํด์ผ ํ๋ ์๋ง์ ํ์ฌ.
- ์ฌ๋ฌ ํ์ฌ์์ ClickHouse๋ฅผ ์ฌ์ฉํ์ฌ ๋ณด์ ๋ก๊ทธ๋ฅผ ๋ชจ๋ํฐ๋งํฉ๋๋ค. ๊ทธ๋ค์ ClickHouse์ ์ ๋ก๋ํ๊ณ ๋ณด๊ณ ์๋ฅผ ์์ฑํ๋ฉฐ ํ์ํ ๊ฒฐ๊ณผ๋ฅผ ์ป์ต๋๋ค.
- ํ์ฌ๋ ์ด๋ฅผ ์ฌ๋ฌด ๋ถ์์ ์ฌ์ฉํ๊ธฐ ์์ํ์ต๋๋ค. ์ฆ, ์ ์ฐจ ๋๊ธฐ์ ๋ ClickHouse์ ์ ๊ทผํ๊ณ ์์ต๋๋ค.
- ํด๋ผ์ฐ๋ ํ๋ ์ด. ClickHouse๋ฅผ ํ๋ก์ฐํ๋ ์ฌ๋์ด๋ผ๋ฉด ์ด ํ์ฌ์ ์ด๋ฆ์ ๋ค์ด๋ดค์ ๊ฒ์ ๋๋ค. ์ด๊ฒ์ ์ปค๋ฎค๋ํฐ์ ํ์ ๊ธฐ์ฌ์ ์ค ํ๋์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ค์ ๋งค์ฐ ์ง์งํ ClickHouse ์ค์น๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ๊ทธ๋ค์ ClickHouse์ฉ Kafka ์์ง์ ๋ง๋ค์์ต๋๋ค.
- ํต์ ํ์ฌ๊ฐ ์ฌ์ฉํ๊ธฐ ์์ํ์ต๋๋ค. ์ฌ๋ฌ ํ์ฌ์์ ๊ฐ๋ ์ฆ๋ช ๋๋ ์ด๋ฏธ ์์ฐ ์ค์ธ ClickHouse๋ฅผ ์ฌ์ฉํฉ๋๋ค.
- ํ ํ์ฌ๋ ClickHouse๋ฅผ ์ฌ์ฉํ์ฌ ์์ฐ ํ๋ก์ธ์ค๋ฅผ ๋ชจ๋ํฐ๋งํฉ๋๋ค. ๊ทธ๋ค์ ๋ฏธ์ธ ํ๋ก๋ฅผ ํ ์คํธํ๊ณ ๋ง์ ๋งค๊ฐ ๋ณ์๋ฅผ ์์ฑํ๋ฉฐ ์ฝ 2 ๊ฐ์ง ํน์ฑ์ด ์์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ ๊ฒ์์ด ์ข์์ง ๋์์ง ๋ถ์ํฉ๋๋ค.
- ๋ธ๋ก์ฒด์ธ ๋ถ์. Bloxy.info์ ๊ฐ์ ๋ฌ์์ ํ์ฌ๊ฐ ์์ต๋๋ค. ์ด๋๋ฆฌ์ ๋คํธ์ํฌ ๋ถ์์ ๋๋ค. ClickHouse์์๋ ์ด ์์ ์ ์ํํ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ํฌ๊ธฐ๋ ์ค์ํ์ง ์์ต๋๋ค. ํ๋์ ์์ ์๋ฒ๋ฅผ ์ฌ์ฉํ๋ ํ์ฌ๊ฐ ๋ง์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ ๊ทธ๋ค์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋๋ก ํ์ฉํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ ๋ง์ ํ์ฌ์์ ๋ง์ ์๋ฒ ๋๋ ์์ญ ๋์ ์๋ฒ๋ก ๊ตฌ์ฑ๋ ๋๊ท๋ชจ ํด๋ฌ์คํฐ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ๊ธฐ๋ก์ ๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- Yandex: 500๊ฐ ์ด์์ ์๋ฒ, ํ๋ฃจ์ 25์ต ๊ฐ์ ๋ ์ฝ๋๋ฅผ ์ ์ฅํฉ๋๋ค.
- LifeStreet: 60๊ฐ์ ์๋ฒ, ํ๋ฃจ์ ์ฝ 75์ต ๊ฐ์ ๊ธฐ๋ก. Yandex๋ณด๋ค ์๋ฒ ์๊ฐ ์ ๊ณ ๋ ์ฝ๋๊ฐ ๋ ๋ง์ต๋๋ค.
- CloudFlare: ์๋ฒ 36๊ฐ, ํ๋ฃจ์ 200์ต ๊ฐ์ ๋ ์ฝ๋๋ฅผ ์ ์ฅํฉ๋๋ค. ์๋ฒ๋ ํจ์ฌ ์ ๊ณ ๋ ๋ง์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํฉ๋๋ค.
- Bloomberg: 102๊ฐ์ ์๋ฒ, ํ๋ฃจ์ ์ฝ XNUMX์กฐ ๊ฑด์ ํญ๋ชฉ. ๊ธฐ๋ก ๋ณด์ ์.
์ง๋ฆฌ์ ์ผ๋ก ์ด๊ฒ์ ๋ํ ๋ง์ต๋๋ค. ์ฌ๊ธฐ ์ด ์ง๋๋ ์ ์ธ๊ณ์์ ClickHouse๊ฐ ์ฌ์ฉ๋๊ณ ์๋ ์์น์ ๋ํ ํํธ๋งต์ ๋ณด์ฌ์ค๋๋ค. ๋ฌ์์, ์ค๊ตญ, ๋ฏธ๊ตญ์ด ์ฌ๊ธฐ์์ ๋ถ๋ช ํ ๋๋๋ฌ์ง๋๋ค. ์ ๋ฝ โโ๊ตญ๊ฐ๋ ๊ฑฐ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ 4๊ฐ์ ํด๋ฌ์คํฐ๊ฐ ์์ต๋๋ค.
์ด๊ฒ์ ๋น๊ต ๋ถ์์ด๋ฏ๋ก ์ ๋ ์์น๋ฅผ ์ฐพ์ ํ์๊ฐ ์์ต๋๋ค. ์ด๊ฒ์ Altinity ์น ์ฌ์ดํธ์์ ๋ฌ์์์ด๋ฅผ ์ฌ์ฉํ๋ ์๋ฃ๊ฐ ์๊ธฐ ๋๋ฌธ์ ์์ด ์๋ฃ๋ฅผ ์ฝ๋ ๋ฐฉ๋ฌธ์์ ๋ํ ๋ถ์์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฌ์์, ์ฐํฌ๋ผ์ด๋, ๋ฒจ๋ก๋ฃจ์, ์ฆ ์ปค๋ฎค๋ํฐ์์ ๋ฌ์์์ด๋ฅผ ์ฌ์ฉํ๋ ๋ถ๋ถ์ ๊ฐ์ฅ ๋ง์ ์ฌ์ฉ์์ ๋๋ค. ๊ทธ๋ฐ ๋ค์ ๋ฏธ๊ตญ๊ณผ ์บ๋๋ค๊ฐ ์จ๋ค. ์ค๊ตญ์ด ๋ง์ด ๋ฐ๋ผ์ก๊ณ ์์ต๋๋ค. XNUMX๊ฐ์ ์ ์๋ ์ค๊ตญ์ด ๊ฑฐ์ ์์์ต๋๋ค. ์ด์ ์ค๊ตญ์ ์ด๋ฏธ ์ ๋ฝ์ ์ถ์ํ๊ณ ๊ณ์ ์ฑ์ฅํ๊ณ ์์ต๋๋ค. ๊ตฌ ์ ๋ฝ๋ ๊ทธ๋ค์ง ๋ค์ฒ์ง์ง ์์์ผ๋ฉฐ ์ด์ํ๊ฒ๋ ClickHouse ์ฌ์ฉ์ ๋ฆฌ๋๋ ํ๋์ค์ ๋๋ค.
๋ด๊ฐ ์์ด ๋ชจ๋ ๊ฒ์ ๋งํ๊ณ ์์ต๋๊น? ClickHouse๊ฐ ๋น ๋ฐ์ดํฐ ๋ถ์์ ์ํ ํ์ค ์๋ฃจ์ ์ด ๋๊ณ ์์ผ๋ฉฐ ์ด๋ฏธ ๋ง์ ๊ณณ์์ ์ฌ์ฉ๋๊ณ ์์์ ๋ณด์ฌ์ฃผ๊ธฐ ์ํด. ๋น์ ์ด ๊ทธ๊ฒ์ ์ฌ์ฉํ๋ค๋ฉด, ๋น์ ์ ์ฌ๋ฐ๋ฅธ ์ถ์ธ์ ์์ต๋๋ค. ์์ง ์ฌ์ฉํ์ง ์๋๋ค๋ฉด ํผ์ ๋จ๊ฒจ์ง ๊ฒ์ ๋๋ ค์ํ ํ์๊ฐ ์์ผ๋ฉฐ ์ด๋ฏธ ๋ง์ ์ฌ๋๋ค์ด ์ด ์ผ์ ํ๊ณ ์๊ธฐ ๋๋ฌธ์ ์๋ฌด๋ ๋น์ ์ ๋์์ฃผ์ง ์์ ๊ฒ์ ๋๋ค.
๋ค์์ ์ฌ๋ฌ ํ์ฌ์์ ์ค์ ClickHouse๋ฅผ ์ฌ์ฉํ๋ ์์ ๋๋ค.
- ์ฒซ ๋ฒ์งธ ์๋ ๊ด๊ณ ๋คํธ์ํฌ: Vertica์์ ClickHouse๋ก์ ๋ง์ด๊ทธ๋ ์ด์ ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ ๋ Vertica์์ ์ ํํ๊ฑฐ๋ ์ ํ ๊ณผ์ ์ ์๋ ๋ช๋ช ํ์ฌ๋ฅผ ์๊ณ ์์ต๋๋ค.
- ๋ ๋ฒ์งธ ์๋ ClickHouse์ ํธ๋์ญ์ ์คํ ๋ฆฌ์ง์ ๋๋ค. ์ด๊ฒ์ ๋ฐํจํด์ ๊ธฐ๋ฐํ ์์ ์ ๋๋ค. ๊ฐ๋ฐ์์ ์กฐ์ธ์ ๋ฐ๋ผ ClickHouse์์ ์ํํด์๋ ์ ๋๋ ๋ชจ๋ ์์ ์ด ์ฌ๊ธฐ์์ ์ํ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ ๋งค์ฐ ํจ๊ณผ์ ์ผ๋ก ์ํ๋์ด ์๋ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ผ๋ฐ์ ์ธ ํธ๋์ญ์ ์๋ฃจ์ ๋ณด๋ค ํจ์ฌ ๋ ์ ์๋ํฉ๋๋ค.
- ์ธ ๋ฒ์งธ ์๋ ClickHouse์ ๋ถ์ฐ ์ปดํจํ ์ ๋๋ค. ClickHouse๋ฅผ Hadoop ์ํ๊ณ์ ํตํฉํ ์ ์๋ ๋ฐฉ๋ฒ์ ๋ํ ์ง๋ฌธ์ด ์์์ต๋๋ค. ๋งค์ฐ ์ฌ์ํ ์์ ์ ๊ณ์ฐํ๊ธฐ ์ํด ํ์ฌ๊ฐ ClickHouse์ ๋งต ์ถ์ ์ปจํ ์ด๋์ ์ ์ฌํ ์์ ์ ์ํํ๊ณ ๋ฐ์ดํฐ ํ์งํ๋ฅผ ์ถ์ ํ๋ ๋ฑ์ ์์ ์ ์ํํ ์๋ฅผ ๋ณด์ฌ ๋๋ฆฌ๊ฒ ์ต๋๋ค.
- LifeStreet๋ ๊ด๊ณ ๋คํธ์ํฌ์ ํจ๊ป ์ ๊ณต๋๋ ๋ชจ๋ ๊ธฐ์ ์ ๋ณด์ ํ Ad Tech ํ์ฌ์ ๋๋ค.
- ๊ทธ๋ ๋ ๊ด๊ณ ์ต์ ํ, ํ๋ก๊ทธ๋๋ฐ ๋ฐฉ์ ์ ์ฐฐ์ ์ข ์ฌํ๊ณ ์์ต๋๋ค.
- ๋ง์ ๋ฐ์ดํฐ: ํ๋ฃจ์ ์ฝ 10์ต ๊ฐ์ ์ด๋ฒคํธ. ๋์์ ์ด๋ฒคํธ๋ ์ฌ๋ฌ ํ์ ์ด๋ฒคํธ๋ก ๋๋ ์ ์์ต๋๋ค.
- ์ด ๋ฐ์ดํฐ์๋ ๋ง์ ๊ณ ๊ฐ์ด ์์ผ๋ฉฐ ์ด๋ค์ ์ฌ๋ ์ผ๋ฟ๋ง ์๋๋ผ ํ๋ก๊ทธ๋๋ฐ ๋ฐฉ์ ์ ์ฐฐ์ ์ฐธ์ฌํ๋ ๋ค์ํ ์๊ณ ๋ฆฌ์ฆ์ ๋๋ค.
ํ์ฌ๋ ๊ธธ๊ณ ํ๋ํ ๊ธธ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋๋ HighLoad์์ ๊ทธ๊ฒ์ ๋ํด ์ด์ผ๊ธฐํ์ต๋๋ค. ์ฒซ์งธ, LifeStreet๋ MySQL(์ค๋ผํด์์ ์ ๊น ์ค๋จ๋จ)์์ Vertica๋ก ์ด๋ํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ ๋ํ ์ด์ผ๊ธฐ๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ชจ๋ ๊ฒ์ด ๋งค์ฐ ์ข์์ง๋ง ๋ฐ์ดํฐ๊ฐ ์ฆ๊ฐํ๊ณ ์๊ณ Vertica๊ฐ ๋น์ธ๋ค๋ ๊ฒ์ด ๊ธ๋ฐฉ ๋ถ๋ช ํด์ก์ต๋๋ค. ๋ฐ๋ผ์ ๋ค์ํ ๋์์ ๋ชจ์ํ๋ค. ๊ทธ๋ค ์ค ์ผ๋ถ๋ ์ฌ๊ธฐ์ ๋์ด๋์ด ์์ต๋๋ค. ์ค์ ๋ก ์ฐ๋ฆฌ๋ 13๋ ์์ 16๋ ์ฌ์ด์ ์์ฅ์ ๋์ ์๊ณ ๊ธฐ๋ฅ๋ฉด์์ ๊ฑฐ์ ์ ํฉํ ๊ฑฐ์ ๋ชจ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ํด ๊ฐ๋ ์ฆ๋ช ๋๋ ๋๋๋ก ์ฑ๋ฅ ํ ์คํธ๋ฅผ ์ํํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋๋ ๋ํ HighLoad์์ ๊ทธ๋ค ์ค ์ผ๋ถ์ ๋ํด ์ด์ผ๊ธฐํ์ต๋๋ค.
๋ฐ์ดํฐ๊ฐ ์ฆ๊ฐํ๊ธฐ ๋๋ฌธ์ ์์ ์ ์ฒ์์ Vertica์์ ๋ง์ด๊ทธ๋ ์ด์ ํ๋ ๊ฒ์ด ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ค์ ์๋ ์ ๊ฑธ์ณ ๊ธฐํ๊ธ์์ ์ผ๋ก ์ฑ์ฅํ์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ ๊ทธ๋ค์ ์ ๋ฐ์ ๊ฐ์ง๋ง ๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ . ๊ทธ๋ฆฌ๊ณ ์ด๋ฌํ ์ฑ์ฅ, ์ผ์ข ์ ๋ถ์์ด ์ํ๋์ด์ผ ํ๋ ๋ฐ์ดํฐ ์์ ๋ํ ๋น์ฆ๋์ค ์๊ตฌ ์ฌํญ์ ์์ธกํ๋ฉด์ ํํ๋ฐ์ดํธ๊ฐ ๊ณง ๋ ผ์๋ ๊ฒ์ด ๋ถ๋ช ํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ํํ๋ฐ์ดํธ์ ๋ํ ๋น์ฉ์ ์ด๋ฏธ ๋งค์ฐ ๋น์ธ๊ธฐ ๋๋ฌธ์ ์ฐ๋ฆฌ๋ ๊ฐ ๋์์ ์ฐพ๊ณ ์์์ต๋๋ค.
์ด๋๋ก ๊ฐ์ผ? ๊ทธ๋ฆฌ๊ณ ์ค๋ซ๋์ ์ด๋๋ก ๊ฐ์ผํ ์ง ๋ช ํํ์ง ์์์ต๋๋ค. ํํธ์ผ๋ก๋ ์์ฉ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์๊ณ ์ ์๋ํ๋ ๊ฒ ๊ฐ์ต๋๋ค. ์ผ๋ถ๋ Vertica๋งํผ ์ ์๋ํ๊ณ ์ผ๋ถ๋ ๋ ๋์ฉ๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ๋ค์ ๋ชจ๋ ๋น์ธ๊ณ ๋ ์ ๋ ดํ๊ณ ๋ ๋์ ๊ฒ์ ์ฐพ์ ์ ์์ต๋๋ค.
๋ฐ๋ฉด์ ๊ทธ๋ค์ง ๋ง์ง ์์ ์คํ ์์ค ์๋ฃจ์ ์ด ์์ต๋๋ค. ์ฆ, ๋ถ์์ ๊ฒฝ์ฐ ์๊ฐ๋ฝ์ผ๋ก ๊ณ์ฐํ ์ ์์ต๋๋ค. ๋ฌด๋ฃ์ด๊ฑฐ๋ ์ ๋ ดํ์ง๋ง ๋๋ฆฝ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ข ์ข ํ์ํ๊ณ ์ ์ฉํ ๊ธฐ๋ฅ์ด ๋ถ์กฑํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์์ฉ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์๋ ์ข์ ๊ฒ๊ณผ ์คํ ์์ค์ ์๋ ๋ชจ๋ ๋ฌด๋ฃ๋ฅผ ๊ฒฐํฉํ ์ ์๋ ๊ฒ์ ์๋ฌด๊ฒ๋ ์์์ต๋๋ค.
์๊ธฐ์น ์๊ฒ Yandex๊ฐ ํ ๋ผ์ฒ๋ผ ๋ชจ์์์ ๋ง์ ์ฌ์ฒ๋ผ ClickHouse๋ฅผ ๊บผ๋ผ ๋๊น์ง๋ ์๋ฌด๊ฒ๋ ์์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ ์์์น ๋ชปํ ๊ฒฐ์ ์ด์์ต๋๋ค. ๊ทธ๋ค์ ์ฌ์ ํ โโ"์? "๋ผ๋ ์ง๋ฌธ์ํฉ๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ .
๊ทธ๋ฆฌ๊ณ 2016๋ ์ฌ๋ฆ์ ๋ฐ๋ก ClickHouse๊ฐ ๋ฌด์์ธ์ง ์ดํด๋ณด๊ธฐ ์์ํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋๋ก๋ Vertica๋ณด๋ค ๋ ๋น ๋ฅผ ์ ์๋ค๋ ๊ฒ์ด ๋ฐํ์ก์ต๋๋ค. ์๋ก ๋ค๋ฅธ ์ฟผ๋ฆฌ์ ๋ํด ์๋ก ๋ค๋ฅธ ์๋๋ฆฌ์ค๋ฅผ ํ ์คํธํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฟผ๋ฆฌ๊ฐ ์กฐ์ธ(์กฐ์ธ) ์์ด ํ๋์ ํ ์ด๋ธ๋ง ์ฌ์ฉํ ๊ฒฝ์ฐ ClickHouse๋ Vertica๋ณด๋ค ๋ ๋ฐฐ ๋น ๋ฆ ๋๋ค.
๋๋ ๋๋ฌด ๊ฒ์ผ๋ฅด์ง ์์๊ณ ์ ์ ๋ Yandex ํ ์คํธ๋ฅผ ๋ณด์์ต๋๋ค. ์ฌ๊ธฐ๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค. ClickHouse๋ Vertica๋ณด๋ค ๋ ๋ฐฐ ๋น ๋ฅด๊ธฐ ๋๋ฌธ์ ์์ฃผ ์ด์ผ๊ธฐํฉ๋๋ค.
๊ทธ๋ฌ๋ ์ฟผ๋ฆฌ์ ์กฐ์ธ์ด ์์ผ๋ฉด ๋ชจ๋ ๊ฒ์ด ๋ช ํํ์ง ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ClickHouse๋ Vertica๋ณด๋ค ๋ ๋ฐฐ ๋๋ฆด ์ ์์ต๋๋ค. ์์ฒญ์ ์ฝ๊ฐ ์์ ํ๊ณ ๋ค์ ์์ฑํ๋ฉด ๊ฑฐ์ ๋์ผํฉ๋๋ค. ๋์์ง ์๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฌด๋ฃ์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ ํ ์คํธ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ๊ณ ๋ค๋ฅธ ๊ฐ๋์์ ๋ณธ LifeStreet๋ ClickHouse๋ก ์ด๋ํ์ต๋๋ค.
์ฌํด๋ก 16๋ ์ฐจ์ ๋๋ค. ์ฅ๊ฐ ์ธ๊ณ ์ฐ๋ ๋๋ฐ๋ ๊ณ์ ์ ์ธ์ฅ์ ๋จน๋๋ค๋ ๋๋ด ๊ฐ์๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ ์์ธํ ์ค๋ช ๋์ด ์์ผ๋ฉฐ ์ด์ ๋ํ ๋น๋์ค ๋ฑ์ด ์์ต๋๋ค.
๋ฐ๋ผ์ ๋๋ ๊ทธ๊ฒ์ ๋ํด ์์ธํ ์ด์ผ๊ธฐํ์ง ์๊ณ ๊ฒฐ๊ณผ์ ๊ทธ ๋น์์ ๋งํ์ง ์์ ํฅ๋ฏธ๋ก์ด ๋ช ๊ฐ์ง ์ฌํญ์ ๋ํด์๋ง ์ด์ผ๊ธฐ ํ ๊ฒ์ ๋๋ค.
๊ฒฐ๊ณผ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ์ฑ๊ณต์ ์ธ ๋ง์ด๊ทธ๋ ์ด์ ๊ณผ XNUMX๋ ์ด์ ์์คํ ์ด ์ด๋ฏธ ํ๋ก๋์ ํ๊ฒฝ์์ ์๋ํ๊ณ ์์ต๋๋ค.
- ์์ฐ์ฑ๊ณผ ์ ์ฐ์ฑ์ด ํฅ์๋์์ต๋๋ค. ํ๋ฃจ์ ์งง์ ์๊ฐ ๋์ ์ ์ฅํ ์ ์๋ 10์ต ๊ฐ์ ๋ ์ฝ๋ ์ค LifeStreet๋ ์ด์ ํ๋ฃจ์ 75์ต ๊ฐ์ ๋ ์ฝ๋๋ฅผ ์ ์ฅํ๊ณ ์ด ์์ ์ 3๊ฐ์ ์ด์ ์ํํ ์ ์์ต๋๋ค. ํผํฌ์์ ๊ณ์ฐํ๋ฉด ์ด๋น ์ต๋ ๋ฐฑ๋ง ๊ฐ์ ์ด๋ฒคํธ์ ๋๋ค. ํ๋ฃจ์ ๋ฐฑ๋ง ๊ฐ ์ด์์ SQL ์ฟผ๋ฆฌ๊ฐ ์ด ์์คํ ์ ๋์ฐฉํ๋๋ฐ, ๋๋ถ๋ถ์ ์๋ก ๋ค๋ฅธ ๋ก๋ด์์ ์จ ๊ฒ์ ๋๋ค.
- Vertica๋ณด๋ค ClickHouse์ ๋ ๋ง์ ์๋ฒ๊ฐ ์ฌ์ฉ๋์์์๋ ๋ถ๊ตฌํ๊ณ Vertica์๋ ๋ค์ ๋น์ผ SAS ๋์คํฌ๊ฐ ์ฌ์ฉ๋์๊ธฐ ๋๋ฌธ์ ํ๋์จ์ด ๋น์ฉ๋ ์ ์ฝ๋์์ต๋๋ค. ClickHouse๋ SATA๋ฅผ ์ฌ์ฉํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์? Vertica์์ ์ฝ์ ์ ๋๊ธฐ์์ด๊ธฐ ๋๋ฌธ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋๊ธฐํ๋ฅผ ์ํด์๋ ๋์คํฌ ์๋๊ฐ ๋๋ฌด ๋๋ ค์ง์ง ์์์ผ ํ๊ณ ๋คํธ์ํฌ ์๋๋ ๋๋ฌด ๋๋ ค์ง์ง ์์์ผ ํฉ๋๋ค. ์ฆ, ๋น์ฉ์ด ๋ง์ด ๋๋ ์์ ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ClickHouse์์ ์ฝ์ ์ ๋น๋๊ธฐ์์ ๋๋ค. ๋ํ ๋ชจ๋ ๊ฒ์ ๋ก์ปฌ์์ ํญ์ ์ธ ์ ์์ผ๋ฉฐ ์ด์ ๋ํ ์ถ๊ฐ ๋น์ฉ์ด ์์ผ๋ฏ๋ก ๋ ๋๋ฆฐ ๋๋ผ์ด๋ธ์์๋ Vertika๋ณด๋ค ํจ์ฌ ๋น ๋ฅด๊ฒ ClickHouse์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ํ ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ ์๋ ๊ฑฐ์ ๊ฐ์ต๋๋ค. SATA์์ ์ฝ๊ธฐ, RAID์ ์์ผ๋ฉด ์ถฉ๋ถํ ๋น ๋ฆ ๋๋ค.
- ๋ผ์ด์ ์ค์ ์ํด ์ ํ๋์ง ์์ต๋๋ค. ์ฆ, 3๊ฐ ์๋ฒ(60๊ฐ ์๋ฒ๋ ํ๋์ ๋ณต์ ๋ณธ)์ ์๋ 20ํํ๋ฐ์ดํธ์ ๋ฐ์ดํฐ์ ํฉํธ ๋ฐ ์ง๊ณ์์ 6์กฐ ๊ฐ์ ๋ ์ฝ๋์ ๋๋ค. Vertica์์๋ ์ด์ ๊ฐ์ ๊ฒ์ ๊ฐ๋นํ ์ ์์ต๋๋ค.
์ด์ ์ด ์์์ ์ค์ ์ ์ธ ์ฌํญ์ผ๋ก ์ ํํฉ๋๋ค.
- ์ฒซ ๋ฒ์งธ๋ ํจ์จ์ ์ธ ๊ณํ์ ๋๋ค. ๋ง์ ๊ฒ์ด ์คํค๋ง์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค.
- ๋ ๋ฒ์งธ๋ ํจ์จ์ ์ธ SQL ์์ฑ์ ๋๋ค.
์ผ๋ฐ์ ์ธ OLAP ์ฟผ๋ฆฌ๋ ์ ํ์ ๋๋ค. ์ผ๋ถ ์ด์ ๊ทธ๋ฃนํ ๊ธฐ์ค์ผ๋ก ์ด๋ํ๊ณ ์ผ๋ถ ์ด์ ์ง๊ณ ํจ์๋ก ์ด๋ํฉ๋๋ค. ์ ์ก๋ฉด์ฒด์ ํ ์กฐ๊ฐ์ผ๋ก ํํ๋ ์ ์๋ ๊ณณ์ด ์์ต๋๋ค. ์ ์ฒด ๊ทธ๋ฃน by๋ ํ๋ก์ ์ ์ผ๋ก ์๊ฐํ ์ ์์ต๋๋ค. ์ด๊ฒ์ด ๋ค๋ณ๋ ๋ฐ์ดํฐ ๋ถ์์ด๋ผ๊ณ ๋ถ๋ฆฌ๋ ์ด์ ์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ข ์ข ์ด๊ฒ์ ๊ด์ ์ ๋ฐ๋ผ ์ธก๋ฉด์ ๋ฐ๋ผ์ด ์ฌ์ค์ ์ค์ฌ ์ฌ์ค๊ณผ ํน์ฑ์ด์์ ๋ ๋ณ ์ฒด๊ณ์ ํํ๋ก ๋ชจ๋ธ๋ง๋ฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ฌผ๋ฆฌ์ ๋์์ธ ์ธก๋ฉด์์, ๊ทธ๊ฒ์ด ํ ์ด๋ธ์ ์ด๋ป๊ฒ ๋ง๋์ง, ๊ทธ๋ค์ ๋ณดํต ์ ๊ทํ๋ ํํ์ ํฉ๋๋ค. ๋น์ ๊ทํํ ์ ์์ง๋ง ๋์คํฌ์ ๋น์ฉ์ด ๋ง์ด ๋ค๊ณ ์ฟผ๋ฆฌ์ ๊ทธ๋ค์ง ํจ์จ์ ์ด์ง ์์ต๋๋ค. ๋ฐ๋ผ์ ๊ทธ๋ค์ ์ผ๋ฐ์ ์ผ๋ก ์ ๊ทํ๋ ํํ, ์ฆ ํฉํธ ํ ์ด๋ธ๊ณผ ๋ง์ ์ฐจ์ ํ ์ด๋ธ์ ๋ง๋ญ๋๋ค.
๊ทธ๋ฌ๋ ClickHouse์์๋ ์ ์๋ํ์ง ์์ต๋๋ค. ๋ ๊ฐ์ง ์ด์ ๊ฐ ์์ต๋๋ค.
- ์ฒซ ๋ฒ์งธ๋ ClickHouse์ ๊ทธ๋ค์ง ์ข์ ์กฐ์ธ์ด ์๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ฆ, ์กฐ์ธ์ด ์์ง๋ง ์ข์ง ์์ต๋๋ค. ๋์ ๋์.
- ๋ ๋ฒ์งธ๋ ํ ์ด๋ธ์ด ์ ๋ฐ์ดํธ๋์ง ์๋๋ค๋ ๊ฒ์ ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ์คํ ํ๋ก ์ฃผ๋ณ์ ์๋ ์ด ํ๋ ์ดํธ์์ ๋ฌด์ธ๊ฐ๋ฅผ ๋ณ๊ฒฝํด์ผ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด ๊ณ ๊ฐ ์ด๋ฆ, ํ์ฌ ์ด๋ฆ ๋ฑ ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ ์๋ํ์ง ์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ClickHouse์๋ ์ด๊ฒ์์ ๋ฒ์ด๋ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. ์ฌ์ง์ด ๋:
- ์ฒซ ๋ฒ์งธ๋ ์ฌ์ ์ ์ฌ์ฉ์ ๋๋ค. ์ธ๋ถ ์ฌ์ ์ 99%๊ฐ ์ ๋ฐ์ดํธ ๋ฑ์ ํตํด ์คํ ์คํค๋ง์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
- ๋ ๋ฒ์งธ๋ ๋ฐฐ์ด์ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค. ๋ฐฐ์ด์ ์ ๊ทํ์ ๊ด๋ จ๋ ์กฐ์ธ ๋ฐ ๋ฌธ์ ๋ฅผ ์ ๊ฑฐํ๋ ๋ฐ๋ ๋์์ด ๋ฉ๋๋ค.
- ์กฐ์ธ์ด ํ์ํ์ง ์์ต๋๋ค.
- ์ ๊ทธ๋ ์ด๋ ๊ฐ๋ฅ. 2018๋ XNUMX์๋ถํฐ ์ฌ์ ์ ๋ถ๋ถ์ ์ผ๋ก, ์ฆ ๋ณ๊ฒฝ๋ ํญ๋ชฉ์ ์ ๋ฐ์ดํธํ ์ ์๋ ๋ฌธ์ํ๋์ง ์์ ๊ธฐํ(๋ฌธ์์์ ์ฐพ์ ์ ์์)๊ฐ ๋ํ๋ฌ์ต๋๋ค. ์ค์ ๋ก๋ ํ ์ด๋ธ๊ณผ ๊ฐ์ต๋๋ค.
- ํญ์ ๋ฉ๋ชจ๋ฆฌ์ ์์ผ๋ฏ๋ก ๋์คํฌ์ ์๋ ํ ์ด๋ธ์ธ ๊ฒฝ์ฐ๋ณด๋ค ์ฌ์ ์์ ๊ณผ ์กฐ์ธ์ด ๋ ๋น ๋ฅด๊ณ ์บ์์ ์๋ค๋ ๊ฒ์ด ์์ง ์ฌ์ค์ด ์๋๋ฉฐ ๋๋ถ๋ถ ๊ทธ๋ ์ง ์์ ๊ฐ๋ฅ์ฑ์ด ํฝ๋๋ค.
- ์กฐ์ธ๋ ํ์ํ์ง ์์ต๋๋ค.
- ์ด๊ฒ์ ๊ฐ๊ฒฐํ ์ผ๋๋ค ํํ์ ๋๋ค.
- ์ ์๊ฐ์๋ ์ด๋ ์ด๋ ๊ดด์ง๋ค์ ์ํด ๋ง๋ค์ด์ก์ต๋๋ค. ์ด๋ค์ ๋๋ค ํจ์ ๋ฑ์ ๋๋ค.
์ด๊ฒ์ ๋นจ๊ฐ์ ๋จ์ด๊ฐ ์๋๋๋ค. ์ด๊ฒ์ ๋งค์ฐ ๊ฐ๋จํ๊ณ ์ฐ์ํ ๋ฐฉ์์ผ๋ก ๋ง์ ์ผ์ ํ ์ ์๊ฒ ํด์ฃผ๋ ๋งค์ฐ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ์ ๋๋ค.
๋ฐฐ์ด์ ํด๊ฒฐํ๋ ๋ฐ ๋์์ด ๋๋ ์ผ๋ฐ์ ์ธ ์์ ๋๋ค. ๋ค์ ์๋ ๊ฐ๋จํ๊ณ ๋ช ํํฉ๋๋ค.
- ํ๊ทธ๋ก ๊ฒ์ํฉ๋๋ค. ๊ฑฐ๊ธฐ์ ํด์ํ๊ทธ๊ฐ ์๊ณ ํด์ํ๊ทธ๋ก ๊ฒ์๋ฌผ์ ์ฐพ๊ณ ์ถ๋ค๋ฉด.
- ํค-๊ฐ ์์ผ๋ก ๊ฒ์ํฉ๋๋ค. ๊ฐ์ด ์๋ ์์ฑ๋ ์์ต๋๋ค.
- ๋ค๋ฅธ ๊ฒ์ผ๋ก ๋ณํํด์ผ ํ๋ ํค ๋ชฉ๋ก ์ ์ฅ.
์ด๋ฌํ ๋ชจ๋ ์์ ์ ์ด๋ ์ด ์์ด ํด๊ฒฐํ ์ ์์ต๋๋ค. ํ๊ทธ๋ ์ด๋ค ์ค์ ๋ฃ๊ณ ์ ๊ท ํํ์์ผ๋ก ์ ํํ๊ฑฐ๋ ๋ณ๋์ ํ ์ด๋ธ์์ ์ ํํ ์ ์์ง๋ง ์กฐ์ธ์ ํด์ผ ํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ClickHouse์์๋ ์๋ฌด ๊ฒ๋ ํ ํ์๊ฐ ์์ต๋๋ค. ํด์ํ๊ทธ์ ๋ํ ๋ฌธ์์ด ๋ฐฐ์ด์ ์ค๋ช ํ๊ฑฐ๋ ํค-๊ฐ ์์คํ ์ ๋ํ ์ค์ฒฉ ๊ตฌ์กฐ๋ฅผ ๋ง๋๋ ๊ฒ์ผ๋ก ์ถฉ๋ถํฉ๋๋ค.
์ค์ฒฉ ๊ตฌ์กฐ๋ ์ต๊ณ ์ ์ด๋ฆ์ด ์๋ ์ ์์ต๋๋ค. ์ด๋ค์ ์ด๋ฆ์ ๊ณตํต ๋ถ๋ถ๊ณผ ์ผ๋ถ ๊ด๋ จ ํน์ฑ์ด ์๋ ๋ ๊ฐ์ ์ด๋ ์ด์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ ํ๊ทธ๋ก ๊ฒ์ํ๋ ๊ฒ์ ๋งค์ฐ ์ฝ์ต๋๋ค. ๊ธฐ๋ฅ์ ๊ฐ์ง๊ณ has
, ๋ฐฐ์ด์ ์์๊ฐ ํฌํจ๋์ด ์๋์ง ํ์ธํฉ๋๋ค. ์ฌ๋ฌ๋ถ, ์ฐ๋ฆฌ ํ์์ ๊ด๋ จ๋ ๋ชจ๋ ํญ๋ชฉ์ ์ฐพ์์ต๋๋ค.
subid๋ก ๊ฒ์ํ๋ ๊ฒ์ ์ข ๋ ๋ณต์กํฉ๋๋ค. ๋จผ์ ํค์ ์ธ๋ฑ์ค๋ฅผ ์ฐพ์ ๋ค์ ์ด ์ธ๋ฑ์ค๊ฐ ์๋ ์์๋ฅผ ๊ฐ์ ธ์์ ์ด ๊ฐ์ด ํ์ํ์ง ํ์ธํด์ผ ํฉ๋๋ค. ๊ทธ๋ฌ๋ ๋งค์ฐ ๊ฐ๋จํ๊ณ ์ปดํฉํธํฉ๋๋ค.
์ฌ๋ฌ๋ถ์ด ์ฐ๊ณ ์ถ์ ์ ๊ท ํํ์์ ํ ์ค์ ๋ชจ๋ ๋ด์๋ค๋ฉด, ์ฐ์ ์ด์ํ ๊ฒ์ ๋๋ค. ๋์งธ, ๋ ๊ฐ์ ์ด๋ ์ด๋ณด๋ค ํจ์ฌ ์ค๋ ์๋ํ์ต๋๋ค.
๋ค๋ฅธ ์์. ID๋ฅผ ์ ์ฅํ๋ ๋ฐฐ์ด์ด ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ๋ค์ ์ด๋ฆ์ผ๋ก ๋ฒ์ญํ ์ ์์ต๋๋ค. ๊ธฐ๋ฅ arrayMap
. ์ด๊ฒ์ ์ ํ์ ์ธ ๋๋ค ํจ์์
๋๋ค. ๊ฑฐ๊ธฐ์ ๋๋ค ์์ ์ ๋ฌํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋
๋ ์ฌ์ ์์ ๊ฐ ID์ ์ด๋ฆ ๊ฐ์ ๊บผ๋
๋๋ค.
๊ฒ์๋ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ํ ์ ์์ต๋๋ค. ์์๊ฐ ์ผ์นํ๋์ง ํ์ธํ๋ ์กฐ๊ฑด์ ํจ์๊ฐ ์ ๋ฌ๋ฉ๋๋ค.
์ด๋ฌํ ๊ฒ๋ค์ ํ๋ก๋ฅผ ํฌ๊ฒ ๋จ์ํํ๊ณ ๋ง์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค.
๊ทธ๋ฌ๋ ์ฐ๋ฆฌ๊ฐ ์ง๋ฉดํ ๋ค์ ๋ฌธ์ ๋ ํจ์จ์ ์ธ ์ฟผ๋ฆฌ์ ๋๋ค.
- ClickHouse์๋ ์ฟผ๋ฆฌ ํ๋๋๊ฐ ์์ต๋๋ค. ์ ๋์ ์ผ๋กํ์ง.
- ๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ ๋ณต์กํ ์ฟผ๋ฆฌ๋ ์ฌ์ ํ ๊ณํํด์ผ ํฉ๋๋ค. ์ด๋ค ๊ฒฝ์ฐ์?
- ์ฟผ๋ฆฌ์ ์ฌ๋ฌ ์กฐ์ธ์ด ์๋ ๊ฒฝ์ฐ ํ์ ์ ํ์ผ๋ก ๋ํํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ค์ด ์คํ๋๋ ์์๊ฐ ์ค์ํฉ๋๋ค.
- ๊ทธ๋ฆฌ๊ณ ๋ ๋ฒ์งธ - ์์ฒญ์ด ๋ฐฐํฌ๋๋ ๊ฒฝ์ฐ. ๋ถ์ฐ ์ฟผ๋ฆฌ์์๋ ๊ฐ์ฅ ์์ชฝ์ ํ์ ์ ํ๋ง ๋ถ์ฐ ์คํ๋๊ณ ๋๋จธ์ง๋ ๋ชจ๋ ์ฐ๊ฒฐํ์ฌ ์คํํ ํ ์๋ฒ๋ก ์ ๋ฌ๋๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋ฐ๋ผ์ ์กฐ์ธ(์กฐ์ธ)์ด ๋ง์ ๋ถ์ฐ ์ฟผ๋ฆฌ๊ฐ ์๋ ๊ฒฝ์ฐ ์์๋ฅผ ์ ํํด์ผ ํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ ๊ฐ๋จํ ๊ฒฝ์ฐ์๋ ๋๋๋ก ์ค์ผ์ค๋ฌ์ ์์ ์ ์ํํ๊ณ ์ฟผ๋ฆฌ๋ฅผ ์ฝ๊ฐ ๋ค์ ์์ฑํด์ผ ํ ์๋ ์์ต๋๋ค.
๋ค์์ ์์ ๋๋ค. ์ผ์ชฝ์๋ ์์ 5๊ฐ ๊ตญ๊ฐ๋ฅผ ํ์ํ๋ ์ฟผ๋ฆฌ๊ฐ ์์ต๋๋ค. ์ ์๊ฐ์๋ 2,5์ด๊ฐ ๊ฑธ๋ฆฝ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ค๋ฅธ์ชฝ์๋ ๋์ผํ ์ฟผ๋ฆฌ์ด์ง๋ง ์ฝ๊ฐ ๋ค์ ์์ฑ๋์์ต๋๋ค. ๋ฌธ์์ด๋ก ๊ทธ๋ฃนํํ๋ ๋์ ํค(int)๋ก ๊ทธ๋ฃนํํ๊ธฐ ์์ํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ ๋น ๋ฆ ๋๋ค. ๊ทธ๋ฐ ๋ค์ ๊ฒฐ๊ณผ์ ์ฌ์ ์ ์ฐ๊ฒฐํ์ต๋๋ค. 2,5์ด ๋์ ์์ฒญ์ 1,5์ด๊ฐ ๊ฑธ๋ฆฝ๋๋ค. ์ข์ต๋๋ค.
๋ค์ ์ฐ๊ธฐ ํํฐ๊ฐ ์๋ ์ ์ฌํ ์์ ๋๋ค. ๋ค์์ ๋ฌ์์์ ๋ํ ์์ฒญ์ ๋๋ค. 5์ด ๋์ ์คํ๋ฉ๋๋ค. ๋ฌธ์์ด์ด ์๋๋ผ ์ซ์๋ฅผ ๋ฌ์์์ ๊ด๋ จ๋ ํค ์งํฉ๊ณผ ๋ค์ ๋น๊ตํ๋ ๋ฐฉ์์ผ๋ก ๋ค์ ์์ฑํ๋ฉด ํจ์ฌ ๋น ๋ฅผ ๊ฒ์ ๋๋ค.
๊ทธ๋ฌํ ํธ๋ฆญ์ด ๋ง์ด ์์ต๋๋ค. ๋ํ ์ด๋ฏธ ๋น ๋ฅด๊ฒ ์คํ ์ค์ด๊ฑฐ๋ ๋ฐ๋๋ก ๋๋ฆฌ๊ฒ ์คํ ์ค์ด๋ผ๊ณ ์๊ฐ๋๋ ์ฟผ๋ฆฌ์ ์๋๋ฅผ ํฌ๊ฒ ๋์ผ ์ ์์ต๋๋ค. ๊ทธ๋ค์ ๋ ๋นจ๋ฆฌ ๋ง๋ค ์ ์์ต๋๋ค.
- ๋ถ์ฐ ๋ชจ๋์์ ์ต๋ ์์ .
- int๋ก ํ๋ ๊ฒ์ฒ๋ผ ์ต์ ์ ํ๋ณ๋ก ์ ๋ ฌํฉ๋๋ค.
- ์กฐ์ธ(์กฐ์ธ), ์ฌ์ ์ด ์๋ ๊ฒฝ์ฐ ์ต์ํ ๋ถ๋ถ์ ์ผ๋ก ๊ทธ๋ฃนํ๋ ๋ฐ์ดํฐ๊ฐ ์ด๋ฏธ ์์ ๋ ์ตํ์ ์๋จ์ผ๋ก ์ํํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ๊ทธ๋ฌ๋ฉด ์กฐ์ธ ์์ ๋๋ ์ฌ์ ํธ์ถ์ด ๋ ์ ๊ฒ ํธ์ถ๋๊ณ ๋ ๋น ๋ฆ ๋๋ค. .
- ํํฐ ๊ต์ฒด.
์ ๊ฐ ๋ณด์ฌ๋๋ฆฐ ๊ธฐ์ ๋ฟ๋ง ์๋๋ผ ๋ค๋ฅธ ๊ธฐ์ ๋ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ค ๋ชจ๋๋ ๋๋๋ก ์ฟผ๋ฆฌ ์คํ ์๋๋ฅผ ํฌ๊ฒ ๋์ผ ์ ์์ต๋๋ค.
๋ค์ ์์ ๋ก ๋์ด๊ฐ๊ฒ ์ต๋๋ค. ๋ฏธ๊ตญ X ํ์ฌ. ๊ทธ๋ ๊ฐ ๋ฌด์์ํ๊ณ ์๋?
์์ ์ด ์์์ต๋๋ค.
- ๊ด๊ณ ๊ฑฐ๋์ ์คํ๋ผ์ธ ์ฐ๊ฒฐ.
- ๋ค๋ฅธ ๋ฐ์ธ๋ฉ ๋ชจ๋ธ ๋ชจ๋ธ๋ง.
์๋๋ฆฌ์ค๋ ๋ฌด์์ ๋๊น?
์๋ฅผ ๋ค์ด ์ผ๋ฐ ๋ฐฉ๋ฌธ์๋ ๋ค๋ฅธ ๊ด๊ณ ๋ฅผ ํตํด ํ ๋ฌ์ 20 ๋ฒ ์ฌ์ดํธ๋ฅผ ๋ฐฉ๋ฌธํ๊ฑฐ๋์ด ์ฌ์ดํธ๋ฅผ ๊ธฐ์ตํ๊ธฐ ๋๋ฌธ์ ๋๋๋ก ๊ด๊ณ ์์ด ๋ฐฉ๋ฌธํฉ๋๋ค. ์ผ๋ถ ์ ํ์ ๋ณด๊ณ ๋ฐ๊ตฌ๋์ ๋ฃ๊ณ ๋ฐ๊ตฌ๋์์ ๊บผ๋ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ฒฐ๊ตญ ๋ฌด์ธ๊ฐ๋ฅผ ์ฐ๋ค.
ํฉ๋ฆฌ์ ์ธ ์ง๋ฌธ: "ํ์ํ ๊ฒฝ์ฐ ๋๊ฐ ๊ด๊ณ ๋น์ฉ์ ์ง๋ถํด์ผ ํฉ๋๊น?" ๊ทธ๋ฆฌ๊ณ "๊ทธ์๊ฒ ์ํฅ์ ๋ฏธ์ณค๋ค๋ฉด ์ด๋ค ๊ด๊ณ ๊ฐ ์์์ต๋๊น?" ์ฆ, ๊ทธ๋ ์ ๊ตฌ๋งคํ์ผ๋ฉฐ ์ด ์ฌ๋๊ณผ ๊ฐ์ ์ฌ๋๋ค๋ ๊ตฌ๋งคํ๋๋ก ํ๋ ๋ฐฉ๋ฒ์ ๋ฌด์์ ๋๊น?
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์๋ ์น์ฌ์ดํธ์์ ๋ฐ์ํ๋ ์ด๋ฒคํธ๋ฅผ ์ฌ๋ฐ๋ฅธ ๋ฐฉ์์ผ๋ก ์ฐ๊ฒฐํด์ผ ํฉ๋๋ค. ์ฆ, ์ด๋ป๊ฒ๋ ๊ทธ๋ค ๊ฐ์ ์ฐ๊ฒฐ์ ๊ตฌ์ถํด์ผ ํฉ๋๋ค. ๊ทธ๋ฐ ๋ค์ ๋ถ์์ ์ํด DWH๋ก ๋ณด๋ด์ง๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด ๋ถ์์ ๊ธฐ๋ฐ์ผ๋ก ๋๊ฐ ์ด๋ค ๊ด๊ณ ๋ฅผ ํ์ํ ์ง์ ๋ํ ๋ชจ๋ธ์ ๊ตฌ์ถํฉ๋๋ค.
๊ด๊ณ ํธ๋์ญ์ ์ ๊ด๊ณ ํ์์์ ์์ํ์ฌ ์ด๋ค ์ผ์ด ๋ฐ์ํ๊ณ ๊ตฌ๋งค๊ฐ ๋ฐ์ํ ์ ์์ผ๋ฉฐ ๊ตฌ๋งค ๋ด ๊ตฌ๋งค๊ฐ ์์ ์ ์๋ ์ผ๋ จ์ ๊ด๋ จ ์ฌ์ฉ์ ์ด๋ฒคํธ์ ๋๋ค. ์๋ฅผ ๋ค์ด ์ด๊ฒ์ด ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ๋๋ ๋ชจ๋ฐ์ผ ๊ฒ์์ธ ๊ฒฝ์ฐ ์ผ๋ฐ์ ์ผ๋ก ์ ํ๋ฆฌ์ผ์ด์ ์ค์น๋ ๋ฌด๋ฃ๋ก ์ด๋ฃจ์ด์ง๋ฉฐ ๊ฑฐ๊ธฐ์์ ๋ฌด์ธ๊ฐ๋ฅผ ์ํํ๋ฉด ์ด์ ๋ํ ๋น์ฉ์ด ํ์ํ ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฌ๋์ด ์์ฉ ํ๋ก๊ทธ๋จ์ ๋ ๋ง์ด ์ธ์๋ก ๋ ๊ฐ์น๊ฐ ์์ต๋๋ค. ๊ทธ๋ฌ๋์ด๋ฅผ ์ํด์๋ ๋ชจ๋ ๊ฒ์ ์ฐ๊ฒฐํด์ผํฉ๋๋ค.
๋ง์ ๋ฐ์ธ๋ฉ ๋ชจ๋ธ์ด ์์ต๋๋ค.
๊ฐ์ฅ ์ธ๊ธฐ์๋ ๊ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ์ํธ์์ฉ์ด ํด๋ฆญ ๋๋ ๋ ธ์ถ์ธ ๋ง์ง๋ง ์ํธ์์ฉ.
- ์ฒซ ๋ฒ์งธ ์ํธ์์ฉ, ์ฆ ์ฌ๋์ ์ฌ์ดํธ๋ก ๋ฐ๋ ค์จ ์ฒซ ๋ฒ์งธ ๊ฒ.
- ์ ํ ์กฐํฉ - ๋ชจ๋ ๋์ผํฉ๋๋ค.
- ๊ฐ์ .
- ๋ฑ๋ฑ.
์ฒ์์๋ ์ด๋ป๊ฒ ์๋ํ์ต๋๊น? ๋ฐํ์๊ณผ ์นด์ฐ๋๋ผ๊ฐ ์์์ต๋๋ค. Cassandra๋ ํธ๋์ญ์ ์คํ ๋ฆฌ์ง๋ก ์ฌ์ฉ๋์์ต๋๋ค. ์ฆ, ๋ชจ๋ ๊ด๋ จ ํธ๋์ญ์ ์ด ์ฌ๊ธฐ์ ์ ์ฅ๋์์ต๋๋ค. ์๋ฅผ ๋ค์ด ์ผ๋ถ ํ์ด์ง ๋๋ ๋ค๋ฅธ ๊ฒ์ ํ์ํ๋ ๊ฒ๊ณผ ๊ฐ์ด ๋ฐํ์์ ์ผ๋ถ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ๋ฉด Cassandra์ ์์ฒญ์ด ์ด๋ฃจ์ด์ง๋๋ค. ๊ทธ๋ฐ ์ฌ๋์ด ์๋์ง ์ฌ๋ถ์ ๋๋ค. ๊ทธ๋ฐ ๋ค์ ์ด์ ๊ด๋ จ๋ ํธ๋์ญ์ ์ ์ป์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ๊ฒฐ์ด ์ด๋ฃจ์ด์ก์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์์ฒญ์ ํธ๋์ญ์ ID๊ฐ ์๋ ๊ฒ์ด ์ด์ด ์ข๋ค๋ฉด ์ฝ์ต๋๋ค. ๊ทธ๋ฌ๋ ์ผ๋ฐ์ ์ผ๋ก ์ด์ด ์์ต๋๋ค. ๋ฐ๋ผ์ ๋ง์ง๋ง ๊ฑฐ๋๋ ๋ง์ง๋ง ํด๋ฆญ์ด ์๋ ๊ฑฐ๋ ๋ฑ์ ์ฐพ์์ผ ํ์ต๋๋ค.
๋ฐ์ธ๋ฉ์ด ๋ง์ง๋ง ํด๋ฆญ์ ์๋ ํ ๋ชจ๋ ๊ฒ์ด ์ ์๋ํ์ต๋๋ค. ์ฐฝ์ ํ ๋ฌ๋ก ์ค์ ํ๋ฉด ํ๋ฃจ์ 10๋ง ํ์ ํด๋ฆญ, ํ ๋ฌ์ 300์ต ํ์ ํด๋ฆญ์ด ๋ฐ์ํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ Cassandra์์๋ Runtime์ด ๋น ๋ฅด๊ฒ ์๋ตํด์ผ ํ๊ธฐ ๋๋ฌธ์ ๋น ๋ฅด๊ฒ ์คํํ๋ ค๋ฉด ๋ฉ๋ชจ๋ฆฌ์ ๋ชจ๋ ์์ด์ผ ํ๋ฏ๋ก ์ฝ 10-15๊ฐ์ ์๋ฒ๊ฐ ํ์ํ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ํธ๋์ญ์ ์ ๋์คํ๋ ์ด์ ์ฐ๊ฒฐํ๋ ค๊ณ ํ์ ๋ ์ฆ์ ์ฌ๋ฏธ๊ฐ ์๋ ๊ฒ์ผ๋ก ํ๋ช ๋์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์? 30๋ฐฐ ๋ ๋ง์ ์ด๋ฒคํธ๋ฅผ ์ ์ฅํด์ผ ํจ์ ์ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ 30๋ฐฐ ๋ ๋ง์ ์๋ฒ๊ฐ ํ์ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ ์ผ์ข ์ ์ฒ๋ฌธํ์ ์์น๋ผ๋ ๊ฒ์ด ๋ฐํ์ก์ต๋๋ค. ๋ฐํ์์ ํจ์ฌ ์ ์ ์์ ์๋ฒ๊ฐ ์์์๋ ๋ถ๊ตฌํ๊ณ ๋งํฌ๋ฅผ ์ํํ๊ธฐ ์ํด ์ต๋ 500๊ฐ์ ์๋ฒ๋ฅผ ์ ์งํ๋ ๊ฒ์ ์ผ์ข ์ ์๋ชป๋ ์์น์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ค์ ๋ฌด์์ ํด์ผํ ์ง ์๊ฐํ๊ธฐ ์์ํ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๋ ClickHouse์ ๊ฐ๋ค. ClickHouse์์๋ ์ด๋ป๊ฒ ํ๋์? ์ธ๋ป ๋ณด๊ธฐ์ ์ด๊ฒ์ ์ผ๋ จ์ ์ํฐ ํจํด์ธ ๊ฒ ๊ฐ์ต๋๋ค.
- ํธ๋์ญ์ ์ด ์ฆ๊ฐํ๊ณ ์ ์ ๋ ๋ง์ ์ด๋ฒคํธ๋ฅผ ์ฐ๊ฒฐํฉ๋๋ค. ์ฆ, ๋ณ๊ฒฝ ๊ฐ๋ฅํ๋ฉฐ ClickHouse๋ ๋ณ๊ฒฝ ๊ฐ๋ฅํ ๊ฐ์ฒด์ ์ ์๋ํ์ง ์์ต๋๋ค.
- ๋ฐฉ๋ฌธ์๊ฐ ์ฐ๋ฆฌ์๊ฒ ์ฌ ๋, ์ฐ๋ฆฌ๋ ๊ทธ์ ๋ฐฉ๋ฌธ ID๋ก ํค๋ก ๊ทธ์ ๊ฑฐ๋๋ฅผ ๊บผ๋ด์ผ ํฉ๋๋ค. ์ด๊ฒ์ ํฌ์ธํธ ์ฟผ๋ฆฌ์ด๊ธฐ๋ ํ๋ฉฐ ClickHouse์์๋ ๊ทธ๋ ๊ฒ ํ์ง ์์ต๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ClickHouse์๋ ๋๊ท๋ชจ โฆ์ค์บ์ด ์์ง๋ง ์ฌ๊ธฐ์์๋ ์ผ๋ถ ๋ ์ฝ๋๋ฅผ ๊ฐ์ ธ์์ผ ํฉ๋๋ค. ๋ํ ๋ฐํจํด์ ๋๋ค.
- ๋ํ ํธ๋์ญ์ ์ด json์ ์์์ง๋ง ๋ค์ ์์ฑํ๊ณ ์ถ์ง ์์๊ธฐ ๋๋ฌธ์ ๊ตฌ์กฐํ๋์ง ์์ ๋ฐฉ์์ผ๋ก json์ ์ ์ฅํ๊ณ ํ์ํ ๊ฒฝ์ฐ ๋ฌด์ธ๊ฐ๋ฅผ ๊บผ๋ด๊ณ ์ถ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ ๋ํ ๋ฐํจํด์ ๋๋ค.
์ฆ, ์ผ๋ จ์ ๋ฐํจํด์ ๋๋ค.
๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ ๋งค์ฐ ์ ์๋ํ๋ ์์คํ ์ ๋ง๋๋ ๊ฒ์ผ๋ก ๋ฐํ์ก์ต๋๋ค.
๋ฌด์์ ํ์ต๋๊น? ๋ก๊ทธ๊ฐ ๋์ ธ์ง ClickHouse๊ฐ ๋ ์ฝ๋๋ก ๋๋ฉ๋๋ค. ClickHouse์์ ๋ก๊ทธ๋ฅผ ์์ ํ ํน์ฑ ์๋น์ค๊ฐ ๋ํ๋ฌ์ต๋๋ค. ๊ทธ ํ ๊ฐ ํญ๋ชฉ์ ๋ํด ๋ฐฉ๋ฌธ ID๋ณ๋ก ์์ง ์ฒ๋ฆฌ๋์ง ์์์ ์ ์๋ ํธ๋์ญ์ ๊ณผ ์ค๋ ์ท, ์ฆ ์ด๋ฏธ ์ฐ๊ฒฐ๋ ํธ๋์ญ์ , ์ฆ ์ด์ ์์ ์ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ์์ต๋๋ค. ๋๋ ์ด๋ฏธ ๊ทธ๋ค๋ก๋ถํฐ ๋ ผ๋ฆฌ๋ฅผ ๋ง๋ค๊ณ ์ฌ๋ฐ๋ฅธ ํธ๋์ญ์ ์ ์ ํํ๊ณ ์๋ก์ด ์ด๋ฒคํธ๋ฅผ ์ฐ๊ฒฐํ์ต๋๋ค. ๋ค์ ๋ก๊ทธ์ธํ์ต๋๋ค. ๋ก๊ทธ๋ ClickHouse๋ก ๋์๊ฐ์ต๋๋ค. ์ฆ, ์ง์์ ์ผ๋ก ์ํํ๋ ์์คํ ์ ๋๋ค. ๊ฒ๋ค๊ฐ DWH์์ ๋ถ์์ ํ๋ฌ ๊ฐ์ต๋๋ค.
์ ์๋ํ์ง ์๋ ๊ฒ์ ์ด๋ฌํ ํํ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ClickHouse๋ฅผ ๋ ์ฝ๊ฒ ๋ง๋ค๊ธฐ ์ํด ๋ฐฉ๋ฌธ ID๋ก ์์ฒญ์ด ์์ ๋ ์ด๋ฌํ ์์ฒญ์ 1~000๊ฐ์ ๋ฐฉ๋ฌธ ID ๋ธ๋ก์ผ๋ก ๊ทธ๋ฃนํํ๊ณ 2~000๋ช ์ ๋ชจ๋ ๊ฑฐ๋๋ฅผ ์ถ์ถํ์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ ๋ชจ๋ ๊ฒ์ด ์๋ํ์ต๋๋ค.
ClickHouse ๋ด๋ถ๋ฅผ ๋ณด๋ฉด ์ด ๋ชจ๋ ๊ฒ์ ์ ๊ณตํ๋ ๊ธฐ๋ณธ ํ ์ด๋ธ์ด 3๊ฐ๋ฟ์ ๋๋ค.
๋ก๊ทธ๊ฐ ์ ๋ก๋๋๋ ์ฒซ ๋ฒ์งธ ํ ์ด๋ธ์ด๋ฉฐ ๊ฑฐ์ ์ฒ๋ฆฌ ์์ด ๋ก๊ทธ๊ฐ ์ ๋ก๋๋ฉ๋๋ค.
๋ ๋ฒ์งธ ํ ์ด๋ธ. ๊ตฌ์ฒดํ๋ ๋ณด๊ธฐ๋ฅผ ํตํด ์ด๋ฌํ ๋ก๊ทธ์์ ์์ง ์์ฑ์ด ๋ถ์ฌ๋์ง ์์ ์ด๋ฒคํธ, ์ฆ ๊ด๋ จ๋์ง ์์ ์ด๋ฒคํธ๊ฐ ์ ๊ฑฐ๋์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ตฌ์ฒดํ๋ ๋ทฐ๋ฅผ ํตํด ์ด๋ฌํ ๋ก๊ทธ์์ ํธ๋์ญ์ ์ ๊ฐ์ ธ์ ์ค๋ ์ท์ ์์ฑํ์ต๋๋ค. ์ฆ, ํน๋ณํ ๊ตฌ์ฒดํ๋ ๋ทฐ๊ฐ ์ค๋ ์ท, ์ฆ ํธ๋์ญ์ ์ ๋ง์ง๋ง ๋์ ์ํ๋ฅผ ๊ตฌ์ถํ์ต๋๋ค.
๋ค์์ SQL๋ก ์์ฑ๋ ํ ์คํธ์ ๋๋ค. ๋ช ๊ฐ์ง ์ค์ํ ์ฌํญ์ ๋ํด ์ธ๊ธํ๊ณ ์ถ์ต๋๋ค.
์ฒซ ๋ฒ์งธ๋ก ์ค์ํ ๊ฒ์ ClickHouse์ json์์ ์ด๊ณผ ํ๋๋ฅผ ์ถ์ถํ๋ ๊ธฐ๋ฅ์ ๋๋ค. ์ฆ, ClickHouse์๋ json ์์ ์ ์ํ ๋ช ๊ฐ์ง ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. ๊ทธ๋ค์ ๋งค์ฐ ์์์ ์ ๋๋ค.
visitParamExtractInt๋ฅผ ์ฌ์ฉํ๋ฉด json์์ ์์ฑ์ ์ถ์ถํ ์ ์์ต๋๋ค. ์ฆ, ์ฒซ ๋ฒ์งธ ํํธ๊ฐ ์๋ํฉ๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ํธ๋์ญ์ ID ๋๋ ๋ฐฉ๋ฌธ ID๋ฅผ ๊บผ๋ผ ์ ์์ต๋๋ค. ์ด ์๊ฐ.
๋์งธ, ์ฌ๊ธฐ์๋ ๊น๋ค๋ก์ด ๊ตฌ์ฒดํ๋ ํ๋๊ฐ ์ฌ์ฉ๋ฉ๋๋ค. ๋ฌด์จ ๋ป์ด์์? ์ฆ, ํ ์ด๋ธ์ ์ฝ์ ํ ์ ์์ต๋๋ค. ์ฆ, ์ฝ์ ๋์ง ์๊ณ ์ฝ์ ์ ๊ณ์ฐ๋์ด ์ ์ฅ๋ฉ๋๋ค. ๋ถ์ฌ๋ฃ์ ๋ ClickHouse๊ฐ ์๋์ผ๋ก ์์ ์ ์ํํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋์ค์ ํ์ํ ๊ฒ์ ์ด๋ฏธ json์์ ๋นผ๋์ต๋๋ค.
์ด ๊ฒฝ์ฐ ๊ตฌ์ฒดํ๋ ๋ทฐ๋ ์์ ํ์ ๋ํ ๊ฒ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ค์ง์ ์ผ๋ก ์์ ๋ก๊ทธ๊ฐ ์๋ ์ฒซ ๋ฒ์งธ ํ ์ด๋ธ์ด ์ฌ์ฉ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ ๋ฌด์์ํฉ๋๊น? ์ฒซ์งธ, ์ ๋ ฌ์ ๋ณ๊ฒฝํฉ๋๋ค. ์ฆ, ํน์ ์ธ์ ๋ํ ํธ๋์ญ์ ์ ์ ์ํ๊ฒ ๊ฐ์ ธ์์ผ ํ๊ธฐ ๋๋ฌธ์ ์ด์ ์ ๋ ฌ์ ๋ฐฉ๋ฌธ ID๋ณ๋ก ์งํ๋ฉ๋๋ค.
๋ ๋ฒ์งธ๋ก ์ค์ํ ๊ฒ์ index_granularity์ ๋๋ค. MergeTree๋ฅผ ๋ณธ ์ ์ด ์๋ค๋ฉด ์ผ๋ฐ์ ์ผ๋ก index_granularity๋ ๊ธฐ๋ณธ์ ์ผ๋ก 8์ ๋๋ค. ์ด๊ฒ ๋ญ์ผ? ์ธ๋ฑ์ค ํฌ์์ฑ ๋งค๊ฐ๋ณ์์ ๋๋ค. ClickHouse์์ ์์ธ์ ํฌ์ํ๋ฉฐ ๋ชจ๋ ํญ๋ชฉ์ ์์ธํํ์ง ์์ต๋๋ค. 192๋ง๋ค ์ด ์์ ์ ์ํํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ง์ ๋ฐ์ดํฐ๋ฅผ ๊ณ์ฐํด์ผ ํ๋ ๊ฒฝ์ฐ์๋ ์ข์ง๋ง ์ ์ ๊ฒฝ์ฐ์๋ ์ค๋ฒํค๋๊ฐ ํฌ๊ธฐ ๋๋ฌธ์ ์ข์ง ์์ต๋๋ค. ์ธ๋ฑ์ค ์ธ๋ถ์ฑ์ ์ค์ด๋ฉด ์ค๋ฒํค๋๋ ์ค์ด๋ญ๋๋ค. ๋ฉ๋ชจ๋ฆฌ๊ฐ ๋ถ์กฑํ ์ ์์ผ๋ฏ๋ก ํ๋๋ก ์ค์ผ ์ ์์ต๋๋ค. ์ธ๋ฑ์ค๋ ํญ์ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ๋ฉ๋๋ค.
Snapshot์ ๋ค๋ฅธ ํฅ๋ฏธ๋ก์ด ClickHouse ๊ธฐ๋ฅ๋ ์ฌ์ฉํฉ๋๋ค.
๋จผ์ AggregatingMergeTree์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ AggregatingMergeTree๋ argMax๋ฅผ ์ ์ฅํฉ๋๋ค. ์ฆ, ์ด๊ฒ์ ๋ง์ง๋ง ํ์์คํฌํ์ ํด๋นํ๋ ํธ๋์ญ์ ์ ์ํ์ ๋๋ค. ๊ฑฐ๋๋ ์ฃผ์ด์ง ๋ฐฉ๋ฌธ์์ ๋ํด ํญ์ ์์ฑ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด ๊ฑฐ๋์ ๊ฐ์ฅ ๋ง์ง๋ง ์ํ์์ ์ฐ๋ฆฌ๋ ์ด๋ฒคํธ๋ฅผ ์ถ๊ฐํ๊ณ ์๋ก์ด ์ํ๋ฅผ ๊ฐ๊ฒ ๋์์ต๋๋ค. ๋ค์ ClickHouse๋ฅผ ์ณค์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด ๊ตฌ์ฒดํ๋ ๋ทฐ์์ argMax๋ฅผ ํตํด ํญ์ ํ์ฌ ์ํ๋ฅผ ์ป์ ์ ์์ต๋๋ค.
- ๋ฐ์ธ๋ฉ์ ๋ฐํ์์์ "๋ถ๋ฆฌ"๋ฉ๋๋ค.
- ํ ๋ฌ์ ์ต๋ 3์ต ๊ฑด์ ๊ฑฐ๋๊ฐ ์ ์ฅ๋๊ณ ์ฒ๋ฆฌ๋ฉ๋๋ค. ์ด๊ฒ์ ์นด์ฐ๋๋ผ, ์ฆ ์ผ๋ฐ์ ์ธ ํธ๋์ญ์ ์์คํ ์์๋ณด๋ค ํจ์ฌ ๋ ํฐ ๊ท๋ชจ์ ๋๋ค.
- 2x5 ClickHouse ์๋ฒ ํด๋ฌ์คํฐ. 5๊ฐ์ ์๋ฒ์ ๊ฐ ์๋ฒ์๋ ๋ณต์ ๋ณธ์ด ์์ต๋๋ค. ์ด๊ฒ์ ํด๋ฆญ ๊ธฐ๋ฐ ๊ธฐ์ฌ๋ฅผ ์ํํ๊ธฐ ์ํด Cassandra์์๋ณด๋ค ํจ์ฌ ์ ์ผ๋ฉฐ ์ฌ๊ธฐ์์๋ ๋ ธ์ถ ๊ธฐ๋ฐ์ด ์์ต๋๋ค. ์ฆ, ์๋ฒ ์๋ฅผ 30๋ฐฐ๋ก ๋๋ฆฌ๋ ๋์ ์๋ฒ ์๋ฅผ ์ค์ด๋ ๋ฐ ์ฑ๊ณตํ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ง์ง๋ง ์ฌ๋ก๋ ์ฃผ๊ฐ ๋ณ๋์ ์๊ด๊ด๊ณ๋ฅผ ๋ถ์ํ ๊ธ์ตํ์ฌ Y์ฌ๋ค.
๊ทธ๋ฆฌ๊ณ ๊ณผ์ ๋ ๋ค์๊ณผ ๊ฐ์์ต๋๋ค.
- ์ฝ 5์ฃผ๊ฐ ์์ต๋๋ค.
- 100๋ฐ๋ฆฌ์ด๋ง๋ค ๋ฐ์ดํ๊ฐ ์๋ ค์ ธ ์์ต๋๋ค.
- 10๋ ๋์ ์ถ์ ๋ ๋ฐ์ดํฐ์ ๋๋ค. ๋ถ๋ช ํ ์ผ๋ถ ํ์ฌ๋ ๋ ๋ง๊ณ ์ผ๋ถ๋ ์ ์ต๋๋ค.
- ์ด ์ฝ 100์ต ๊ฐ์ ํ์ด ์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ณํ์ ์๊ด๊ด๊ณ๋ฅผ ๊ณ์ฐํ ํ์๊ฐ ์์๋ค.
๋ค์์ ๋ ๊ฐ์ ์ฃผ์๊ณผ ์์ธ์ ๋๋ค. ํ๋๊ฐ ์ฌ๋ผ๊ฐ๊ณ ๋ค๋ฅธ ํ๋๊ฐ ์ฌ๋ผ๊ฐ๋ฉด ์ด๊ฒ์ ์์ ์๊ด ๊ด๊ณ์ ๋๋ค. ์ฆ, ํ๋๋ ์ฌ๋ผ๊ฐ๊ณ ๋ค๋ฅธ ํ๋๋ ์ฌ๋ผ๊ฐ๋๋ค. ๊ทธ๋ํ ๋์์์ ๊ฐ์ด ํ๋๊ฐ ์ฌ๋ผ๊ฐ๊ณ ๋ค๋ฅธ ํ๋๊ฐ ๋ด๋ ค๊ฐ๋ฉด ์ด๋ ์์ ์๊ด ๊ด๊ณ์ ๋๋ค. ์ฆ, ํ๋๊ฐ ์์นํ๋ฉด ๋ค๋ฅธ ํ๋๋ ๋จ์ด์ง๋๋ค.
์ด๋ฌํ ์ํธ ๋ณํ๋ฅผ ๋ถ์ํ๋ฉด ๊ธ์ต ์์ฅ์์ ์์ธกํ ์ ์์ต๋๋ค.
๊ทธ๋ฌ๋ ์์ ์ ์ด๋ ต์ต๋๋ค. ์ด๋ฅผ ์ํด ๋ฌด์์ ํ๊ณ ์์ต๋๊น? ์๊ฐ, ์ฌ๊ณ ๋ฐ ๊ฐ๊ฒฉ์ด ํฌํจ๋ 100์ต ๊ฐ์ ๋ ์ฝ๋๊ฐ ์์ต๋๋ค. ๊ฐ๊ฒฉ ์๊ณ ๋ฆฌ์ฆ์์ runningDifference์ 100์ต ๋ฐฐ๋ฅผ ๋จผ์ ๊ณ์ฐํด์ผ ํฉ๋๋ค. RunningDifference๋ ๋ ๋ฌธ์์ด ๊ฐ์ ์ฐจ์ด๋ฅผ ์์ฐจ์ ์ผ๋ก ๊ณ์ฐํ๋ ClickHouse์ ํจ์์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ ๊ทธ ํ์ ์๊ด๊ด๊ณ๋ฅผ ๊ณ์ฐํด์ผ ํ๊ณ , ๊ฐ ์์ ๋ํด ์๊ด๊ด๊ณ๋ฅผ ๊ณ์ฐํด์ผ ํฉ๋๋ค. 5์ฃผ์ ๊ฒฝ์ฐ ์์ 000๋ง์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ ๋ง์ ๊ฒ, ์ฆ ๊ทธ๋ฌํ ์๊ด ํจ์๋ฅผ ๊ณ์ฐํ๋ ๋ฐ ํ์ํ 12,5 ๋ฐฐ์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋๊ตฐ๊ฐ ์์๋ค๋ฉด อx์ อy๋ ์ฅ๊ตฐ์ ๋๋ค. ์ํ๋ง ๊ธฐ๋. ์ฆ, ๊ทผ๊ณผ ํฉ์ ๊ณ์ฐํ ๋ฟ๋ง ์๋๋ผ ์ด ํฉ ์์ ๋ ํ๋์ ํฉ์ด ๋ ํ์ํฉ๋๋ค. ๋ง์ ๊ณ์ฐ์ 12,5๋ง ๋ฒ ์ํํด์ผ ํ๋ฉฐ ์ฌ์ง์ด ์๊ฐ๋ณ๋ก ๊ทธ๋ฃนํํด์ผ ํฉ๋๋ค. ์ฐ๋ฆฌ๋ ๋ํ ๋ง์ ์๊ฐ์ ๊ฐ์ง๊ณ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ 60์ด ์์ ํด์ผ ํฉ๋๋ค. ๊ทธ๊ฒ์ ๋๋ด.
ClickHouse๊ฐ ์ค๊ธฐ ์ ์ ์ด ๋ชจ๋ ๊ฒ์ด ๋งค์ฐ ๋๋ฆฌ๊ฒ ์๋ํ๊ธฐ ๋๋ฌธ์ ์ ์ด๋ ์ด๋ป๊ฒ๋ ์๊ฐ์ด ํ์ํ์ต๋๋ค.
๊ทธ๋ค์ Greenplum์ Spark, Hadoop์์ ๊ณ์ฐํ๋ ค๊ณ ํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด ๋ชจ๋ ๊ฒ์ด ๋งค์ฐ ๋๋ฆฌ๊ฑฐ๋ ๋น์์ต๋๋ค. ์ฆ, ์ด๋ป๊ฒ ๋ ๊ณ์ฐํ ์ ์์์ง๋ง ๋น์ฉ์ด ๋ง์ด ๋ค์์ต๋๋ค.
๊ทธ๋ฐ ๋ค์ ClickHouse๊ฐ ๋ฑ์ฅํ๊ณ ์ํฉ์ด ํจ์ฌ ์ข์์ก์ต๋๋ค.
์๊ด ๊ด๊ณ๋ฅผ ์ง์ญํํ ์ ์๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ ์ง์ญ์ฑ์ ๋ฌธ์ ๊ฐ ์์์ ์๊ธฐ์์ผ ๋๋ฆฝ๋๋ค. ์ฐ๋ฆฌ๋ ๋ฐ์ดํฐ์ ์ผ๋ถ๋ฅผ ํ ์๋ฒ์, ์ผ๋ถ๋ฅผ ๋ค๋ฅธ ์๋ฒ์ ๋๊ณ ๊ณ์ฐํ ์ ์์ต๋๋ค. ๋ชจ๋ ๋ฐ์ดํฐ๊ฐ ์ด๋์๋ ์์ด์ผ ํฉ๋๋ค.
๊ทธ๋ค์ ๋ฌด์์ ํ์ต๋๊น? ์ฒ์์๋ ๋ฐ์ดํฐ๊ฐ ํ์งํ๋ฉ๋๋ค. ๊ฐ ์๋ฒ๋ ํน์ ์ฃผ์ ์ธํธ์ ๊ฐ๊ฒฉ์ ๋ํ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ๋ค์ ๊ฒน์น์ง ์์ต๋๋ค. ๋ฐ๋ผ์ logReturn์ ๋ณ๋ ฌ ๋ฐ ๋ ๋ฆฝ์ ์ผ๋ก ๊ณ์ฐํ ์ ์์ผ๋ฉฐ, ์ด ๋ชจ๋ ์์ ์ ์ง๊ธ๊น์ง ๋ณ๋ ฌ ๋ฐ ๋ถ์ฐ ๋ฐฉ์์ผ๋ก ๋ฐ์ํฉ๋๋ค.
๊ทธ๋ฐ ๋ค์ ํํ๋ ฅ์ ์์ง ์์ผ๋ฉด์ ์ด๋ฌํ ๋ฐ์ดํฐ๋ฅผ ์ค์ด๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ๋ฐฐ์ด ์ฌ์ฉ์ ์ค์ ๋๋ค. ์ฆ, ๊ฐ ๊ธฐ๊ฐ ๋์ ์ฃผ์ ๋ฐฐ์ด๊ณผ ๊ฐ๊ฒฉ ๋ฐฐ์ด์ ๋ง๋ญ๋๋ค. ๋ฐ๋ผ์ ํจ์ฌ ์ ์ ๋ฐ์ดํฐ ๊ณต๊ฐ์ ์ฐจ์งํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ค์ ์์ ํ๊ธฐ๊ฐ ์กฐ๊ธ ๋ ์ฝ์ต๋๋ค. ์ด๋ค์ ๊ฑฐ์ ๋ณ๋ ฌ ์์ ์ ๋๋ค. ์ฆ, ๋ถ๋ถ์ ์ผ๋ก ๋ณ๋ ฌ๋ก ์ฝ์ ๋ค์ ์๋ฒ์ ์๋๋ค.
์ดํ์๋ ๋ณต์ ๊ฐ ๊ฐ๋ฅํฉ๋๋ค. ๋ฌธ์ "r"์ ์ด ๋ฐ์ดํฐ๋ฅผ ๋ณต์ ํ์์ ์๋ฏธํฉ๋๋ค. ์ฆ, ์ธ ์๋ฒ ๋ชจ๋์ ๋์ผํ ๋ฐ์ดํฐ๊ฐ ์์ต๋๋ค. ์ด๋ค์ ์ด๋ ์ด์ ๋๋ค.
๊ทธ๋ฐ ๋ค์ ๊ณ์ฐํด์ผ ํ๋ 12,5๋ง ๊ฐ์ ์๊ด ๊ด๊ณ ์งํฉ์์ ํน์ ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํ์ฌ ํจํค์ง๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค. ์ฆ, 2์์ ์๊ด ๊ด๊ณ๊ฐ ์๋ 500๊ฐ์ ์์ ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด ์์ ์ ํน์ ClickHouse ์๋ฒ์์ ๊ณ์ฐ๋ฉ๋๋ค. ๊ทธ๋ ๋ฐ์ดํฐ๊ฐ ๋์ผํ๊ณ ์์ฐจ์ ์ผ๋ก ๊ณ์ฐํ ์ ์๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค.
๋ค์ ๋ด๋ ์ด๋ฐ ๋ชจ์ต์ ๋๋ค. ๋จผ์ ์๊ฐ, ์ฃผ์, ๊ฐ๊ฒฉ๊ณผ ๊ฐ์ ๊ตฌ์กฐ์ ๋ชจ๋ ๋ฐ์ดํฐ๊ฐ ์์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ logReturn, ์ฆ ๋์ผํ ๊ตฌ์กฐ์ ๋ฐ์ดํฐ๋ฅผ ๊ณ์ฐํ์ง๋ง ๊ฐ๊ฒฉ ๋์ ์ด๋ฏธ logReturn์ด ์์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ ๊ทธ๋ค์ ๋ค์ ์คํ๋์์ต๋๋ค. ์ฆ, ์ฐ๋ฆฌ๋ ์ฃผ์๊ณผ ๊ฐ๊ฒฉ์ ๋ํ ์๊ฐ๊ณผ groupArray๋ฅผ ์ป์์ต๋๋ค. ๋ณต์ ๋จ. ๊ทธ๋ฐ ๋ค์ ์ฐ๋ฆฌ๋ ๋ง์ ์์ ์ ์์ฑํ๊ณ ClickHouse์ ์ ๋ ฅํ์ฌ ์์ ์ ๊ณ์ฐํ๋๋ก ํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ ์๋ํฉ๋๋ค.
๊ฐ๋ ์ฆ๋ช ์์ ์์ ์ ํ์ ์์ ์ด์์ต๋๋ค. ์ฆ, ๋ ์ ์ ๋ฐ์ดํฐ๊ฐ ์ฌ์ฉ๋์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋จ ์ธ ๊ฐ์ ์๋ฒ.
์ฒ์ ๋ ๋จ๊ณ: Log_return ๊ณ์ฐ ๋ฐ ๋ฐฐ์ด ๋ํ์๋ ์ฝ XNUMX์๊ฐ์ด ๊ฑธ๋ ธ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์๊ด๊ณ์ฐ์ ์ฝ 50์๊ฐ์ด๋ค. ๊ทธ๋ฌ๋ ๊ทธ๋ค์ ๋ช ์ฃผ ๋์ ์ผ์ ํ๊ธฐ ๋๋ฌธ์ 50์๊ฐ์ผ๋ก๋ ์ถฉ๋ถํ์ง ์์ต๋๋ค. ํฐ ์ฑ๊ณต์ด์์ต๋๋ค. ์ธ์ด๋ณด๋ฉด ์ด๋น 70๋ฒ์ฉ ์ด ํด๋ฌ์คํฐ์์ ๋ชจ๋ ๊ฒ์ด ์ธ์ด์ก์ต๋๋ค.
๊ทธ๋ฌ๋ ๊ฐ์ฅ ์ค์ํ ๊ฒ์ ์ด ์์คํ ์ด ์ค์ ๋ก ๋ณ๋ชฉ ํ์์ด ์๋ค๋ ๊ฒ์ ๋๋ค. ์ฆ, ๊ฑฐ์ ์ ํ์ผ๋ก ํ์ฅ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ค์ ๊ทธ๊ฒ์ ํ์ธํ์ต๋๋ค. ์ฑ๊ณต์ ์ผ๋ก ํ์ฅํ์ต๋๋ค.
- ์ฌ๋ฐ๋ฅธ ๊ณํ์ ์ ํฌ์ ์ ๋ฐ์ ๋๋ค. ์ฌ๋ฐ๋ฅธ ๊ณํ์ ํ์ํ ๋ชจ๋ ClickHouse ๊ธฐ์ ์ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค.
- Summing/AggregatingMergeTrees๋ ์ํ ์ค๋ ์ท์ ํน์ํ ๊ฒฝ์ฐ๋ก ์ง๊ณํ๊ฑฐ๋ ๊ณ ๋ คํ ์ ์๋ ๊ธฐ์ ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ ๋ง์ ๊ฒ์ ํฌ๊ฒ ๋จ์ํํฉ๋๋ค.
- ๊ตฌ์ฒดํ๋ ๋ทฐ๋ฅผ ์ฌ์ฉํ๋ฉด ํ๋์ ์ธ๋ฑ์ค ์ ํ์ ๋ฌด์ํ ์ ์์ต๋๋ค. ์์ฃผ ๋ช ํํ๊ฒ ๋งํ์ง๋ ์์์ง๋ง ๋ก๊ทธ๋ฅผ ๋ก๋ํ์ ๋ ์์ ๋ก๊ทธ๋ ํ๋์ ์ธ๋ฑ์ค๊ฐ ์๋ ํ ์ด๋ธ์ ์์๊ณ ์์ฑ ๋ก๊ทธ๋ ํ ์ด๋ธ์ ์์์ต๋๋ค. ์ฆ, ๋์ผํ ๋ฐ์ดํฐ, ํํฐ๋ง๋ง ๋์์ง๋ง ์ธ๋ฑ์ค๋ ์์ ํ ๊ธฐํ. ๋ฐ์ดํฐ๋ ๊ฐ์ง๋ง ์ ๋ ฌ์ด ๋ค๋ฅธ ๊ฒ ๊ฐ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ตฌ์ฒดํ๋ ๋ณด๊ธฐ๋ฅผ ์ฌ์ฉํ๋ฉด ํ์ํ ๊ฒฝ์ฐ ์ด๋ฌํ ClickHouse ์ ํ์ ์ฐํํ ์ ์์ต๋๋ค.
- ํฌ์ธํธ ์ฟผ๋ฆฌ์ ๋ํ ์ธ๋ฑ์ค ์ธ๋ถ์ฑ์ ์ค์ ๋๋ค.
- ๊ทธ๋ฆฌ๊ณ ๋ฐ์ดํฐ๋ฅผ ํ๋ช ํ๊ฒ ๋ถ๋ฐฐํ๊ณ ๊ฐ๋ฅํ ํ ์๋ฒ ๋ด์์ ๋ฐ์ดํฐ๋ฅผ ํ์งํํ์ญ์์ค. ๊ทธ๋ฆฌ๊ณ ๊ฐ๋ฅํ ํ ์์ฒญ์ด ํ์งํ๋ฅผ ์ฌ์ฉํ๋์ง ํ์ธํ์ญ์์ค.
์ด ์งง์ ์ฐ์ค์ ์์ฝํ๋ฉด ClickHouse๋ ์ด์ ์์ฉ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์คํ ์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค, ์ฆ ํนํ ๋ถ์์ ์ํ ์์ญ์ ํ๊ณ ํ ์ ์ ํ๋ค๊ณ ๋งํ ์ ์์ต๋๋ค. ๊ทธ๋ ์ด ํ๊ฒฝ์ ์๋ฒฝํ๊ฒ ๋ค์ด๋ง๋๋ค. ๊ฒ๋ค๊ฐ ClickHouse๊ฐ ์์ผ๋ฉด InfiniDB๊ฐ ํ์ํ์ง ์๊ธฐ ๋๋ฌธ์ ์ฒ์ฒํ ๋ค๋ฅธ ์ฌ๋๋ค์ ๋ชฐ์๋ด๊ธฐ ์์ํฉ๋๋ค. Vertika๊ฐ ์ ์์ ์ธ SQL ์ง์์ ์ ๊ณตํ๋ค๋ฉด ๊ณง ํ์ํ์ง ์์ ์ ์์ต๋๋ค. ์ฆ๊ธฐ๋ค!
-์ ๊ณ ํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค! ๋งค์ฐ ํฅ๋ฏธ๋ก์ด! Apache Phoenix์์ ๋น๊ต๊ฐ ์์์ต๋๊น?
์๋์, ๋น๊ตํ๋ ์ฌ๋์ ๋ณธ ์ ์ด ์์ต๋๋ค. ์ฐ๋ฆฌ์ Yandex๋ ๋ค๋ฅธ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๋ชจ๋ ClickHouse ๋น๊ต๋ฅผ ์ถ์ ํ๋ ค๊ณ ํฉ๋๋ค. ๊ฐ์๊ธฐ ๋ฌด์ธ๊ฐ๊ฐ ClickHouse๋ณด๋ค ๋น ๋ฅด๋ฉด Lesha Milovidov๋ ๋ฐค์ ์ ์ ์ ์ ์์ผ๋ฉฐ ๋น ๋ฅด๊ฒ ์๋๋ฅผ ๋์ด๊ธฐ ์์ํฉ๋๋ค. ๋๋ ๊ทธ๋ฐ ๋น๊ต๋ฅผ ๋ค์ด๋ณธ ์ ์ด ์๋ค.
-
(Aleksey Milovidov) Apache Phoenix๋ Hbase๋ก ๊ตฌ๋๋๋ SQL ์์ง์ ๋๋ค. Hbase๋ ์ฃผ๋ก ํค-๊ฐ ์์ ์๋๋ฆฌ์ค์ฉ์ ๋๋ค. ๊ฐ ๋ผ์ธ์๋ ์์์ ์ด๋ฆ์ ๊ฐ์ง ์์ ๊ฐ์์ ์ด์ด ์์ ์ ์์ต๋๋ค. ์ด๊ฒ์ Hbase, Cassandra์ ๊ฐ์ ์์คํ ์ ๋ํด ๋งํ ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ ์์ ์ผ๋ก ์๋ํ์ง ์๋ ๊ฒ์ ์ ํํ ๋ฌด๊ฑฐ์ด ๋ถ์ ์ฟผ๋ฆฌ์ ๋๋ค. ๋๋ ClickHouse์ ๋ํ ๊ฒฝํ์ด ์๋ค๋ฉด ์ ๋๋ก ์๋ํ๋ค๊ณ ์๊ฐํ ์๋ ์์ต๋๋ค.
-
๊ฐ์ฌ
-
์ข์ ์คํ์์ ๋ถ์ ํ์ ์์คํ ์ด ์๊ธฐ ๋๋ฌธ์ ์ด๋ฏธ ์ด ์ฃผ์ ์ ์๋นํ ๊ด์ฌ์ด ์์ต๋๋ค. ๊ทธ๋ฌ๋ ClickHouse๋ฅผ ๋ณด๋ฉด ClickHouse๊ฐ ๋ณ๊ฒฝ ๊ฐ๋ฅํ ์ด๋ฒคํธ ๋ถ์์ ๋งค์ฐ ์ ํฉํ๋ค๋ ๋๋์ด ๋ญ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฌ๋ฌ ๊ฐ์ ํฐ ํ ์ด๋ธ๋ก ๋ง์ ๋น์ฆ๋์ค ๋ฐ์ดํฐ๋ฅผ ๋ถ์ํด์ผ ํ๋ ๊ฒฝ์ฐ ๋ด๊ฐ ์ดํดํ๋ ํ ClickHouse๊ฐ ๋์๊ฒ ์ ํฉํ์ง ์์ต๋๊น? ํนํ ๊ทธ๋ค์ด ๋ณํ๋ค๋ฉด. ์ด๊ฒ์ด ๋ง์ต๋๊น, ์๋๋ฉด ์ด๊ฒ์ ๋ฐ๋ฐํ ์ ์๋ ์๊ฐ ์์ต๋๊น?
-
๋ง์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ ๋๋ถ๋ถ์ ์ ๋ฌธํ๋ ๋ถ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํด๋น๋ฉ๋๋ค. ๋ณ๊ฒฝ ๊ฐ๋ฅํ ํ๋ ์ด์์ ํฐ ํ ์ด๋ธ๊ณผ ์ฒ์ฒํ ๋ณ๊ฒฝ๋๋ ๋ง์ ์์ ํ ์ด๋ธ์ด ์๋ค๋ ์ฌ์ค์ ๋ง๊ฒ ์กฐ์ ๋์์ต๋๋ค. ์ฆ, ClickHouse๋ ๋ชจ๋ ๊ฒ์ ์ ๋ ฅํ๊ณ ๋งค์ฐ ๋ณต์กํ ์ฟผ๋ฆฌ๋ฅผ ์์ฑํ ์ ์๋ Oracle๊ณผ ๋ค๋ฆ ๋๋ค. ClickHouse๋ฅผ ํจ๊ณผ์ ์ผ๋ก ์ฌ์ฉํ๋ ค๋ฉด ClickHouse์์ ์ ์๋ํ๋ ๋ฐฉ์์ผ๋ก ์ฒด๊ณ๋ฅผ ๊ตฌ์ถํด์ผ ํฉ๋๋ค. ์ฆ, ๊ณผ๋ํ ์ ๊ทํ๋ฅผ ํผํ๊ณ , ์ฌ์ ์ ์ฌ์ฉํ๊ณ , ๊ธด ๋งํฌ๋ฅผ ์ ๊ฒ ๋ง๋์ญ์์ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ฌํ ๋ฐฉ์์ผ๋ก ์ฒด๊ณ๋ฅผ ๊ตฌ์ถํ๋ฉด ClickHouse์์ ์ ์ฌํ ๋น์ฆ๋์ค ์์ ์ ๊ธฐ์กด ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ณด๋ค ํจ์ฌ ๋ ํจ์จ์ ์ผ๋ก ํด๊ฒฐํ ์ ์์ต๋๋ค.
-
์ ๊ณ ํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค! ์ต์ ๊ธ์ต ์ฌ๋ก์ ๋ํด ์ง๋ฌธ์ด ์์ต๋๋ค. ๊ทธ๋ค์ ๋ถ์์ ๊ฐ์ง๊ณ ์์์ต๋๋ค. ์ฌ๋ผ๊ฐ๊ณ ๋ด๋ ค๊ฐ๋ ๋ฐฉ์์ ๋น๊ตํ๋ ๊ฒ์ด ํ์ํ์ต๋๋ค. ์ด ๋ถ์์ ์ํด ํน๋ณํ ์์คํ ์ ๊ตฌ์ถํ๋ค๊ณ ์๊ณ ์์ต๋๊น? ์๋ฅผ ๋ค์ด ๋ด์ผ ์ด ๋ฐ์ดํฐ์ ๋ํ ๋ค๋ฅธ ๋ณด๊ณ ์๊ฐ ํ์ํ ๊ฒฝ์ฐ ์คํค๋ง๋ฅผ ๋ค์ ๋น๋ํ๊ณ ๋ฐ์ดํฐ๋ฅผ ์ ๋ก๋ํด์ผ ํฉ๋๊น? ์ฆ, ์์ฒญ์ ๋ฐ๊ธฐ ์ํด ์ผ์ข ์ ์ฌ์ ์ฒ๋ฆฌ๋ฅผ ์ํํ๋ ๊ฒ์ ๋๊น?
๋ฌผ๋ก ์ด๊ฒ์ ๋งค์ฐ ํน์ ํ ์์ ์ ClickHouse๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค. ์ ํต์ ์ผ๋ก Hadoop ๋ด์์ ํด๊ฒฐํ ์ ์์ต๋๋ค. Hadoop์ ๊ฒฝ์ฐ ์ด๋ ์ด์์ ์ธ ์์ ์ ๋๋ค. ๊ทธ๋ฌ๋ Hadoop์์๋ ๋งค์ฐ ๋๋ฆฝ๋๋ค. ์ ๋ชฉํ๋ ์ผ๋ฐ์ ์ผ๋ก ์์ ํ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ํด๊ฒฐ๋๋ ์์ ์ ClickHouse๊ฐ ํด๊ฒฐํ ์ ์์ง๋ง ๋์์ ํจ์ฌ ๋ ํจ์จ์ ์ผ๋ก ์ํํ ์ ์์์ ์ ์ฆํ๋ ๊ฒ์ ๋๋ค. ํน์ ์์ ์ ๋ง๊ฒ ์กฐ์ ๋ฉ๋๋ค. ๋น์ทํ ๋ฌธ์ ๊ฐ ์์ผ๋ฉด ๋น์ทํ ๋ฐฉ์์ผ๋ก ํด๊ฒฐํ ์ ์์์ด ๋ถ๋ช ํฉ๋๋ค.
์์์ต๋๋ค. 50์๊ฐ์ด ์ฒ๋ฆฌ๋์๋ค๊ณ ํ์ จ์ต๋๋ค. ์ฒ์๋ถํฐ ์ธ์ ๋ฐ์ดํฐ๋ฅผ ๋ก๋ํ๊ฑฐ๋ ๊ฒฐ๊ณผ๋ฅผ ์ป์์ต๋๊น?
์, ์.
๋ค, ๋๋จํ ๊ฐ์ฌํฉ๋๋ค.
์ด๊ฒ์ 3 ์๋ฒ ํด๋ฌ์คํฐ์ ์์ต๋๋ค.
์ธ์ฌ๋ง! ์ ๊ณ ํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค! ๋ชจ๋ ๊ฒ์ด ๋งค์ฐ ํฅ๋ฏธ ๋กญ์ต๋๋ค. ๊ธฐ๋ฅ์ ๋ํด ์กฐ๊ธ ๋ฌป์ง ์๊ณ ์์ ์ฑ ์ธก๋ฉด์์ ClickHouse ์ฌ์ฉ์ ๋ํด ๋ฌป๊ฒ ์ต๋๋ค. ์ฆ, ๊ฐ์ง๊ณ ์์์ต๋๊น? ๋ณต์ํด์ผ ํ์ต๋๊น? ์ด ๊ฒฝ์ฐ ClickHouse๋ ์ด๋ป๊ฒ ์๋ํฉ๋๊น? ๊ทธ๋ฆฌ๊ณ ๋น์ ๋ ๋ณต์ ํ์ ๊ฐ์ง๊ณ ์์์ต๋๊น? ์๋ฅผ ๋ค์ด ClickHouse๊ฐ ์ฌ์ ํ ํ๊ณ๋ฅผ ๋ฒ์ด๋ ๋จ์ด์ง๋ ๊ฒฝ์ฐ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ต๋๋ค.
๋ฌผ๋ก ์ด์์ ์ธ ์์คํ ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ClickHouse์๋ ์์ฒด ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ๊ทธ๋ฌ๋ Yandex.Metrica๊ฐ ์ค๋ซ๋์ ์๋ํ์ง ์๋๋ค๋ ์์์ ๋ค์์ต๋๊น? ์๋ง ์๋ ๊ฒ๋๋ค. ClickHouse์์ 2012-2013๋ ๋ถํฐ ์์ ์ ์ผ๋ก ์๋ํ๊ณ ์์ต๋๋ค. ๋ด ๊ฒฝํ์ ๋ํด์๋ ๋๊ฐ์ด ๋งํ ์ ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ์์ ํ ์คํจ๋ฅผ ํ ์ ์ด ์์ต๋๋ค. ์ผ๋ถ ๋ถ๋ถ์ ์ธ ์ผ์ด ๋ฐ์ํ ์ ์์ง๋ง ๋น์ฆ๋์ค์ ์ฌ๊ฐํ ์ํฅ์ ๋ฏธ์น ๋งํผ ์ค์ํ ๊ฒ์ ์๋๋๋ค. ๊ทธ๋ฐ ์ผ์ ์ผ์ด๋์ง ์์์ต๋๋ค. ClickHouse๋ ๋งค์ฐ ์์ ์ ์ด๋ฉฐ ๋ฌด์์๋ก ์ถฉ๋ํ์ง ์์ต๋๋ค. ๋น์ ์ ๊ทธ๊ฒ์ ๋ํด ๊ฑฑ์ ํ ํ์๊ฐ ์์ต๋๋ค. ๋ ๊ฒ์ ๊ฒ์ด ์๋๋๋ค. ์ด๊ฒ์ ๋ง์ ํ์ฌ์์ ์ ์ฆ๋์์ต๋๋ค.
์๋ ํ์ธ์! ๋น์ฅ ๋ฐ์ดํฐ ์คํค๋ง๋ฅผ ๊ณ ๋ฏผํด์ผ ํ๋ค๊ณ ํ์ จ์ต๋๋ค. ๊ทธ๋ฐ ์ผ์ด ์ผ์ด๋ฌ๋ค๋ฉด? ๋ด ๋ฐ์ดํฐ๊ฐ ์์์ง๊ณ ์์์ง๊ณ ์์ต๋๋ค. XNUMX๊ฐ์์ด ์ง๋ฌ๊ณ ์ด๋ ๊ฒ ์ฌ๋ ๊ฒ์ด ๋ถ๊ฐ๋ฅํ๋ค๋ ๊ฒ์ ์ดํดํ๊ณ ๋ฐ์ดํฐ๋ฅผ ๋ค์ ์ ๋ก๋ํ๊ณ ๋ญ๊ฐ๋ฅผ ํด์ผ ํฉ๋๋ค.
์ด๊ฒ์ ๋ฌผ๋ก ์์คํ ์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค. ๊ฑฐ์ ๋ฉ์ถ์ง ์๊ณ ์ด๋ฅผ ์ํํ๋ ๋ฐฉ๋ฒ์๋ ์ฌ๋ฌ ๊ฐ์ง๊ฐ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ๊ณ ์ ํ๊ฒ ๋งคํ๋ ์ ์๋ ๊ฒฝ์ฐ ๋ค๋ฅธ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ๋ง๋๋ ๊ตฌ์ฒดํ๋ ๋ทฐ๋ฅผ ์์ฑํ ์ ์์ต๋๋ค. ์ฆ, ClickHouse๋ฅผ ์ฌ์ฉํ์ฌ ๋งคํ์ ํ์ฉํ๋ ๊ฒฝ์ฐ(์: ์ผ๋ถ ํญ๋ชฉ ์ถ์ถ, ๊ธฐ๋ณธ ํค ๋ณ๊ฒฝ, ๋ถํ ๋ณ๊ฒฝ) ๊ตฌ์ฒดํ๋ ๋ณด๊ธฐ๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค. ๊ธฐ์กด ๋ฐ์ดํฐ๋ฅผ ๋ฎ์ด์ฐ๋ฉด ์ ๋ฐ์ดํฐ๊ฐ ์๋์ผ๋ก ์์ฑ๋ฉ๋๋ค. ๊ทธ๋ฐ ๋ค์ Materialized View๋ฅผ ์ฌ์ฉํ๋๋ก ์ ํํ ๋ค์ ๋ ์ฝ๋๋ฅผ ์ ํํ๊ณ ์ด์ ํ ์ด๋ธ์ ์ข ๋ฃํฉ๋๋ค. ์ด๊ฒ์ ์ผ๋ฐ์ ์ผ๋ก ๋ ผ์คํฑ ๋ฐฉ๋ฒ์ ๋๋ค.
๊ฐ์ฌํฉ๋๋ค.
์ถ์ฒ : habr.com