Skyeng์์๋ ๋ณ๋ ฌ ํ์ฅ์ ํฌํจํ์ฌ Amazon Redshift๋ฅผ ์ฌ์ฉํ๋ฏ๋ก dotgo.com์ ์ฐฝ๋ฆฝ์์ธ Stefan Gromoll์ด intermix.io์ ๋ํด ์ด ์ด ๊ธฐ์ฌ๊ฐ ํฅ๋ฏธ๋ก์ ์ต๋๋ค. ๋ฒ์ญ ํ ๋ฐ์ดํฐ ์์ง๋์ด Daniyar Belkhodzhaev์ ์ฝ๊ฐ์ ๊ฒฝํ์ ๋ค๋ ค๋๋ฆฝ๋๋ค.
Amazon Redshift ๋ณ๋ ฌ ํ์ฅ์ Redshift ํด๋ฌ์คํฐ์ ์ต๋ ์์ฒญ ๋ณผ๋ฅจ์ ์ฒ๋ฆฌํ ์ ์๋ ์ถ๊ฐ ์ฉ๋์ ์ ๊ณตํฉ๋๋ค. ์ด๋ ๋ฐฑ๊ทธ๋ผ์ด๋์์ ์์ฒญ์ ์๋ก์ด "๋ณ๋ ฌ" ํด๋ฌ์คํฐ๋ก ์ด๋ํ๋ ๋ฐฉ์์ผ๋ก ์๋ํฉ๋๋ค. ์์ฒญ์ WLM ๊ตฌ์ฑ ๋ฐ ๊ท์น์ ๋ฐ๋ผ ๋ผ์ฐํ
๋ฉ๋๋ค.
๋ณ๋ ฌ ํ์ฅ ๊ฐ๊ฒฉ์ ํ๋ฆฌ ํฐ์ด๊ฐ ํฌํจ๋ ํฌ๋ ๋ง ๋ชจ๋ธ์ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค. ๋ฌด๋ฃ ํฌ๋ ๋ง ์ด์์์๋ ๋ณ๋ ฌ ํ์ฅ ํด๋ฌ์คํฐ๊ฐ ์์ฒญ์ ์ฒ๋ฆฌํ๋ ์๊ฐ์ ๊ธฐ์ค์ผ๋ก ๊ฒฐ์ ๊ฐ ์ด๋ฃจ์ด์ง๋๋ค.
์ ์๋ ๋ด๋ถ ํด๋ฌ์คํฐ ์ค ํ๋์์ ๋ณ๋ ฌ ํ์ฅ์ ํ ์คํธํ์ต๋๋ค. ์ด ๊ฒ์๋ฌผ์์ ๊ทธ๋ ํ ์คํธ ๊ฒฐ๊ณผ์ ๋ํด ์ด์ผ๊ธฐํ๊ณ ์์ํ๋ ๋ฐฉ๋ฒ์ ๋ํ ํ์ ์ ๊ณตํ ๊ฒ์ ๋๋ค.
ํด๋ฌ์คํฐ ์๊ตฌ ์ฌํญ
๋ณ๋ ฌ ์กฐ์ ์ ์ฌ์ฉํ๋ ค๋ฉด Amazon Redshift ํด๋ฌ์คํฐ๊ฐ ๋ค์ ์๊ตฌ ์ฌํญ์ ์ถฉ์กฑํด์ผ ํฉ๋๋ค.
- ํ๋ซํผ: EC2-VPC;
โ ๋
ธ๋ ์ ํ: dc2.8xlarge, ds2.8xlarge, dc2.large ๋๋ ds2.xlarge;
โ ๋
ธ๋ ์: 2~32(๋จ์ผ ๋
ธ๋ ํด๋ฌ์คํฐ๋ ์ง์๋์ง ์์)
ํ์ฉ๋๋ ์์ฒญ ์ ํ
๋ณ๋ ฌ ํ์ฅ์ ๋ชจ๋ ์ ํ์ ์ฟผ๋ฆฌ์ ์ ํฉํ์ง ์์ต๋๋ค. ์ฒซ ๋ฒ์งธ ๋ฒ์ ์์๋ ๋ค์ ์ธ ๊ฐ์ง ์กฐ๊ฑด์ ์ถฉ์กฑํ๋ ์ฝ๊ธฐ ์์ฒญ๋ง ์ฒ๋ฆฌํฉ๋๋ค.
โ SELECT ์ฟผ๋ฆฌ๋ ์ฝ๊ธฐ ์ ์ฉ์
๋๋ค(๋ ๋ง์ ์ ํ์ด ๊ณํ๋์ด ์์).
โ ์ฟผ๋ฆฌ๊ฐ INTERLEAVED ์ ๋ ฌ ์คํ์ผ์ ์ฌ์ฉํ๋ ํ
์ด๋ธ์ ์ฐธ์กฐํ์ง ์์ต๋๋ค.
- ์ฟผ๋ฆฌ๋ ์ธ๋ถ ํ
์ด๋ธ์ ์ฐธ์กฐํ๊ธฐ ์ํด Amazon Redshift Spectrum์ ์ฌ์ฉํ์ง ์์ต๋๋ค.
๋ณ๋ ฌ ํ์ฅ ํด๋ฌ์คํฐ๋ก ๋ผ์ฐํ
ํ๋ ค๋ฉด ์์ฒญ์ด ๋๊ธฐ์ด์ ์์ด์ผ ํฉ๋๋ค. ๋ํ ๋๊ธฐ์ด์ ์ ํฉํ ์ฟผ๋ฆฌ
๋๊ธฐ์ด ๋ฐ SQA์๋ ์ ์ ํ ๊ตฌ์ฑ์ด ํ์ํฉ๋๋ค
๋ณ๋ ฌ ํ์ฅ ๋น์ฉ
AWS๋ ๋ณ๋ ฌ ํ์ฅ์ ์ํ ์ ์ฉ ๋ชจ๋ธ์ ์ ๊ณตํฉ๋๋ค. ๊ฐ ํ์ฑ ํด๋ฌ์คํฐ
๋ณ๋ ฌ ํ์ฅ ํด๋ฌ์คํฐ ์ฌ์ฉ๋์ด ๋ฐ์ ํฌ๋ ๋ง ๊ธ์ก์ ์ด๊ณผํ๋ ๊ฒฝ์ฐ์๋ง ๋น์ฉ์ ์ง๋ถํฉ๋๋ค.
๋น์ฉ์ ๋ฌด๋ฃ ์๊ธ ์ด์์ผ๋ก ์ฌ์ฉ๋๋ ๋ณ๋ ฌ ํด๋ฌ์คํฐ์ ๋ํด ์ด๋น ์จ๋๋งจ๋ ์๊ธ์ผ๋ก ๊ณ์ฐ๋ฉ๋๋ค. ์์ฒญ ๊ธฐ๊ฐ์ ๋ํด์๋ง ์๊ธ์ด ๋ถ๊ณผ๋๋ฉฐ ๋ณ๋ ฌ ์กฐ์ ํด๋ฌ์คํฐ๊ฐ ํ์ฑํ๋ ๋๋ง๋ค ์ต์ XNUMX๋ถ์ ์๊ธ์ด ๋ถ๊ณผ๋ฉ๋๋ค. ์ด๋น ์ฃผ๋ฌธํ ์์จ์ ์ผ๋ฐ ๊ฐ๊ฒฉ ์ฑ
์ ์์น์ ๋ฐ๋ผ ๊ณ์ฐ๋ฉ๋๋ค.
๋ณ๋ ฌ ํ์ฅ ์์
๋ณ๋ ฌ ํ์ฅ์ WLM ๋๊ธฐ์ด๋ณ๋ก ์คํ๋ฉ๋๋ค. AWS Redshift ์ฝ์๋ก ์ด๋ํ์ฌ ์ผ์ชฝ ํ์ ๋ฉ๋ด์์ ์ํฌ๋ก๋ ๊ด๋ฆฌ๋ฅผ ์ ํํฉ๋๋ค. ๋ค์ ๋๋กญ๋ค์ด ๋ฉ๋ด์์ ํด๋ฌ์คํฐ์ WLM ๋งค๊ฐ๋ณ์ ๊ทธ๋ฃน์ ์ ํํฉ๋๋ค.
๊ฐ ๋๊ธฐ์ด ์์ "๋์์ฑ ํ์ฅ ๋ชจ๋"๋ผ๋ ์ ์ด์ด ํ์๋ฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ "๋นํ์ฑํ"์ ๋๋ค. "ํธ์ง"์ ํด๋ฆญํ๋ฉด ๊ฐ ๋๊ธฐ์ด์ ์ค์ ์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
๊ตฌ์ฑ
๋ณ๋ ฌ ํ์ฅ์ ์ ์ ํ ์์ฒญ์ ์๋ก์ด ์ ์ฉ ํด๋ฌ์คํฐ๋ก ์ ๋ฌํ์ฌ ์๋ํฉ๋๋ค. ์ ํด๋ฌ์คํฐ๋ ๊ธฐ๋ณธ ํด๋ฌ์คํฐ์ ๋์ผํ ํฌ๊ธฐ(๋ ธ๋ ์ ํ ๋ฐ ์)๋ฅผ ๊ฐ์ต๋๋ค.
๋ณ๋ ฌ ํ์ฅ์ ์ฌ์ฉ๋๋ ๊ธฐ๋ณธ ํด๋ฌ์คํฐ ์๋ 1๊ฐ์ด๋ฉฐ, ์ต๋ ์ด 10๊ฐ์ ํด๋ฌ์คํฐ๋ฅผ ๊ตฌ์ฑํ ์ ์์ต๋๋ค.
๋ณ๋ ฌ ํ์ฅ์ ์ํ ์ด ํด๋ฌ์คํฐ ์๋ max_concurrency_scaling_clusters ๋งค๊ฐ๋ณ์๋ก ์ค์ ํ ์ ์์ต๋๋ค. ์ด ๋งค๊ฐ๋ณ์์ ๊ฐ์ ๋๋ฆฌ๋ฉด ์ถ๊ฐ ์ค๋ณต ํด๋ฌ์คํฐ๊ฐ ์ ๊ณต๋ฉ๋๋ค.
๋ชจ๋ํฐ๋ง
AWS Redshift ์ฝ์์๋ ๋ช ๊ฐ์ง ์ถ๊ฐ ๊ทธ๋ํ๊ฐ ์์ต๋๋ค. ๊ตฌ์ฑ๋ ์ต๋ ๋์์ฑ ์กฐ์ ํด๋ฌ์คํฐ ์ฐจํธ๋ ์๊ฐ ๊ฒฝ๊ณผ์ ๋ฐ๋ฅธ max_concurrency_scaling_clusters ๊ฐ์ ํ์ํฉ๋๋ค.
ํ์ฑ ํ์ฅ ํด๋ฌ์คํฐ์ ์๋ "๋์์ฑ ํ์ฅ ํ๋" ์น์
์ ์ฌ์ฉ์ ์ธํฐํ์ด์ค์ ํ์๋ฉ๋๋ค.
์ฟผ๋ฆฌ ํญ์๋ ์ฟผ๋ฆฌ๊ฐ ๊ธฐ๋ณธ ํด๋ฌ์คํฐ์์ ์คํ๋์๋์ง ์๋๋ฉด ๋ณ๋ ฌ ํ์ฅ ํด๋ฌ์คํฐ์์ ์คํ๋์๋์ง๋ฅผ ๋ํ๋ด๋ ์ด์ด ์์ต๋๋ค.
ํน์ ์ฟผ๋ฆฌ๊ฐ ๋ฉ์ธ ํด๋ฌ์คํฐ์์ ์คํ๋์๋์ง ์๋๋ฉด ๋ณ๋ ฌ ํ์ฅ ํด๋ฌ์คํฐ๋ฅผ ํตํด ์คํ๋์๋์ง์ ๊ด๊ณ์์ด stl_query.concurrency_scaling_status์ ์ ์ฅ๋ฉ๋๋ค.
๊ฐ์ด 1์ด๋ฉด ๋ณ๋ ฌ ๊ท๋ชจ ํด๋ฌ์คํฐ์์ ์ฟผ๋ฆฌ๊ฐ ์คํ๋์์์ ๋ํ๋ด๊ณ , ๋ค๋ฅธ ๊ฐ์ ๊ธฐ๋ณธ ํด๋ฌ์คํฐ์์ ์คํ๋์์์ ๋ํ๋
๋๋ค.
์ :
๋์์ฑ ํ์ฅ ์ ๋ณด๋ SVCS_CONCURRENCY_SCALING_USAGE์ ๊ฐ์ ์ผ๋ถ ๋ค๋ฅธ ํ
์ด๋ธ ๋ฐ ๋ทฐ์๋ ์ ์ฅ๋ฉ๋๋ค. ๋ํ ๋ณ๋ ฌ ํ์ฅ์ ๋ํ ์ ๋ณด๋ฅผ ์ ์ฅํ๋ ์นดํ๋ก๊ทธ ํ
์ด๋ธ์ด ๋ง์ด ์์ต๋๋ค.
์กฐ์ฌ ๊ฒฐ๊ณผ
์์ฑ์๋ 18๋ 30์ 00์ผ ์ฝ 29.03.2019:3:20(GMT)์ ๋ด๋ถ ํด๋ฌ์คํฐ์ ํ ๋๊ธฐ์ด์ ๋ํ ๋ณ๋ ฌ ํ์ฅ์ ์์ํ์ผ๋ฉฐ, 30๋ 00์ 29.03.2019์ผ ์ฝ XNUMX:XNUMX:XNUMX์ max_concurrency_scaling_clusters ๋งค๊ฐ ๋ณ์๋ฅผ XNUMX์ผ๋ก ๋ณ๊ฒฝํ์ต๋๋ค.
์์ฒญ ๋๊ธฐ์ด์ ์๋ฎฌ๋ ์ด์ ํ๊ธฐ ์ํด ์ด ๋๊ธฐ์ด์ ์ฌ๋กฏ ์๋ฅผ 15๊ฐ์์ 5๊ฐ๋ก ์ค์์ต๋๋ค.
์๋๋ ์ฌ๋กฏ ์๋ฅผ ์ค์ธ ํ ์คํ ์ค์ด๊ณ ๋๊ธฐ์ด์ ์๋ ์์ฒญ ์๋ฅผ ๋ณด์ฌ์ฃผ๋ intermix.io ๋์๋ณด๋ ์ฐจํธ์ ๋๋ค.
๋๊ธฐ์ด์ ์์ฒญ ๋๊ธฐ ์๊ฐ์ด ์ฆ๊ฐํ์ฌ ์ต๋ ์๊ฐ์ด 5๋ถ ์ด์์ธ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค.
์ด ๊ธฐ๊ฐ ๋์ ๋ฐ์ํ ์ผ์ ๋ํ AWS ์ฝ์์ ๊ด๋ จ ์ ๋ณด๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
Redshift๋ ๊ตฌ์ฑ๋ ๋๋ก 3๊ฐ์ ๋ณ๋ ฌ ํ์ฅ ํด๋ฌ์คํฐ๋ฅผ ์์ํ์ต๋๋ค. ํด๋ฌ์คํฐ์ ๋ง์ ์์ฒญ์ด ๋๊ธฐ์ด์ ์์์๋ ๋ถ๊ตฌํ๊ณ ์ด๋ฌํ ํด๋ฌ์คํฐ๋ ์ถฉ๋ถํ ํ์ฉ๋์ง ์์ ๊ฒ์ผ๋ก ๋ณด์
๋๋ค.
์ฌ์ฉ๋ ๊ทธ๋ํ๋ ์กฐ์ ํ๋ ๊ทธ๋ํ์ ์ฐ๊ด๋์ด ์์ต๋๋ค.
๋ช ์๊ฐ ํ ์์ฑ์๊ฐ ๋๊ธฐ์ด์ ํ์ธํ ๊ฒฐ๊ณผ 6๊ฐ์ ์์ฒญ์ด ๋ณ๋ ฌ ํ์ฅ์ผ๋ก ์คํ ์ค์ธ ๊ฒ์ผ๋ก ๋ํ๋ฌ์ต๋๋ค. ๋ํ ์ฌ์ฉ์ ์ธํฐํ์ด์ค๋ฅผ ํตํด ๋ ๊ฐ์ง ์์ฒญ์ ๋ฌด์์๋ก ํ
์คํธํ์ต๋๋ค. ์ฌ๋ฌ ๊ฐ์ ๋ณ๋ ฌ ํด๋ฌ์คํฐ๊ฐ ๋์์ ํ์ฑํ๋ ๋ ์ด ๊ฐ์ ์ด๋ป๊ฒ ์ฌ์ฉํ๋์ง ํ์ธํ์ง ์์์ต๋๋ค.
์กฐ์ฌ ๊ฒฐ๊ณผ
๋ณ๋ ฌ ํ์ฅ์ ์ต๋ ๋ก๋ ์ค์ ์์ฒญ์ด ๋๊ธฐ์ด์์ ์์๋๋ ์๊ฐ์ ์ค์ผ ์ ์์ต๋๋ค.
๊ธฐ๋ณธ ํ ์คํธ ๊ฒฐ๊ณผ ๋ก๋ฉ ์์ฒญ ์ํฉ์ด ์ผ๋ถ ๊ฐ์ ๋ ๊ฒ์ผ๋ก ๋ํ๋ฌ๋ค. ๊ทธ๋ฌ๋ ๋ณ๋ ฌ ํ์ฅ๋ง์ผ๋ก๋ ๋ชจ๋ ๋์์ฑ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์ง ์์์ต๋๋ค.
์ด๋ ๋ณ๋ ฌ ํ์ฅ์ ์ฌ์ฉํ ์ ์๋ ์ฟผ๋ฆฌ ์ ํ์ ๋ํ ์ ํ ๋๋ฌธ์ ๋๋ค. ์๋ฅผ ๋ค์ด, ์์ฑ์๋ ์ธํฐ๋ฆฌ๋ธ๋ ์ ๋ ฌ ํค๊ฐ ์๋ ํ ์ด๋ธ์ ๋ง์ด ๊ฐ๊ณ ์์ผ๋ฉฐ ์์ ๋์ ๋๋ถ๋ถ์ ์ฐ๊ธฐ์ ๋๋ค.
๋ณ๋ ฌ ํ์ฅ์ WLM ์ค์ ์ ์ํ ๋ณดํธ์ ์ธ ์๋ฃจ์ ์ ์๋์ง๋ง ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ ๊ฒ์ ๊ฐ๋จํ๊ณ ๊ฐ๋จํฉ๋๋ค.
๋ฐ๋ผ์ ์์ฑ์๋ WLM ๋๊ธฐ์ด์ ์ด๋ฅผ ์ฌ์ฉํ ๊ฒ์ ๊ถ์ฅํฉ๋๋ค. ํ๋์ ๋ณ๋ ฌ ํด๋ฌ์คํฐ๋ก ์์ํ๊ณ ์ฝ์์ ํตํด ์ต๋ ๋ก๋๋ฅผ ๋ชจ๋ํฐ๋งํ์ฌ ์ ํด๋ฌ์คํฐ๊ฐ ์์ ํ ํ์ฉ๋๊ณ ์๋์ง ํ์ธํฉ๋๋ค.
AWS๊ฐ ์ถ๊ฐ ์ฟผ๋ฆฌ ์ ํ ๋ฐ ํ ์ด๋ธ์ ๋ํ ์ง์์ ์ถ๊ฐํจ์ ๋ฐ๋ผ ๋ณ๋ ฌ ํ์ฅ์ ์ ์ ๋ ํจ์จ์ ์ด ๋ ๊ฒ์ ๋๋ค.
Skyeng ๋ฐ์ดํฐ ์์ง๋์ด Daniyar Belkhodzhaev์ ์๊ฒฌ
Skyeng์์๋ ๋ณ๋ ฌ ํ์ฅ์ ์๋ก์ด ๊ฐ๋ฅ์ฑ๋ ์ฆ์ ์์์ฐจ๋ ธ์ต๋๋ค.
์ด ๊ธฐ๋ฅ์ ๋งค์ฐ ๋งค๋ ฅ์ ์ ๋๋ค. ํนํ ๋๋ถ๋ถ์ ์ฌ์ฉ์๊ฐ ์ถ๊ฐ ๋น์ฉ์ ์ง๋ถํ ํ์์กฐ์ฐจ ์์ ๊ฒ์ผ๋ก AWS๊ฐ ์ถ์ ํ๊ณ ์๋ค๋ ์ ์ ๊ณ ๋ คํ๋ฉด ๋์ฑ ๊ทธ๋ ์ต๋๋ค.24์ ์ค์์ Redshift ํด๋ฌ์คํฐ์ ๋ํ ์์ฒญ์ด ์ด๋ก์ ์ผ๋ก ์๋ํ์ต๋๋ค. ์ด ๊ธฐ๊ฐ ๋์ ์ฐ๋ฆฌ๋ ๋์์ฑ ํ์ฅ(Concurrency Scaling)์ ์์ฃผ ์ฌ์ฉํ์ผ๋ฉฐ ๋๋ก๋ ์ถ๊ฐ ํด๋ฌ์คํฐ๊ฐ ์ค๋จ ์์ด ํ๋ฃจ XNUMX์๊ฐ ์๋ํ๋ ๊ฒฝ์ฐ๋ ์์์ต๋๋ค.
์ด๋ฅผ ํตํด ๋๊ธฐ์ด ๋ฌธ์ ๋ฅผ ์์ ํ ํด๊ฒฐํ์ง๋ ๋ชปํ๋๋ผ๋ ์ต์ํ ์ํฉ์ ์์ฉ ๊ฐ๋ฅํ๊ฒ ๋ง๋ค ์ ์์์ต๋๋ค.
์ฐ๋ฆฌ์ ๊ด์ฐฐ์ intermix.io ์ฌ๋๋ค์ ์ธ์๊ณผ ํฌ๊ฒ ์ผ์นํฉ๋๋ค.
๋ํ ๋๊ธฐ์ด์ ๋๊ธฐ ์ค์ธ ์์ฒญ์ด ์๋๋ผ๋ ๋ชจ๋ ์์ฒญ์ด ์ฆ์ ๋ณ๋ ฌ ํด๋ฌ์คํฐ๋ก ์ ๋ฌ๋์ง๋ ์๋๋ค๋ ์ฌ์ค๋ ํ์ธํ์ต๋๋ค. ๋ถ๋ช ํ ์ด๋ ๋ณ๋ ฌ ํด๋ฌ์คํฐ๊ฐ ์์ํ๋ ๋ฐ ์ฌ์ ํ ์๊ฐ์ด ๊ฑธ๋ฆฌ๊ธฐ ๋๋ฌธ์ ๋ฐ์ํฉ๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ๋จ๊ธฐ์ ์ธ ์ต๋ ๋ถํ ๋์์๋ ์ฌ์ ํ ์์ ๋๊ธฐ์ด์ด ์์ผ๋ฉฐ ํด๋น ๊ฒฝ๋ณด๊ฐ ํธ๋ฆฌ๊ฑฐ๋ ์๊ฐ์ด ์์ต๋๋ค.
XNUMX์์ ๋น์ ์์ ์ธ ๋ก๋๋ฅผ ์ ๊ฑฐํ ํ AWS๊ฐ ์์ํ ๋๋ก ์ฐ๋ฆฌ๋ ์์ ํ์ค ๋ด์์ ๋น์ ๊ธฐ์ ์ฌ์ฉ ๋ชจ๋์ ๋ค์ด๊ฐ์ต๋๋ค.
AWS Cost Explorer์์ ๋ณ๋ ฌ ํ์ฅ ๋น์ฉ์ ์ถ์ ํ ์ ์์ต๋๋ค. ์๋น์ค - Redshift, ์ฌ์ฉ ์ ํ - CS(์: USW2-CS:dc2.large)๋ฅผ ์ ํํด์ผ ํฉ๋๋ค.๋ฌ์์์ด ๊ฐ๊ฒฉ์ ๋ํด ์์ธํ ์์๋ณผ ์ ์์ต๋๋ค.
์ฌ๊ธฐ์.
์ถ์ฒ : habr.com