๋ค์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ํ Yandex์ ๊ธฐ์ฌ๋๊ฐ ๊ฒํ ๋ฉ๋๋ค.
- ํด๋ฆญ ํ์ฐ์ค
- ์ค๋์ธ์ด
- ํน์ ์์ ์ผ๋ก ๋ณต๊ตฌ(WAL-G)
- PostgreSQL(logerrors, Amcheck, heapcheck ํฌํจ)
- ๊ทธ๋ฆฐํ๋ผ
๋น๋์ค :
์๋ ํ์ธ์! ๋ด ์ด๋ฆ์ ์๋๋ ์ด ๋ณด๋ก๋์ ๋๋ค. ์ ๊ฐ Yandex.Cloud์์ ํ๋ ์ผ์ Yandex.Cloud ๋ฐ Yandex.Cloud ๊ณ ๊ฐ์ ์ด์ต์ ์ํด ๊ฐ๋ฐฉํ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ฐ๋ฐํ๋ ๊ฒ์ ๋๋ค.
์ด ๊ฐ์ฐ์์๋ ๊ท๋ชจ์ ๋ฐ๋ฅธ ๊ฐ๋ฐฉํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์ง๋ฉดํ ๊ณผ์ ์ ๋ํด ์ด์ผ๊ธฐํ๊ฒ ์ต๋๋ค. ์ ์ค์ ํจ? ๋ชจ๊ธฐ์ฒ๋ผ ๋์ค์ ์ฝ๋ผ๋ฆฌ๊ฐ ๋๋ ์์ฃผ ์์ ๋ฌธ์ ๋ค ๋๋ฌธ์ ๋๋ค. ํด๋ฌ์คํฐ๊ฐ ๋ง์ผ๋ฉด ํฌ๊ธฐ๊ฐ ์ปค์ง๋๋ค.
๊ทธ๋ฌ๋ ๊ทธ๊ฒ์ ์ค์ํ ๊ฒ์ด ์๋๋๋ค. ๋ฏฟ์ ์ ์๋ ์ผ์ด ์ผ์ด๋ฉ๋๋ค. ๋ฐฑ๋ง๋ถ์ ์ผ์ ํ ๋ฒ์ฉ ์ผ์ด๋๋ ์ผ๋ค. ๊ทธ๋ฆฌ๊ณ ํด๋ผ์ฐ๋ ํ๊ฒฝ์์๋ ์ด์ ๋๋นํด์ผ ํฉ๋๋ค. ์๋ํ๋ฉด ๋ฌด์ธ๊ฐ ๋๊ท๋ชจ๋ก ์กด์ฌํ๋ฉด ๋๋ผ์ด ์ผ์ด ์ผ์ด๋ ๊ฐ๋ฅ์ฑ์ด ๋งค์ฐ ๋๊ธฐ ๋๋ฌธ์ ๋๋ค.
ํ์ง๋ง! ๊ฐ๋ฐฉํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ฅ์ ์ ๋ฌด์์ ๋๊น? ์ฌ์ค์ ์ด๋ค ๋ฌธ์ ๋ผ๋ ํด๊ฒฐํ ์ ์๋ ์ด๋ก ์ ๊ธฐํ๊ฐ ์๋ค๋ ๊ฒ์ ๋๋ค. ์์ค ์ฝ๋๊ฐ ์๊ณ ํ๋ก๊ทธ๋๋ฐ ์ง์์ด ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ ๊ฒฐํฉํ๋ฉด ์๋ํฉ๋๋ค.
์คํ ์์ค ์ํํธ์จ์ด ์์ ์๋ ์ด๋ค ์ ๊ทผ ๋ฐฉ์์ด ์๋์?
- ๊ฐ์ฅ ๊ฐ๋จํ ์ ๊ทผ ๋ฐฉ์์ ์ํํธ์จ์ด๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค. ํ๋กํ ์ฝ์ ์ฌ์ฉํ๊ณ , ํ์ค์ ์ฌ์ฉํ๊ณ , ํ์์ ์ฌ์ฉํ๊ณ , ์คํ ์์ค ์ํํธ์จ์ด์์ ์ฟผ๋ฆฌ๋ฅผ ์์ฑํ๋ค๋ฉด ์ด๋ฏธ ์ด๋ฅผ ์ง์ํ๊ณ ์๋ ๊ฒ์ ๋๋ค.
- ์ํ๊ณ๋ฅผ ๋ ํฌ๊ฒ ๋ง๋ค๊ณ ์์ต๋๋ค. ๋ฒ๊ทธ๋ฅผ ์กฐ๊ธฐ์ ๋ฐ๊ฒฌํ ๊ฐ๋ฅ์ฑ์ด ๋์์ง๋๋ค. ์ด ์์คํ ์ ์ ๋ขฐ์ฑ์ด ํฅ์๋ฉ๋๋ค. ์์ฅ์์ ๊ฐ๋ฐ์์ ๊ฐ์ฉ์ฑ์ด ๋์์ง๋๋ค. ๋น์ ์ ์ด ์ํํธ์จ์ด๋ฅผ ๊ฐ์ ํฉ๋๋ค. ์คํ์ผ์ ์์ฑํ๊ณ ๋ญ๊ฐ๋ฅผ ์๋ดค๋ค๋ฉด ๋น์ ์ ์ด๋ฏธ ๊ธฐ์ฌ์์ ๋๋ค.
- ๋ ๋ค๋ฅธ ์ดํด ๊ฐ๋ฅํ ์ ๊ทผ ๋ฐฉ์์ ์คํ ์์ค ์ํํธ์จ์ด๋ฅผ ํ์ํ๋ ๊ฒ์ ๋๋ค. ์๋ฅผ ๋ค์ด, ์ ์๋ ค์ง Google Summer of Code ํ๋ก๊ทธ๋จ์ Google์ด ํน์ ๋ผ์ด์ผ์ค ์๊ตฌ ์ฌํญ์ ์ถฉ์กฑํ๋ ๊ฐ๋ฐฉํ ์ํํธ์จ์ด ํ๋ก์ ํธ๋ฅผ ๊ฐ๋ฐํ ์ ์๋๋ก ์ ์ธ๊ณ์ ๋ง์ ํ์๋ค์๊ฒ ์ดํดํ ์ ์๋ ๋์ ์ง๋ถํ๋ ๊ฒฝ์ฐ์ ๋๋ค.
- ์ด๋ ์ด์ ์ ์ปค๋ฎค๋ํฐ์์ ๋ฒ์ด๋์ง ์๊ณ ๋ ์ํํธ์จ์ด๋ฅผ ๋ฐ์ ์ํฌ ์ ์๋ค๋ ์ ์์ ๋งค์ฐ ํฅ๋ฏธ๋ก์ด ์ ๊ทผ ๋ฐฉ์์ ๋๋ค. ๊ฑฐ๋ ๊ธฐ์ ๊ธฐ์ ์ธ Google์ ์ฐ๋ฆฌ๊ฐ ์ด ๊ธฐ๋ฅ์ ์ํ๋ค๊ณ ๋งํ๋ ๊ฒ์ด ์๋๋ผ ์ด ๋ฒ๊ทธ๋ฅผ ์์ ํ๊ณ ์ถ๊ณ ์ด๊ฒ์ด ๋ฐ๋ก ์ฐ๋ฆฌ๊ฐ ํํค์ณ์ผ ํ ๋ถ๋ถ์ ๋๋ค. ๊ตฌ๊ธ์ โ๋น์ ์ด ํ๋ ์ผ์ ํ์ธ์. ์ง๊ธ๊น์ง ํด์ค๋ ๋ฐฉ์๋๋ก ๊ณ์ ๋ ธ๋ ฅํ๋ฉด ๋ชจ๋ ๊ฒ์ด ์ ๋ ๊ฒ์ ๋๋ค.โ
- ์คํ์์ค ์ฐธ์ฌ์ ๋ํ ๋ค์ ์ ๊ทผ ๋ฐฉ์์ ์ฐธ์ฌ์ ๋๋ค. ์คํ ์์ค ์ํํธ์จ์ด์ ๋ฌธ์ ๊ฐ ์๊ณ ๊ฐ๋ฐ์๊ฐ ์์ผ๋ฉด ๊ฐ๋ฐ์๊ฐ ๋ฌธ์ ํด๊ฒฐ์ ์์ํฉ๋๋ค. ๊ทธ๋ค์ ๊ทํ์ ์ธํ๋ผ๋ฅผ ๋์ฑ ํจ์จ์ ์ผ๋ก ๋ง๋ค๊ณ , ํ๋ก๊ทธ๋จ์ ๋ ๋น ๋ฅด๊ณ ์์ ์ ์ผ๋ก ๋ง๋ค๊ธฐ ์์ํฉ๋๋ค.
์คํ ์์ค ์ํํธ์จ์ด ๋ถ์ผ์์ ๊ฐ์ฅ ์ ๋ช ํ Yandex ํ๋ก์ ํธ ์ค ํ๋๋ ClickHouse์ ๋๋ค. ์ด๋ Yandex.Metrica๊ฐ ์ง๋ฉดํ ๊ณผ์ ์ ๋ํ ๋์์ผ๋ก ํ์ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก์ ์ํ๊ณ๋ฅผ ๋ง๋ค๊ณ (Yandex ๋ด๋ฟ๋ง ์๋๋ผ) ๋ค๋ฅธ ๊ฐ๋ฐ์์ ํจ๊ป ๊ฐ๋ฐํ๊ธฐ ์ํด ์คํ ์์ค๋ก ๋ง๋ค์ด์ก์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด์ ์ด๊ฒ์ ๋ค์ํ ํ์ฌ๊ฐ ์ฐธ์ฌํ๋ ํฐ ํ๋ก์ ํธ์ ๋๋ค.
Yandex.Cloud์์๋ Yandex Object Storage, ์ฆ ํด๋ผ์ฐ๋ ์คํ ๋ฆฌ์ง ์์ ClickHouse๋ฅผ ๋ง๋ค์์ต๋๋ค.
ํด๋ผ์ฐ๋์์ ์ด๊ฒ์ด ์ ์ค์ํ๊ฐ์? ๋ชจ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ด ์ผ๊ฐํ, ํผ๋ผ๋ฏธ๋, ๋ฉ๋ชจ๋ฆฌ ์ ํ ๊ณ์ธต ๊ตฌ์กฐ์์ ์๋ํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋น ๋ฅด์ง๋ง ์์ ๋ ์ง์คํฐ์ ๊ฐ์ธ๊ณ ํฌ์ง๋ง ๋๋ฆฐ SSD, ํ๋ ๋๋ผ์ด๋ธ ๋ฐ ๊ธฐํ ๋ธ๋ก ์ฅ์น๊ฐ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ํผ๋ผ๋ฏธ๋ ๊ผญ๋๊ธฐ์์ ํจ์จ์ ์ด๋ผ๋ฉด ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ๋น ๋ฅธ ๊ฒ์ ๋๋ค. ์ด ํผ๋ผ๋ฏธ๋์ ๋งจ ์๋์์ ํจ์จ์ ์ด๋ผ๋ฉด ํ์ฅ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ฐ๊ฒ ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ฐ ์ ์์ ์๋์์ ๋ ๋ค๋ฅธ ๋ ์ด์ด๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํ์ฅ์ฑ์ ๋์ด๋ ๋ ผ๋ฆฌ์ ์ธ ์ ๊ทผ ๋ฐฉ์์ ๋๋ค.
์ด๋ป๊ฒ ํ ์ ์์๋์? ์ด๊ฒ์ด ์ด ๋ณด๊ณ ์์ ์ค์ํ ํฌ์ธํธ์ ๋๋ค.
- MDS๋ฅผ ํตํด ClickHouse๋ฅผ ๊ตฌํํ ์ ์์ต๋๋ค. MDS๋ ๋ด๋ถ Yandex ํด๋ผ์ฐ๋ ์คํ ๋ฆฌ์ง ์ธํฐํ์ด์ค์ ๋๋ค. ์ผ๋ฐ์ ์ธ S3 ํ๋กํ ์ฝ๋ณด๋ค ๋ ๋ณต์กํ์ง๋ง ๋ธ๋ก ์ฅ์น์ ๋ ์ ํฉํฉ๋๋ค. ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋กํ๋ ๊ฒ์ด ๋ ์ข์ต๋๋ค. ๋ ๋ง์ ํ๋ก๊ทธ๋๋ฐ์ด ํ์ํฉ๋๋ค. ํ๋ก๊ทธ๋๋จธ๋ ํ๋ก๊ทธ๋๋ฐ์ ํ ๊ฒ์ด๊ณ ์ฌ์ง์ด ํ๋ฅญํ๊ณ ํฅ๋ฏธ๋ก์ธ ์๋ ์์ต๋๋ค.
- S3๋ ํน์ ์ ํ์ ์ํฌ๋ก๋์ ๋ ์ ์ํ๋ ๋น์ฉ์ผ๋ก ์ธํฐํ์ด์ค๋ฅผ ๋ ๋จ์ํ๊ฒ ๋ง๋๋ ๋ณด๋ค ์ผ๋ฐ์ ์ธ ์ ๊ทผ ๋ฐฉ์์ ๋๋ค.
๋น์ฐํ ์ ์ฒด ClickHouse ์ํ๊ณ์ ๊ธฐ๋ฅ์ ์ ๊ณตํ๊ณ Yandex.Cloud ๋ด๋ถ์ ํ์ํ ์์ ์ ์ํํ๊ธฐ ์ํด ์ฐ๋ฆฌ๋ ์ ์ฒด ClickHouse ์ปค๋ฎค๋ํฐ๊ฐ ์ด๋ก๋ถํฐ ํํ์ ๋ฐ์ ์ ์๋์ง ํ์ธํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ์ฐ๋ฆฌ๋ MDS๋ฅผ ํตํ ClickHouse๊ฐ ์๋ S3๋ฅผ ํตํด ClickHouse๋ฅผ ๊ตฌํํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ ๋ง์ ์์ ์ ๋๋ค.
๋งํฌ :
ํด๋ฆญํ์ฐ์ค์์ ๊ฐ์ ํ์ผ ์์คํ ์ ๊ตฌํํ๊ธฐ ์ํ ํ ๋ฆฌํ์คํธ ๋ชฉ๋ก์ ๋๋ค. ์ด๊ฒ์ ๋ง์ ์์ ๋์ด์ค๊ธฐ ์์ฒญ์ ๋๋ค.
๋งํฌ :
๊ณ ๊ฐ"
๊ทธ๋ฌ๋ ์ผ์ ์ฌ๊ธฐ์ ๋๋์ง ์์์ต๋๋ค. ๊ธฐ๋ฅ์ด ๋ง๋ค์ด์ง ํ ์ด ๊ธฐ๋ฅ์ ์ต์ ํํ๋ ค๋ฉด ๋ช ๊ฐ์ง ์ถ๊ฐ ์์ ์ด ํ์ํ์ต๋๋ค.
๋งํฌ :
๊ทธ๋ฆฌ๊ณ ์ด๋ฅผ ์ง๋จํ๊ณ , ๋ชจ๋ํฐ๋ง์ ์ค์ ํ๊ณ , ๊ด๋ฆฌํ ์ ์๊ฒ ๋ง๋๋ ๊ฒ์ด ํ์ํ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ด ๋ชจ๋ ์์ ์ ์ ์ฒด ์ปค๋ฎค๋ํฐ, ์ ์ฒด ClickHouse ์ํ๊ณ๊ฐ ์ด ์์ ์ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ์ ์ ์๋๋ก ์ํ๋์์ต๋๋ค.
๊ฐ์ธ์ ์ผ๋ก ๋ ๊ฐ๊น์ด ํธ๋์ญ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค, OLTP ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ๋์ด๊ฐ ๋ณด๊ฒ ์ต๋๋ค.
์คํ์์ค DBMS ๊ฐ๋ฐ ๋ถ์์ ๋๋ค. ์ด ์ฌ๋๋ค์ ํธ๋์ญ์ ๊ฐ๋ฐฉํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ฐ์ ํ๊ธฐ ์ํด ๊ฑฐ๋ฆฌ ๋ง์ ์ ํ๊ณ ์์ต๋๋ค.
์ฐ๋ฆฌ๊ฐ ์ํํ๋ ๋ฐฉ๋ฒ๊ณผ ์์ ์ ๋ํด ์ด์ผ๊ธฐํ ์ ์๋ ์๋ฅผ ์ฌ์ฉํ๋ ํ๋ก์ ํธ ์ค ํ๋๋ Postgres์ ์ฐ๊ฒฐ ํ๋ฌ์ ๋๋ค.
Postgres๋ ํ๋ก์ธ์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋๋ค. ์ด๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํธ๋์ญ์ ์ ์ฒ๋ฆฌํ๋ ๋คํธ์ํฌ ์ฐ๊ฒฐ์ด ๊ฐ๋ฅํ ํ ์ ์ด์ผ ํจ์ ์๋ฏธํฉ๋๋ค.
๋ฐ๋ฉด, ํด๋ผ์ฐ๋ ํ๊ฒฝ์์๋ ํ ํด๋ฌ์คํฐ์ ์์ฒ ๊ฐ์ ์ฐ๊ฒฐ์ด ๋์์ ๋ค์ด์ค๋ ๊ฒฝ์ฐ๊ฐ ์ผ๋ฐ์ ์ธ ์ํฉ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ๊ฒฐ ํ๋ฌ์ ์๋ฌด๋ ์์ฒ ๊ฐ์ ์ฐ๊ฒฐ์ ์์์ ์๋ฒ ์ฐ๊ฒฐ๋ก ๋ฌถ๋ ๊ฒ์ ๋๋ค.
์ฐ๊ฒฐ ํ๋ฌ๋ ๋ฐ์ดํธ๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํจ์จ์ ์ผ๋ก ๋๋ฌํ ์ ์๋๋ก ๋ฐ์ดํธ๋ฅผ ์ฌ๋ฐฐ์ดํ๋ ์ ํ ๊ตํ์์ด๋ผ๊ณ ๋งํ ์ ์์ต๋๋ค.
๋ถํํ๊ฒ๋ ์ฐ๊ฒฐ ํ๋ฌ์ ๋ํ ์ ์ ํ ๋ฌ์์์ด ๋จ์ด๋ ์์ต๋๋ค. ๋๋ก๋ ๋ฉํฐํ๋ ์ ์ฐ๊ฒฐ์ด๋ผ๊ณ ๋ ํฉ๋๋ค. ์ฐ๊ฒฐ ํ๋ฌ๋ฅผ ๋ฌด์์ด๋ผ๊ณ ๋ถ๋ฅผ์ง ์๊ณ ๊ณ์๋ค๋ฉด ๊ผญ ๋ง์ํด ์ฃผ์ญ์์ค. ์ ๊ฐ ์ฌ๋ฐ๋ฅธ ๋ฌ์์์ด ๊ธฐ์ ์ธ์ด๋ฅผ ๊ธฐ๊บผ์ด ๊ตฌ์ฌํด ๋๋ฆฌ๊ฒ ์ต๋๋ค.
๊ด๋ฆฌํ Postgres ํด๋ฌ์คํฐ์ ์ ํฉํ ์ฐ๊ฒฐ ํ๋ฌ๋ฅผ ์กฐ์ฌํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ PgBouncer๋ ์ฐ๋ฆฌ์๊ฒ ์ต๊ณ ์ ์ ํ์ด์์ต๋๋ค. ๊ทธ๋ฌ๋ PgBouncer์์๋ ์ฌ๋ฌ ๊ฐ์ง ๋ฌธ์ ์ ์ง๋ฉดํ์ต๋๋ค. ์๋ ์ Volodya Borodin์ ์ฐ๋ฆฌ๊ฐ PgBouncer๋ฅผ ์ฌ์ฉํ๊ณ ์์ผ๋ฉฐ ๋ชจ๋ ๊ฒ์ ์ข์ํ์ง๋ง ๋์์ค๊ฐ ์๊ณ ์์ ํ ๊ฒ์ด ์๋ค๋ ๋ณด๊ณ ์๋ฅผ ์ ๊ณตํ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๋ ์ผํ์ต๋๋ค. ์ฐ๋ฆฌ๋ ๋ฐ์ํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ Bouncer๋ฅผ ํจ์นํ๊ณ ํ ์์ฒญ ์ ์คํธ๋ฆผ์ ํธ์ํ๋ ค๊ณ ์๋ํ์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ธฐ๋ณธ์ ์ธ ๋จ์ผ ์ค๋ ๋ฉ์ ์์ ํ๊ธฐ๊ฐ ์ด๋ ค์ ์ต๋๋ค.
์ฐ๋ฆฌ๋ ํจ์น๋ ๋ฐ์ด์๋ก๋ถํฐ ์บ์ค์ผ์ด๋๋ฅผ ์์งํด์ผ ํ์ต๋๋ค. ๋จ์ผ ์ค๋ ๋ ๋ฐ์ด์๊ฐ ๋ง์ ๊ฒฝ์ฐ ์ต์์ ๋ ์ด์ด์ ์ฐ๊ฒฐ์ ๋ฐ์ด์์ ๋ด๋ถ ๋ ์ด์ด๋ก ์ ์ก๋ฉ๋๋ค. ์ด๋ ๊ตฌ์ถ ๋ฐ ํ์ฅ์ด ์ด๋ ค์ด ์ ๋๋ก ๊ด๋ฆฌ๋์ง ์๋ ์์คํ ์ ๋๋ค.
์ฐ๋ฆฌ๋ Odyssey๋ผ๋ ์์ฒด ์ฐ๊ฒฐ ํ๋ฌ๋ฅผ ๋ง๋ค์๋ค๋ ๊ฒฐ๋ก ์ ๋๋ฌํ์ต๋๋ค. ์ฐ๋ฆฌ๋ ์ฒ์๋ถํฐ ๊ทธ๊ฒ์ ์ผ์ต๋๋ค.
2019๋ PgCon ์ปจํผ๋ฐ์ค์์ ์ ๋ ์ด ํ๋ฌ๋ฅผ ๊ฐ๋ฐ์ ์ปค๋ฎค๋ํฐ์ ์ ๋ณด์์ต๋๋ค. ์ด์ GitHub์๋ 2๊ฐ ๋ฏธ๋ง์ ๋ณ์ด ์์ต๋๋ค. ์ฆ, ํ๋ก์ ํธ๊ฐ ์ด์ ์๊ณ ํ๋ก์ ํธ๊ฐ ์ธ๊ธฐ๊ฐ ์๋ค๋ ๋ป์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ Yandex.Cloud์์ Postgres ํด๋ฌ์คํฐ๋ฅผ ์์ฑํ๋ฉด ํด๋ฌ์คํฐ๋ฅผ ์๋ค๋ก ํ์ฅํ ๋ ์ฌ๊ตฌ์ฑ๋๋ Odyssey๊ฐ ๋ด์ฅ๋ ํด๋ฌ์คํฐ๊ฐ ๋ฉ๋๋ค.
์ด ํ๋ก์ ํธ์์ ์ฐ๋ฆฌ๋ ๋ฌด์์ ๋ฐฐ์ ๋์? ๊ฒฝ์ ํ๋ก์ ํธ๋ฅผ ์์ํ๋ ๊ฒ์ ํญ์ ๊ณต๊ฒฉ์ ์ธ ๋จ๊ณ์ด๋ฉฐ, ์ถฉ๋ถํ ๋นจ๋ฆฌ ํด๊ฒฐ๋์ง ์๊ณ ์ฐ๋ฆฌ์๊ฒ ์ ํฉํ ์๊ฐ ๊ฐ๊ฒฉ ๋ด์ ํด๊ฒฐ๋์ง ์๋ ๋ฌธ์ ๊ฐ ์๋ค๊ณ ๋งํ ๋ ์ด๋ ๊ทน๋จ์ ์ธ ์กฐ์น์ ๋๋ค. ๊ทธ๋ฌ๋ ์ด๊ฒ์ ํจ๊ณผ์ ์ธ ์กฐ์น์ ๋๋ค.
PgBouncer๊ฐ ๋ ๋น ๋ฅด๊ฒ ๊ฐ๋ฐ๋๊ธฐ ์์ํ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ด์ ๋ค๋ฅธ ํ๋ก์ ํธ๊ฐ ๋ํ๋ฌ์ต๋๋ค. ์๋ฅผ ๋ค์ด Red Hat ๊ฐ๋ฐ์๊ฐ ๊ฐ๋ฐํ pgagroal์ด ์์ต๋๋ค. ๊ทธ๋ค์ ์ ์ฌํ ๋ชฉํ๋ฅผ ์ถ๊ตฌํ๊ณ ์ ์ฌํ ์์ด๋์ด๋ฅผ ๊ตฌํํ์ง๋ง ๋ฌผ๋ก Pgagroal ๊ฐ๋ฐ์์๊ฒ ๋ ๊ฐ๊น์ด ๊ณ ์ ํ ์ธ๋ถ ์ฌํญ์ ๊ฐ์ง๊ณ ์์ต๋๋ค.
Postgres ์ปค๋ฎค๋ํฐ์ ํ๋ ฅํ๋ ๋ ๋ค๋ฅธ ์ฌ๋ก๋ ํน์ ์์ ์ผ๋ก ๋ณต์ํ๋ ๊ฒ์ ๋๋ค. ์ด๋ ์ฅ์ ํ ๋ณต๊ตฌ์ด๊ณ ๋ฐฑ์ ์์ ๋ณต๊ตฌํ๋ ๊ฒ์ ๋๋ค.
๋ง์ ๋ฐฑ์ ์ด ์์ผ๋ฉฐ ๋ชจ๋ ๋ค๋ฆ ๋๋ค. ๊ฑฐ์ ๋ชจ๋ Postgres ๊ณต๊ธ์ ์ฒด์๋ ์์ฒด ๋ฐฑ์ ์๋ฃจ์ ์ด ์์ต๋๋ค.
๋ชจ๋ ๋ฐฑ์ ์์คํ ์ ์ฌ์ฉํ์ฌ ๊ธฐ๋ฅ ๋งคํธ๋ฆญ์ค๋ฅผ ๋ง๋ค๊ณ ๋๋ด์ผ๋ก ์ด ๋งคํธ๋ฆญ์ค์ ํ๋ ฌ์์ ๊ณ์ฐํ๋ฉด XNUMX์ด ๋ฉ๋๋ค. ์ด๊ฒ์ ๋ฌด์์ ์๋ฏธ ํ๋๊ฐ? ํน์ ๋ฐฑ์ ํ์ผ์ ๊ฐ์ ธ์ค๋ฉด ๋ค๋ฅธ ๋ชจ๋ ํ์ผ์ ์กฐ๊ฐ๋ค๋ก ๊ตฌ์ฑํ ์ ์์ต๋๋ค. ๊ทธ๊ฒ์ ๊ตฌํ์ด ๋ ํนํ๊ณ , ๋ชฉ์ ์ด ๋ ํนํ๋ฉฐ, ๊ทธ ์์ ํฌํจ๋ ์์ด๋์ด๊ฐ ๋ ํนํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ๋ค์ ๋ชจ๋ ๊ตฌ์ฒด์ ์ ๋๋ค.
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋์ CitusData๋ WAL-G ํ๋ก์ ํธ๋ฅผ ์์ํ์ต๋๋ค. ํด๋ผ์ฐ๋ ํ๊ฒฝ์ ์ผ๋์ ๋๊ณ ๋ง๋ค์ด์ง ๋ฐฑ์ ์์คํ ์ ๋๋ค. ์ด์ CitusData๋ ์ด๋ฏธ Microsoft์ ์ผ๋ถ์ ๋๋ค. ๊ทธ ์๊ฐ ์ฐ๋ฆฌ๋ WAL-G์ ์ด๊ธฐ ๋ฆด๋ฆฌ์ค์ ์ ์๋ ์์ด๋์ด๊ฐ ์ ๋ง ๋ง์์ ๋ค์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๋ ์ด ํ๋ก์ ํธ์ ๊ธฐ์ฌํ๊ธฐ ์์ํ์ต๋๋ค.
ํ์ฌ ์ด ํ๋ก์ ํธ์๋ ์์ญ ๋ช ์ ๊ฐ๋ฐ์๊ฐ ์์ง๋ง WAL-G์ ์์ 10๋ช ์ ๊ธฐ์ฌ์์๋ 6๋ช ์ Yandexoids๊ฐ ํฌํจ๋ฉ๋๋ค. ์ฐ๋ฆฌ๋ ๊ฑฐ๊ธฐ์ ๋ง์ ์์ด๋์ด๋ฅผ ๊ฐ์ ธ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฌผ๋ก ์ฐ๋ฆฌ๋ ์ง์ ๊ตฌํํ๊ณ , ํ ์คํธํ๊ณ , ํ๋ก๋์ ์ ์ถ์ํ๊ณ , ์ง์ ์ฌ์ฉํ๊ณ , ๋๊ท๋ชจ WAL-G ์ปค๋ฎค๋ํฐ์ ์ํธ ์์ฉํ๋ฉด์ ๋ค์ ๋จ๊ณ๋ก ์ด๋ํ ์์น๋ฅผ ์ค์ค๋ก ํ์ ํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ์ ๊ด์ ์์ ๋ณด๋ฉด ์ด์ ์ฐ๋ฆฌ์ ๋ ธ๋ ฅ์ ๊ณ ๋ คํ ์ด ๋ฐฑ์ ์์คํ ์ ํด๋ผ์ฐ๋ ํ๊ฒฝ์ ์ต์ ์ด ๋์์ต๋๋ค. ์ด๋ ํด๋ผ์ฐ๋์์ Postgres๋ฅผ ๋ฐฑ์ ํ๋ ๋ฐ ๋๋ ์ต๊ณ ์ ๋น์ฉ์ ๋๋ค.
๋ฌด์จ ๋ป์ด์์? ์ฐ๋ฆฌ๋ ๋ฐฑ์ ์ด ์์ ํ๊ณ , ์ด์ ๋น์ฉ์ด ์ ๋ ดํ๋ฉฐ, ๋ณต์ ์๋๊ฐ ์ต๋ํ ๋นจ๋ผ์ผ ํ๋ค๋ ์๋นํ ํฐ ์์ด๋์ด๋ฅผ ์ถ์งํ๊ณ ์์์ต๋๋ค.
์ ์ด์ ๋น์ฉ์ด ์ ๋ ดํด์ผ ํฉ๋๊น? ์์๋ ๊ฒ์ด ์์ผ๋ฉด ๋ฐฑ์ ์ด ์๋ค๋ ๊ฒ์ ์ ์ ์์ต๋๋ค. ๋ชจ๋ ๊ฒ์ด ์ ์๋ํ๊ณ , CPU ๋ญ๋น๋ฅผ ์ต์ํํ๊ณ , ๋์คํฌ ๋ฆฌ์์ค๋ฅผ ์ต๋ํ ์ ๊ฒ ์ฌ์ฉํ๋ฉฐ, ๊ท์คํ ์๋น์ค์ ํ์ด๋ก๋๋ฅผ ๋ฐฉํดํ์ง ์๋๋ก ๊ฐ๋ฅํ ํ ์ ์ ๋ฐ์ดํธ๋ฅผ ๋คํธ์ํฌ์ ์ ์กํฉ๋๋ค.
์๋ฅผ ๋ค์ด ๊ด๋ฆฌ์๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํ๊ณ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ฌ ๊ธด๊ธํ๊ฒ ๊ณผ๊ฑฐ๋ก ๋์๊ฐ์ผ ํ๋ ๊ฒฝ์ฐ์ ๊ฐ์ด ๋ชจ๋ ๊ฒ์ด ์ค๋จ๋๋ฉด ๋ฐ์ดํฐ๋ฅผ ์ ์ํ๊ณ ์จ์ ํ๊ฒ ๋์ฐพ๊ธฐ๋ฅผ ์ํ๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ๋์ผ๋ก ๋ณต๊ตฌํ ์ ์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๋ ์ด ๊ฐ๋จํ ์์ด๋์ด๋ฅผ ํ๋ณดํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ ๊ตฌํํ ๊ฒ ๊ฐ์ต๋๋ค.
ํ์ง๋ง ๊ทธ๊ฒ ์ ๋ถ๋ ์๋๋๋ค. ์ฐ๋ฆฌ๋ ์์ ๊ฒ์ ํ๋ ๋ ์ํ์ต๋๋ค. ์ฐ๋ฆฌ๋ ๋ค์ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ํ์ต๋๋ค. ๋ชจ๋ ๊ณ ๊ฐ์ด Postgres๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ์๋๋๋ค. ์ด๋ค ์ฌ๋๋ค์ MySQL, MongoDB๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ปค๋ฎค๋ํฐ์์๋ ๋ค๋ฅธ ๊ฐ๋ฐ์๋ค์ด FoundationDB๋ฅผ ์ง์ํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด ๋ชฉ๋ก์ ์ง์์ ์ผ๋ก ํ์ฅ๋๊ณ ์์ต๋๋ค.
์ปค๋ฎค๋ํฐ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ํด๋ผ์ฐ๋์ ๊ด๋ฆฌ ํ๊ฒฝ์์ ์คํ๋๋ค๋ ์์ด๋์ด๋ฅผ ์ข์ํฉ๋๋ค. ๋ํ ๊ฐ๋ฐ์๋ ๋น์ฌ์ ๋ฐฑ์ ์์คํ ์ ํตํด Postgres์ ํจ๊ป ๊ท ์ผํ๊ฒ ๋ฐฑ์ ํ ์ ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ ์ง ๊ด๋ฆฌํฉ๋๋ค.
์ฐ๋ฆฌ๋ ์ด ์ด์ผ๊ธฐ์์ ๋ฌด์์ ๋ฐฐ์ ์ต๋๊น? ๊ฐ๋ฐ ๋ถ์๋ก์ ์ฐ๋ฆฌ ์ ํ์ ์ฝ๋ ๋ผ์ธ๋, ๋ช ๋ น๋ฌธ๋, ํ์ผ๋ ์๋๋๋ค. ์ฐ๋ฆฌ ์ ํ์ ํ ๋ฆฌํ์คํธ๊ฐ ์๋๋๋ค. ์ด๊ฒ์ด ์ฐ๋ฆฌ๊ฐ ์ปค๋ฎค๋ํฐ์ ์ ๋ฌํ๋ ์์ด๋์ด์ ๋๋ค. ์ด๊ฒ์ด ๊ธฐ์ ์ ์ ๋ฌธ์ฑ์ด์ ํด๋ผ์ฐ๋ ํ๊ฒฝ์ ํฅํ ๊ธฐ์ ์ ์์ง์์ ๋๋ค.
Postgres์ ๊ฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์์ต๋๋ค. ์ ๋ Postgres ์ฝ์ด๋ฅผ ๊ฐ์ฅ ์ข์ํฉ๋๋ค. ์ ๋ ์ปค๋ฎค๋ํฐ์ ํจ๊ป โโPostgres ์ฝ์ด๋ฅผ ๊ฐ๋ฐํ๋ ๋ฐ ๋ง์ ์๊ฐ์ ๋ณด๋ ๋๋ค.
๊ทธ๋ฌ๋ ์ฌ๊ธฐ์๋ Yandex.Cloud์ ๊ด๋ฆฌํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ๋ด๋ถ์ ์ค์น๋์ด ์๋ค๊ณ ๋งํด์ผ ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ Yandex.Mail์์ ์ค๋ ์ ์ ์์๋์์ต๋๋ค. ์ด์ Managed Postgres๋ก ์ด์ด์ง ์ ๋ฌธ์ฑ์ ๋ฉ์ผ์ด Postgres๋ก ์ด๋ํ๋ ค๊ณ ํ ๋ ์ถ์ ๋์์ต๋๋ค.
๋ฉ์ผ์ ์๊ตฌ ์ฌํญ์ ํด๋ผ์ฐ๋์ ๋งค์ฐ ์ ์ฌํฉ๋๋ค. ๋ฐ์ดํฐ์ ์ด๋ ์ง์ ์์๋ ์์์น ๋ชปํ ๊ธฐํ๊ธ์์ ์ฆ๊ฐ๋ก ํ์ฅํ ์ ์์ด์ผ ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฉ์ผ์๋ ๋์์์ด ๋ง์ ์์ฒญ์ ๋ณด๋ด๋ ์๋ง์ ์ฌ์ฉ์์ ์์ต ๊ฐ์ ์ฌ์ํจ์ด ์ด๋ฏธ ๋ก๋๋์ด ์์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ Postgres๋ฅผ ๊ฐ๋ฐํ๋ ํ์๊ฒ ์๋นํ ์ฌ๊ฐํ ๋์ ์ด์์ต๋๋ค. ๋น์์๋ ์ฐ๋ฆฌ๊ฐ ์ง๋ฉดํ ๋ชจ๋ ๋ฌธ์ ๊ฐ ์ปค๋ฎค๋ํฐ์ ๋ณด๊ณ ๋์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ฌํ ๋ฌธ์ ๋ ์ผ๋ถ ๋ค๋ฅธ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ํ ์ ๋ฃ ์ง์ ์์ค์์๋ ์ฌ์ง์ด ๋ ๋์ ์์ค์์๋ ์ผ๋ถ ์ฅ์์์ ์ปค๋ฎค๋ํฐ์ ์ํด ์์ ๋๊ณ ์์ ๋์์ต๋๋ค. ์ฆ, PgSQL ํด์ปค์๊ฒ ํธ์ง๋ฅผ ๋ณด๋ด๊ณ 40๋ถ ์ด๋ด์ ์๋ต์ ๋ฐ์ ์ ์๋ค. ์ผ๋ถ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ๋ฃ ์ง์์์๋ ๋ฒ๊ทธ๋ณด๋ค ์ฐ์ ์์๊ฐ ๋ ๋๋ค๊ณ ์๊ฐํ ์ ์์ต๋๋ค.
์ด์ Postgres์ ๋ด๋ถ ์ค์น์๋ ํํ๋ฐ์ดํธ ๊ท๋ชจ์ ๋ฐ์ดํฐ๊ฐ ํฌํจ๋ฉ๋๋ค. ์ด๋ ์ด๋น ์๋ฐฑ๋ง ๊ฑด์ ์์ฒญ์ ๋๋ค. ์ด๋ค์ ์์ฒ ๊ฐ์ ํด๋ฌ์คํฐ์ ๋๋ค. ๋งค์ฐ ๋๊ท๋ชจ์ ๋๋ค.
๊ทธ๋ฌ๋ ๋์์ค๊ฐ ์์ต๋๋ค. ๊ณ ๊ธ ๋คํธ์ํฌ ๋๋ผ์ด๋ธ๊ฐ ์๋ ์๋นํ ๋จ์ํ ํ๋์จ์ด์ ์กด์ฌํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ํฅ๋ฏธ๋ก์ด ์๋ก์ด ๊ฒ๋ค์ ์ํ ํ ์คํธ ํ๊ฒฝ์ด ์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ํ ์คํธ ํ๊ฒฝ์ ํน์ ์๊ฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ๋ฑ์ค์ ๋ด๋ถ ๋ถ๋ณ์ฑ์ด ์๋ฐ๋์์์ ๋ํ๋ด๋ ๋ฉ์์ง๋ฅผ ๋ฐ์์ต๋๋ค.
๋ถ๋ณ์ฑ์ ์ฐ๋ฆฌ๊ฐ ํญ์ ์ ์งํ๊ธฐ๋ฅผ ๊ธฐ๋ํ๋ ์ผ์ข ์ ๊ด๊ณ์ ๋๋ค.
์ฐ๋ฆฌ์๊ฒ๋ ๋งค์ฐ ์ค์ํ ์ํฉ์ ๋๋ค. ์ผ๋ถ ๋ฐ์ดํฐ๊ฐ ์์ค๋์์ ์ ์์์ ๋ํ๋ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฐ์ดํฐ ์์ค์ ๊ทธ์ผ๋ง๋ก ์ฌ์์ ๋๋ค.
๊ด๋ฆฌํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์ฐ๋ฆฌ๊ฐ ๋ฐ๋ฅด๋ ์ผ๋ฐ์ ์ธ ์๊ฐ์ ๋ ธ๋ ฅ์ ๊ธฐ์ธ์ฌ๋ ๋ฐ์ดํฐ๋ฅผ ์๊ธฐ๋ ์ด๋ ต๋ค๋ ๊ฒ์ ๋๋ค. ์๋์ ์ผ๋ก ์ ๊ฑฐํ๋๋ผ๋ ์ค๋ ๊ธฐ๊ฐ ๋์ ๋ถ์ฌ๋ฅผ ๋ฌด์ํด์ผ ํฉ๋๋ค. ๋ฐ์ดํฐ ๋ณด์์ ์ฐ๋ฆฌ๊ฐ ๋งค์ฐ ์ด์ฌํ ๋ฐ๋ฅด๋ ์ข ๊ต์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ฌ๊ธฐ์ ์ฐ๋ฆฌ๊ฐ ๋๋นํ ์ ์๋ ์ํฉ์ด ์์ ์ ์์์ ์์ํ๋ ์ํฉ์ด ๋ฐ์ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๋ ์ด๋ฐ ์ํฉ์ ๋๋นํ๊ธฐ ์์ํ์ต๋๋ค.
์ฐ๋ฆฌ๊ฐ ๊ฐ์ฅ ๋จผ์ ํ ์ผ์ ์์ฒ ๊ฐ์ ํด๋ฌ์คํฐ์์ ๋ก๊ทธ๋ฅผ ๋ฌป๋ ๊ฒ์ด์์ต๋๋ค. ๋ฐ์ดํฐ ํ์ด์ง ์ ๋ฐ์ดํธ๊ฐ ์์ค๋๋ ๋ฌธ์ ๊ฐ ์๋ ํ์จ์ด๊ฐ ์๋ ๋์คํฌ์ ์ด๋ค ํด๋ฌ์คํฐ๊ฐ ์๋์ง ๋ฐ๊ฒฌํ์ต๋๋ค. ๋ชจ๋ Postgres ๋ฐ์ดํฐ ์ฝ๋๋ฅผ ๋งํฌ์ ํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฐ์ดํฐ ์์์ ๊ฐ์งํ๋๋ก ์ค๊ณ๋ ์ฝ๋๋ก ๋ด๋ถ ๋ถ๋ณ์ฑ ์๋ฐ์ ๋ํ๋ด๋ ๋ฉ์์ง๋ฅผ ํ์ํ์ต๋๋ค.
์ด ํจ์น๋ ์ปค๋ฎค๋ํฐ์์ ๋ณ๋ค๋ฅธ ๋ ผ์ ์์ด ์ฌ์ค์ ์น์ธ๋์์ต๋๋ค. ์๋ํ๋ฉด ๊ฐ๊ฐ์ ํน์ ์ฌ๋ก์์ ๋ญ๊ฐ ๋์ ์ผ์ด ๋ฐ์ํ๊ณ ๋ก๊ทธ์ ๋ณด๊ณ ๋์ด์ผ ํ๋ค๋ ๊ฒ์ด ๋ช ๋ฐฑํ๊ธฐ ๋๋ฌธ์ ๋๋ค.
๊ทธ ํ, ๋ก๊ทธ๋ฅผ ์ค์บํ๋ ๋ชจ๋ํฐ๋ง์ด ๊ฐ๋ฅํด์ก์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์์ฌ์ค๋ฌ์ด ๋ฉ์์ง๊ฐ ์์ ๊ฒฝ์ฐ ๋น์ง๋ด๋น์๋ฅผ ๊นจ์ฐ๊ณ , ๋น์ง๋ด๋น์๋ ์ด๋ฅผ ์๋ฆฌํ๋ค.
ํ์ง๋ง! ๋ก๊ทธ ์ค์บ์ ํ๋์ ํด๋ฌ์คํฐ์์๋ ์ ๋ ดํ ์์ ์ด๊ณ , ์์ฒ ๊ฐ์ ํด๋ฌ์คํฐ์์๋ ์์ฒญ๋ ๋น์ฉ์ด ๋ญ๋๋ค.
์ฐ๋ฆฌ๋ ๋ค์๊ณผ ๊ฐ์ ํ์ฅ ๊ธฐ๋ฅ์ ์์ฑํ์ต๋๋ค.
์ด ํ์ฅ์ ์๋ฅผ ๋ค์ด ๋ค์ ์ ์ฅ์์ ์ฑํ๋์์ต๋๋ค.
ํ์ง๋ง ๊ทธ๊ฒ ์ ๋ถ๋ ์๋๋๋ค. ์ฐ๋ฆฌ๋ ์ธ๋ฑ์ค์์ ๋ถ๋ณ ์๋ฐ์ ์ฐพ๊ธฐ ์ํด ์ปค๋ฎค๋ํฐ์์ ๊ตฌ์ถํ ํ์ฅ ํ๋ก๊ทธ๋จ์ธ Amcheck๋ฅผ ์ฌ์ฉํ๊ธฐ ์์ํ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋๊ท๋ชจ๋ก ์ด์ํ๋ค ๋ณด๋ฉด ๋ฒ๊ทธ๊ฐ ์๋ค๋ ์ฌ์ค๋ ์๊ฒ ๋์์ต๋๋ค. ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ๋ค์ ๊ณ ์น๊ธฐ ์์ํ์ต๋๋ค. ์ฐ๋ฆฌ์ ์์ ์ฌํญ์ด ์น์ธ๋์์ต๋๋ค.
์ฐ๋ฆฌ๋ ์ด ํ์ฅ ํ๋ก๊ทธ๋จ์ด GiST ๋ฐ GIT ์ธ๋ฑ์ค๋ฅผ ๋ถ์ํ ์ ์๋ค๋ ๊ฒ์ ๋ฐ๊ฒฌํ์ต๋๋ค. ์ฐ๋ฆฌ๋ ๊ทธ๋ค์ ์ง์ํ๊ฒ ๋ง๋ค์์ต๋๋ค. ํ์ง๋ง ์ด ์ง์์ ๋น๊ต์ ์๋ก์ด ๊ธฐ๋ฅ์ด๊ณ ์ธ๋ถ ์ฌํญ์ด ๋ง๊ธฐ ๋๋ฌธ์ ์ฌ์ ํ ์ปค๋ฎค๋ํฐ์์ ๋ ผ์๋๊ณ ์์ต๋๋ค.
๋ํ ๋ณต์ ๋ฆฌ๋, ๋ง์คํฐ์ ์๋ฐ์ ๋ํ ์ธ๋ฑ์ค๋ฅผ ํ์ธํ ๋ ๋ชจ๋ ๊ฒ์ด ์ ์๋ํ์ง๋ง ๋ณต์ ๋ณธ, ํ๋ก์ด์์๋ ์์ ๊ฒ์์ด ๊ทธ๋ค์ง ํจ๊ณผ์ ์ด์ง ์๋ค๋ ๊ฒ๋ ๋ฐ๊ฒฌํ์ต๋๋ค. ๋ชจ๋ ๋ถ๋ณ์ฑ์ด ๊ฒ์ฌ๋๋ ๊ฒ์ ์๋๋๋ค. ๊ทธ๋ฆฌ๊ณ ํ๋์ ๋ถ๋ณ์ฑ์ ์ฐ๋ฆฌ๋ฅผ ๋งค์ฐ ๊ดด๋กญํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๋ ๋ณต์ ๋ณธ์ ๋ํ ์ด๋ฌํ ํ์ธ์ ๊ฐ๋ฅํ๊ฒ ํ๊ธฐ ์ํด ์ปค๋ฎค๋ํฐ์ ์ํตํ๋ ๋ฐ XNUMX๋ ๋ฐ์ ๋ณด๋์ต๋๋ค.
์ฐ๋ฆฌ๋ ๋ชจ๋ can... ํ๋กํ ์ฝ์ ๋ฐ๋ผ์ผ ํ๋ ์ฝ๋๋ฅผ ์์ฑํ์ต๋๋ค. ์ฐ๋ฆฌ๋ Crunchy Data์ Peter Gaghan๊ณผ ์ด ํจ์น์ ๋ํด ์ค๋ซ๋์ ๋ ผ์ํ์ต๋๋ค. ๊ทธ๋ ์ด ํจ์น๋ฅผ ์ ์ฉํ๊ธฐ ์ํด Postgres์ ๊ธฐ์กด B-ํธ๋ฆฌ๋ฅผ ์ฝ๊ฐ ์์ ํด์ผ ํ์ต๋๋ค. ๊ทธ๋ ๋ฐ์ ๋ค์ฌ์ก์ต๋๋ค. ์ด์ ๋ณต์ ๋ณธ์ ์ธ๋ฑ์ค๋ฅผ ํ์ธํ๋ ๊ฒ ๋ํ ์ฐ๋ฆฌ๊ฐ ์ง๋ฉดํ ์๋ฐ์ ๊ฐ์งํ ๋งํผ ์ถฉ๋ถํ ํจ๊ณผ์ ์ด๊ฒ ๋์์ต๋๋ค. ์ฆ, ๋์คํฌ ํ์จ์ด ์ค๋ฅ, Postgres ๋ฒ๊ทธ, Linux ์ปค๋ ๋ฒ๊ทธ, ํ๋์จ์ด ๋ฌธ์ ๋ก ์ธํด ๋ฐ์ํ ์ ์๋ ์๋ฐ ์ฌํญ์ ๋๋ค. ์ฐ๋ฆฌ๊ฐ ์ค๋นํ๊ณ ์๋ ๋ฌธ์ ์ ์์ธ์ ๋ํ ์๋นํ ๊ด๋ฒ์ํ ๋ชฉ๋ก์ ๋๋ค.
๊ทธ๋ฌ๋ ์ธ๋ฑ์ค ์ธ์๋ ํ๊ณผ ๊ฐ์ ๋ถ๋ถ, ์ฆ ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋๋ ์ฅ์๊ฐ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ํ์ธํ ์ ์๋ ๋ถ๋ณ๊ฐ์ด ๋ง์ง ์์ต๋๋ค.
Heapcheck๋ผ๋ ํ์ฅ ํ๋ก๊ทธ๋จ์ด ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ ๊ฐ๋ฐํ๊ธฐ ์์ํ์ต๋๋ค. ๋์์ EnterpriseDB ํ์ฌ๋ ์ฐ๋ฆฌ์ ํจ๊ป Heapcheck๋ผ๋ ๋ชจ๋์ ์์ฑํ๊ธฐ ์์ํ์ต๋๋ค. ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ PgHeapcheck๋ผ๊ณ ๋ถ๋ ๊ณ ๊ทธ๋ค์ ๋จ์ง Heapcheck๋ผ๊ณ ๋ถ๋ ์ต๋๋ค. ๊ธฐ๋ฅ์ ๋น์ทํ๊ณ ์๊ทธ๋์ฒ๋ ์ฝ๊ฐ ๋ค๋ฅด์ง๋ง ์์ด๋์ด๋ ๋์ผํฉ๋๋ค. ๊ทธ๋ค์ ์ด๋ค ๊ณณ์์๋ ๊ทธ๊ฒ๋ค์ ์กฐ๊ธ ๋ ์ ๊ตฌํํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ค์ ์ ์ ๊ทธ๊ฒ์ ์คํ ์์ค์ ๊ฒ์ํ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ด์ ์ฐ๋ฆฌ๋ ๊ทธ๋ค์ ํ์ฅ์ ๊ฐ๋ฐํ๊ณ ์์ต๋๋ค. ์๋ํ๋ฉด ๊ทธ๊ฒ์ ๋ ์ด์ ๊ทธ๋ค์ ํ์ฅ์ด ์๋๋ผ ์ปค๋ฎค๋ํฐ์ ํ์ฅ์ด๊ธฐ ๋๋ฌธ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ ์์ผ๋ก ๋ชจ๋ ์ฌ๋๋ค์๊ฒ ๋ฏธ๋์ ๋ฌธ์ ๋ฅผ ๋ฏธ๋ฆฌ ์ ์ ์๋๋ก ์ ๊ณต๋ ์ปค๋์ ์ผ๋ถ์ ๋๋ค.
์ด๋ค ๊ณณ์์๋ ๋ชจ๋ํฐ๋ง ์์คํ ์ ์คํ์ง๊ฐ ์๋ค๋ ๊ฒฐ๋ก ์ ๋๋ฌํ๊ธฐ๋ ํ์ต๋๋ค. ์๋ฅผ ๋ค์ด 1C ์์คํ ์ ๋๋ค. ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ์ฉํ ๋ Postgres๋ ๋๋๋ก ์ฝ์ ์ ์๋ ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋กํ์ง๋ง pg_dump๋ ์ฝ์ ์ ์์ต๋๋ค.
์ด ์ํฉ์ ์ฐ๋ฆฌ์ ๋ฌธ์ ๊ฐ์ง ์์คํ ์ด ์์๋ ๊ฒ์ฒ๋ผ ๋ณด์์ต๋๋ค. ๋ด๋น๊ด์ด ๊นจ์ด๋ฌ์ต๋๋ค. ๋ด๋น๊ด์ ๋ฌด์จ ์ผ์ด ์ผ์ด๋๊ณ ์๋์ง ์ดํด ๋ณด์์ต๋๋ค. ์ผ๋ง ํ ๊ณ ๊ฐ์ด ์์ ๋ฌธ์ ๊ฐ ์๋ค๊ณ ๋งํ์ต๋๋ค. ์น๋ฌด์์ ๋ฌธ์ ๊ฐ ๋ฌด์์ธ์ง ์ค๋ช ํ์ต๋๋ค. ๊ทธ๋ฌ๋ ๋ฌธ์ ๋ Postgres ์ฝ์ด์ ์์ต๋๋ค.
์ด ๊ธฐ๋ฅ์ ๋ํ ํ ๋ก ์ ์ฐพ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ ์ฐ๋ฆฌ๊ฐ ์ด ๊ธฐ๋ฅ์ ์ ํ๊ณ ๊ทธ๊ฒ์ด ๋ถ์พํ๋ค๊ณ ์ผ์ต๋๋ค. ํ ์ฌ๋์ด ๊ทธ๊ฒ์ด ๋ฌด์์ธ์ง ์์๋ด๊ธฐ ์ํด ๋ฐค์ ์ผ์ด๋ฌ์ต๋๋ค.
์ปค๋ฎค๋ํฐ์์๋ โ์, ์ ๋ง ๊ณ ์ณ์ผ ํ๋คโ๋ ๋ฐ์์ ๋ณด์์ต๋๋ค.
๋๋ ๊ฐ๋จํ ๋น์ ๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค. ๋ชจ๋์์ด ๋ค์ด์๋ ์ ๋ฐ์ ์ ๊ณ ๊ฑท๊ณ ์๋ค๋ฉด ์์น์ ์ผ๋ก ๊ณ์ ๋์๊ฐ ์ ์์ต๋๋ค. ๋ฌธ์ ์์ต๋๋ค. ์์ฒ ๋ช ์๊ฒ ๋ถ์ธ ๋ฅผ ํ๋ค๋ฉด ๋ชจ๋๊ฐ ์ ํ ์๋ ๋ถ์ธ ๋ฅผ ๋ง๋ค์ด๋ณด์. ๊ทธ๋ฆฌ๊ณ ์ ๋ฐ ์ฌ์ฉ์ ์ค ํ ๋ช ์ด ๋ง๋ผํค์ ๋ธ ์์ ์ด๋ผ๋ฉด ์์ฃผ ์ข์ ์ ๋ฐ์ ๋ง๋ค๊ณ ์ด๋ฅผ ๋ชจ๋ ์ฌ์ฉ์์๊ฒ ํ์ฅํ๊ณ ์ถ์ ๊ฒ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ฌํ ์์์น ๋ชปํ ์ฌ์ฉ์๋ ํญ์ ํด๋ผ์ฐ๋ ํ๊ฒฝ์ ์์ต๋๋ค. ์๋์ ๋ฐฉ์์ผ๋ก ํด๋ฌ์คํฐ๋ฅผ ์ด์ฉํ๋ ์ฌ์ฉ์๊ฐ ํญ์ ์์ต๋๋ค. ํญ์ ์ด์ ๋๋นํด์ผ ํฉ๋๋ค.
์ฐ๋ฆฌ๋ ์ฌ๊ธฐ์ ๋ฌด์์ ๋ฐฐ์ ๋์? ์ฐ๋ฆฌ๋ ๊ฐ๋จํ ๊ฒ์ ๋ฐฐ์ ์ต๋๋ค. ๊ฐ์ฅ ์ค์ํ ๊ฒ์ ๋ฌธ์ ๊ฐ ์๋ค๋ ๊ฒ์ ์ปค๋ฎค๋ํฐ์ ์ค๋ช ํ๋ ๊ฒ์ ๋๋ค. ์ปค๋ฎค๋ํฐ๊ฐ ๋ฌธ์ ๋ฅผ ์ธ์ํ๋ฉด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ์์ฐ์ค๋ฌ์ด ๊ฒฝ์์ด ๋ฐ์ํฉ๋๋ค. ๋ชจ๋๊ฐ ์ค์ํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ์ถ์ดํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋ชจ๋ ๊ณต๊ธ์ ์ฒด, ๋ชจ๋ ํด์ปค๋ ์์ ์ด ์ด ๊ฐํด๋ฅผ ๋ฐ์ ์ ์๋ค๋ ๊ฒ์ ์ดํดํ๊ณ ์์ผ๋ฏ๋ก ์ด๋ฅผ ์ ๊ฑฐํ๊ณ ์ถ์ดํฉ๋๋ค.
๋น์ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ์๋๋ฐ ๋น์ ์ธ์๋ ์๋ฌด๋ ๊ดด๋กญํ์ง ์์ง๋ง ์ฒด๊ณ์ ์ผ๋ก ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ๊ทธ๊ฒ์ด ๊ถ๊ทน์ ์ผ๋ก ๋ฌธ์ ๋ก ๊ฐ์ฃผ๋๋ค๋ฉด ๋น์ ์ ํ ์์ฒญ์ ํ์คํ ๋ฐ์๋ค์ฌ์ง ๊ฒ์ ๋๋ค. ํจ์น๊ฐ ์น์ธ๋๊ณ ๊ฐ์ ์ฌํญ์ด๋ ๊ฐ์ ์์ฒญ๋ ์ปค๋ฎค๋ํฐ์์ ๊ฒํ ๋ฉ๋๋ค. ๊ฒฐ๊ตญ ์ฐ๋ฆฌ๋ ์๋ก๋ฅผ ์ํด ๋ ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ง๋ญ๋๋ค.
ํฅ๋ฏธ๋ก์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ Greenplum์ ๋๋ค. ์ด๋ ์ ๊ฐ ๋งค์ฐ ์ ์๊ณ ์๋ Postgres ์ฝ๋๋ฒ ์ด์ค๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ ๊ณ ๋์ ๋ณ๋ ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ Greenplum์๋ ์ต์ ํ๋ ํ ์ด๋ธ์ ์ถ๊ฐํ๋ ํฅ๋ฏธ๋ก์ด ๊ธฐ๋ฅ์ด ์์ต๋๋ค. ๋น ๋ฅด๊ฒ ์ถ๊ฐํ ์ ์๋ ํ ์ด๋ธ์ ๋๋ค. ์ด ํ์์ด๊ฑฐ๋ ํ ํ์์ผ ์ ์์ต๋๋ค.
ํ์ง๋ง ํด๋ฌ์คํฐ๋ง์ด ์์์ต๋๋ค. ์ฆ, ์ธ๋ฑ์ค ์ค ํ๋์ ์๋ ์์์ ๋ฐ๋ผ ํ ์ด๋ธ์ ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฌํ ์ ์๋ ๊ธฐ๋ฅ์ด ์์์ต๋๋ค.
ํ์์์ ์จ ์ฌ๋๋ค์ด ๋์๊ฒ ์์ ๋งํ์ต๋๋ค. โAndrey, ๋น์ ์ Postgres๋ฅผ ์๊ณ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฌ๊ธฐ๋ ๊ฑฐ์ ๋์ผํฉ๋๋ค. 20๋ถ์ผ๋ก ์ ํํ์ธ์. ๋น์ ์ ๊ทธ๊ฒ์ ๊ฐ์ง๊ณ ๊ทธ๊ฒ์ ์ํํฉ๋๋ค.โ ๋๋ Postgres๋ฅผ ์๊ณ ์์ผ๋ฉฐ 20๋ถ ๋์ ์ ํํด์ผ ํ๋ค๊ณ ์๊ฐํ์ต๋๋ค.
ํ์ง๋ง ์๋, 20๋ถ์ด ์๋๊ณ ๋ช ๋ฌ์ ๊ฑธ์ณ ์ผ์ต๋๋ค. PgConf.Russia ์ปจํผ๋ฐ์ค์์ ์ ๋ Pivotal์ Heikki Linakangas์๊ฒ ์ ๊ทผํ์ฌ ์ด๋ ๊ฒ ๋ฌผ์์ต๋๋ค. โ์ด๊ฒ์ ๋ฌธ์ ๊ฐ ์์ต๋๊น? ์ถ๊ฐ ์ต์ ํ ํ ์ด๋ธ ํด๋ฌ์คํฐ๋ง์ด ์๋ ์ด์ ๋ ๋ฌด์์ ๋๊น?โ ๊ทธ๋ ์ด๋ ๊ฒ ๋งํฉ๋๋ค. โ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ๊ฐ์ธ์. ์ ๋ ฌํ๊ณ ์ฌ๋ฐฐ์ดํ์ธ์. ๊ทธ๋ฅ ์ง์ ์ผ ๋ฟ์ด์ผ." ๋: โ์, ๋ค, ๊ทธ๋ฅ ๊ฐ์ ธ๊ฐ์ ํ์๋ฉด ๋ฉ๋๋ค.โ ๊ทธ๋ ์ด๋ ๊ฒ ๋งํฉ๋๋ค. โ๊ทธ๋ ์ต๋๋ค. ์ด ์ผ์ ํ๋ ค๋ฉด ์์ด ์์ ๋ก์์ผ ํฉ๋๋ค.โ ์ด๊ฑด ๊ผญ ํด์ผ๊ฒ ๋ค๋ ์๊ฐ์ด ๋ค์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ช ๋ฌ ํ ์ ๋ ์ด ๊ธฐ๋ฅ์ ๊ตฌํํ๋ ํ ์์ฒญ์ ์ ์ถํ์ต๋๋ค. ์ด ํ ์์ฒญ์ ์ปค๋ฎค๋ํฐ์ ํจ๊ป โโPivotal์์ ๊ฒํ ๋์์ต๋๋ค. ๋ฌผ๋ก ๋ฒ๊ทธ๋ ์์์ต๋๋ค.
๊ทธ๋ฐ๋ฐ ๊ฐ์ฅ ํฅ๋ฏธ๋ก์ด ์ ์ ์ด ํ ๋ฆฌํ์คํธ๋ฅผ ๋ณํฉํ์ ๋ Greenplum ์์ฒด์์ ๋ฒ๊ทธ๊ฐ ๋ฐ๊ฒฌ๋์๋ค๋ ๊ฒ์ ๋๋ค. ์ฐ๋ฆฌ๋ ํ ํ ์ด๋ธ์ด ํด๋ฌ์คํฐ๋ง๋ ๋ ํธ๋์ญ์ ์ด ์ค๋จ๋๋ ๊ฒฝ์ฐ๊ฐ ์๋ค๋ ๊ฒ์ ๋ฐ๊ฒฌํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ ๋ฐ๋ก์ก์์ผ ํ ๋ฌธ์ ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ ๋ ๋ด๊ฐ ๋ฐฉ๊ธ ๋ง์ง ๊ณณ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋์ ์์ฐ์ค๋ฌ์ด ๋ฐ์์ โ ์์์ด, ๋๋ ํด๋ณด์.
์ด ๋ฒ๊ทธ๋ฅผ ์์ ํ์ต๋๋ค. ํด๊ฒฐ์ฌ์๊ฒ ํ ์์ฒญ์ ๋ณด๋์ต๋๋ค. ๊ทธ๋ ์ดํด ๋นํ๋ค.
๊ทธ ํ ์ด ๊ธฐ๋ฅ์ PostgreSQL 12์ฉ Greenplum ๋ฒ์ ์์ ์ป์ด์ผ ํ๋ค๋ ๊ฒ์ด ๋ฐํ์ก์ต๋๋ค. ์ฆ, 20๋ถ๊ฐ์ ๋ชจํ์ ์๋ก์ด ํฅ๋ฏธ๋ก์ด ๋ชจํ์ผ๋ก ๊ณ์๋ฉ๋๋ค. ์ปค๋ฎค๋ํฐ๊ฐ ์๋กญ๊ณ ๊ฐ์ฅ ์ค์ํ ๊ธฐ๋ฅ์ ์ญ์ ํ๊ณ ์๋ ํ์ฌ ๊ฐ๋ฐ์ ์ ํ๋ ๊ฒ์ ํฅ๋ฏธ๋ก์ ์ต๋๋ค. ๊ทธ๊ฒ์ ์ผ์๋ค.
ํ์ง๋ง ๊ฑฐ๊ธฐ์ ๋๋์ง ์์์ต๋๋ค. ๊ฒฐ๊ตญ ์ฐ๋ฆฌ๋ ์ด ๋ชจ๋ ๊ฒ์ ๋ํ ๋ฌธ์๋ฅผ ์์ฑํด์ผ ํ๋ค๋ ๊ฒ์ด ๋ฐํ์ก์ต๋๋ค.
๋๋ ๋ฌธ์๋ฅผ ์์ฑํ๊ธฐ ์์ํ์ต๋๋ค. ์ด ์ข๊ฒ๋ Pivotal์ ๋คํ๋ฉํฐ๋ฆฌ ์๊ฐ๋ค์ด ํจ๊ป ์์ต๋๋ค. ์์ด๋ ๊ทธ๋ค์ ๋ชจ๊ตญ์ด์ ๋๋ค. ๊ทธ๋ค์ ๋ฌธ์ ์์ฑ์ ๋์์ ์ฃผ์์ต๋๋ค. ์ฌ์ค, ๊ทธ๋ค์ ๋ด๊ฐ ์ ์ํ ๊ฒ์ ์ค์ ์์ด๋ก ๋ค์ ์ผ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ฌ๊ธฐ์ ๋ชจํ์ ๋๋ ๊ฒ ๊ฐ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ ๋ฌด์จ ์ผ์ด ์ผ์ด๋ฌ๋์ง ์์๋์? ํ์์์ ์จ ์ฌ๋๋ค์ด ๋์๊ฒ ์์ ๋งํ์ต๋๋ค. "์์ง 10๋ถ ๋์ ๋ ๊ฐ์ง ๋ชจํ์ด ์์ต๋๋ค." ๊ทธ๋ฆฌ๊ณ ๋๋ ๊ทธ๋ค์๊ฒ ๋ฌด์์ ๋งํด์ผ ํฉ๋๊น? ์ด์ ๊ท๋ชจ์ ๋ํ ๋ณด๊ณ ์๋ฅผ ์ ์ถํ๊ณ ๋์ ๋น์ ์ ๋ชจํ์ ์ง์ผ๋ณด๊ฒ ๋ค๊ณ ๋งํ์ต๋๋ค. ์๋ํ๋ฉด ์ด๊ฒ์ ํฅ๋ฏธ๋ก์ด ์ผ์ด๊ธฐ ๋๋ฌธ์ ๋๋ค.
์ด ์ฌ๊ฑด์์ ์ฐ๋ฆฌ๋ ๋ฌด์์ ๋ฐฐ์ ์ต๋๊น? ์คํ ์์ค๋ฅผ ์ฌ์ฉํ์ฌ ์์ ํ๋ ๊ฒ์ ํญ์ ํน์ ์ฌ๋๊ณผ ์์ ํ๋ ๊ฒ์ด๋ฏ๋ก ํญ์ ์ปค๋ฎค๋ํฐ์ ์์ ํ๋ ๊ฒ์ ๋๋ค. ์๋ํ๋ฉด ๋งค ๋จ๊ณ๋ง๋ค ๊ฐ๋ฐ์, ํ ์คํฐ, ํด์ปค, ๋คํ๋ฉํฐ๋ฆฌ ์๊ฐ, ์ค๊ณ์์ ํจ๊ป ์ผํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ ๋ Greenplum๊ณผ ํจ๊ป ์ผํ ๊ฒ์ด ์๋๋ผ Greenplum ์ฃผ๋ณ ์ฌ๋๋ค๊ณผ ํจ๊ป ์ผํ์ต๋๋ค.
ํ์ง๋ง! ๋ ๋ค๋ฅธ ์ค์ํ ์ ์ด ์์ต๋๋ค. ๊ทธ๊ฒ์ ๋จ์ง ์ผ์ ๋๋ค. ์ฆ, ์์ ์ปคํผ๋ฅผ ๋ง์๊ณ ์ฝ๋๋ฅผ ์์ฑํ๋ ๊ฒ์ ๋๋ค. ๋ชจ๋ ์ข ๋ฅ์ ๋จ์ ๋ถ๋ณ์ฑ์ด ์๋ํฉ๋๋ค. ํ์๋๋ก ํ์ธ์ - ๊ด์ฐฎ์ ๊ฑฐ์์! ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ ๊ฝค ํฅ๋ฏธ๋ก์ด ์ง์ ์ ๋๋ค. Yandex.Cloud ํด๋ผ์ด์ธํธ, Yandex ๋ด๋ถ ๋ฐ ์ธ๋ถ ํด๋ฌ์คํฐ ์ฌ์ฉ์๋ก๋ถํฐ ์ด ์์ ์ ๋ํ ์์ฒญ์ด ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๊ฐ ์ฐธ์ฌํ๋ ํ๋ก์ ํธ์ ์๋ ๋์ด๋๊ณ ์ฐธ์ฌ์ ๊น์ด๋ ์ปค์ง ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค.
๊ทธ๊ฒ ๋ค์ผ. ์ง๋ฌธ์ผ๋ก ๋์ด๊ฐ๊ฒ ์ต๋๋ค.
์ง๋ฌธ ์ธ์
์๋ ํ์ธ์! ๋ ๋ค๋ฅธ ์ง๋ฌธ๊ณผ ๋ต๋ณ ์ธ์ ์ด ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์คํ๋์ค์์ Andrei Borodin. ๋ฐฉ๊ธ Yandex.Cloud์ Yandex๊ฐ ์คํ ์์ค์ ๊ธฐ์ฌํ ๊ฒ์ ๋ํด ๋ง์๋๋ฆฐ ์ฌ๋์ ๋๋ค. ์ด์ ์ฐ๋ฆฌ ๋ณด๊ณ ์๋ ์ ์ ์ผ๋ก ํด๋ผ์ฐ๋์ ๊ดํ ๊ฒ์ด ์๋์ง๋ง ๋์์ ๊ทธ๋ฌํ ๊ธฐ์ ์ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค. Yandex ๋ด๋ถ์์ ์ํํ ์์ ์ด ์์๋ค๋ฉด Yandex.Cloud์ ์๋น์ค๊ฐ ์์์ ๊ฒ์ด๋ฏ๋ก ๊ฐ์ธ์ ์ผ๋ก ๊ฐ์ฌ๋๋ฆฝ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฐฉ์ก์์ ๋์จ ์ฒซ ๋ฒ์งธ ์ง๋ฌธ์ โ๋น์ ์ด ์ธ๊ธํ ๊ฐ ํ๋ก์ ํธ์๋ ์ด๋ค ๋ด์ฉ์ด ์ ํ์๋์?โ์์ต๋๋ค.
WAL-G์ ๋ฐฑ์ ์์คํ ์ Go๋ก ์์ฑ๋์์ต๋๋ค. ์ด๊ฒ์ ์ฐ๋ฆฌ๊ฐ ์์ ํ ์ต์ ํ๋ก์ ํธ ์ค ํ๋์ ๋๋ค. ๊ทธ๋ ๋ง ๊ทธ๋๋ก ๊ฒจ์ฐ 3 ์ด์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ข ์ข ์ ๋ขฐ์ฑ์ ๊ดํ ๊ฒ์ ๋๋ค. ์ด๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ๊ฝค ์ค๋๋์๊ณ ์ผ๋ฐ์ ์ผ๋ก C๋ก ์์ฑ๋๋ค๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. Postgres ํ๋ก์ ํธ๋ ์ฝ 30๋ ์ ์ ์์๋์์ต๋๋ค. ๊ทธ๋ ๋ค๋ฉด C89๊ฐ ์ฌ๋ฐ๋ฅธ ์ ํ์ด์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ ์์ Postgres๊ฐ ์์ฑ๋์์ต๋๋ค. ClickHouse์ ๊ฐ์ ์ต์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ผ๋ฐ์ ์ผ๋ก C++๋ก ์์ฑ๋ฉ๋๋ค. ๋ชจ๋ ์์คํ ๊ฐ๋ฐ์ C์ C++๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค.
Cloud์์ ๋น์ฉ์ ๋ด๋นํ๋ ์ฌ๋ฌด ๊ด๋ฆฌ์์ ์ง๋ฌธ: "Cloud๊ฐ ์คํ ์์ค ์ง์์ ๋์ ์ฐ๋ ์ด์ ๋ ๋ฌด์์ ๋๊น?"
์ฌ๊ธฐ์ ์ฌ๋ฌด ๊ด๋ฆฌ์๋ฅผ ์ํ ๊ฐ๋จํ ๋๋ต์ด ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ๋ ๋์ ์๋น์ค๋ฅผ ๋ง๋ค๊ธฐ ์ํด ์ด๋ ๊ฒ ํฉ๋๋ค. ์ฐ๋ฆฌ๋ ์ด๋ค ๋ฐฉ๋ฒ์ผ๋ก ๋ ์ํ ์ ์๋์? ์ฐ๋ฆฌ๋ ์ผ์ ๋์ฑ ํจ์จ์ ์ด๊ณ ๋น ๋ฅด๊ฒ ์ฒ๋ฆฌํ๋ฉฐ ์ผ์ ํ์ฅ์ฑ์ ๋์ผ ์ ์์ต๋๋ค. ํ์ง๋ง ์ฐ๋ฆฌ์๊ฒ ์์ด ์ด ์ด์ผ๊ธฐ๋ ์ฃผ๋ก ์ ๋ขฐ์ฑ์ ๊ดํ ๊ฒ์ ๋๋ค. ์๋ฅผ ๋ค์ด, ๋ฐฑ์ ์์คํ ์ ์ ์ฉ๋๋ ํจ์น๋ฅผ 100% ๊ฒํ ํฉ๋๋ค. ์ฐ๋ฆฌ๋ ์ฝ๋๊ฐ ๋ฌด์์ธ์ง ์๊ณ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ ๋ฒ์ ์ ํ๋ก๋์ ์ ์ถ์ํ๋ ๊ฒ์ด ๋ ํธ์ํด์ก์ต๋๋ค. ์ฆ, ์ฐ์ ์์ ๊ฐ, ๊ฐ๋ฐ ์ค๋น ์ํ ๋ฐ ์ ๋ขฐ์ฑ์ ๊ดํ ๊ฒ์ ๋๋ค.
๋ ๋ค๋ฅธ ์ง๋ฌธ: "Yandex.Cloud์ ๊ฑฐ์ฃผํ๋ ์ธ๋ถ ์ฌ์ฉ์์ ์๊ตฌ ์ฌํญ์ ๋ด๋ถ ํด๋ผ์ฐ๋์ ๊ฑฐ์ฃผํ๋ ๋ด๋ถ ์ฌ์ฉ์์ ์๊ตฌ ์ฌํญ๊ณผ ๋ค๋ฆ ๋๊น?"
๋ฌผ๋ก ๋ก๋ ํ๋กํ์ ๋ค๋ฆ ๋๋ค. ํ์ง๋ง ์ฐ๋ฆฌ ๋ถ์์ ๊ด์ ์์ ๋ณผ ๋ ํน๋ณํ๊ณ ํฅ๋ฏธ๋ก์ด ์ฌ๋ก๋ ๋ชจ๋ ๋นํ์ค ๋ถํ์์ ์์ฑ๋ฉ๋๋ค. ์์๋ ฅ์ด ์๋ ๊ฐ๋ฐ์, ์์์น ๋ชปํ ์ผ์ ํด๋ด๋ ๊ฐ๋ฐ์๋ ๋ด๋ถ์ ์ผ๋ก๋ ์ธ๋ถ์ ์ผ๋ก๋ ๋ฐ๊ฒฌ๋ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค. ์ด ์ ์์ ์ฐ๋ฆฌ๋ ๋ชจ๋ ๊ฑฐ์ ๋์ผํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์๋ง๋ Yandex ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ ์์ ์ ์ผํ๊ฒ ์ค์ํ ๊ธฐ๋ฅ์ Yandex ๋ด๋ถ์ ๊ต์ก์ด ์๋ค๋ ๊ฒ์ ๋๋ค. ์ด๋ ์์ ์์ ์ผ๋ถ ๊ฐ์ฉ์ฑ ์์ญ์ ์์ ํ ์๋์ฐ ์ํ๊ฐ ๋๋ฉฐ ๋ชจ๋ Yandex ์๋น์ค๋ ๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ ์ด๋ป๊ฒ๋ ๊ณ์ ์๋ํด์ผ ํฉ๋๋ค. ์ด๊ฒ์ ์์ ์ฐจ์ด์ ๋๋ค. ๊ทธ๋ฌ๋ ์ด๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋คํธ์ํฌ ์คํ์ ์ธํฐํ์ด์ค์์ ๋ง์ ์ฐ๊ตฌ ๊ฐ๋ฐ์ ์ฐฝ์ถํฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ์ธ๋ถ ๋ฐ ๋ด๋ถ ์ค์น์์ ๋์ผํ ๊ธฐ๋ฅ ์์ฒญ๊ณผ ์์ ์ฑ ๋ฐ ์ฑ๋ฅ ๊ฐ์ ์ ๋ํ ์ ์ฌํ ์์ฒญ์ด ์์ฑ๋ฉ๋๋ค.
๋ค์ ์ง๋ฌธ: โ๋น์ ์ด ํ๋ ์ผ ์ค ๋ง์ ๋ถ๋ถ์ด ๋ค๋ฅธ ํด๋ผ์ฐ๋์์ ์ฌ์ฉ๋๊ณ ์๋ค๋ ์ฌ์ค์ ๋ํด ๊ฐ์ธ์ ์ผ๋ก ์ด๋ป๊ฒ ์๊ฐํ์๋์?โ ๊ตฌ์ฒด์ ์ธ ์ด๋ฆ์ ๋ฐํ์ง๋ ์๊ฒ ์ง๋ง Yandex.Cloud์์ ์ํ๋ ๋ง์ ํ๋ก์ ํธ๊ฐ ๋ค๋ฅธ ์ฌ๋์ ํด๋ผ์ฐ๋์์ ์ฌ์ฉ๋๊ณ ์์ต๋๋ค.
์ด๊ฒ์ ๋ฉ์ง๋ค. ์ฒซ์งธ, ์ด๋ ์ฐ๋ฆฌ๊ฐ ์ณ์ ์ผ์ ํ๋ค๋ ํ์์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ ์์๋ฅผ ๊ธ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๋ ์ฌ๋ฐ๋ฅธ ๊ฒฐ์ ์ ๋ด๋ ธ๋ค๊ณ ๋์ฑ ํ์ ํฉ๋๋ค. ๋ฐ๋ฉด์ ์ด๊ฒ์ ์์ผ๋ก ์ฐ๋ฆฌ์๊ฒ ์๋ก์ด ์์ด๋์ด์ ์ 30์ ์ฌ์ฉ์์ ์๋ก์ด ์์ฒญ์ ๊ฐ์ ธ์ฌ ๊ฒ์ด๋ผ๋ ํฌ๋ง์ ๋๋ค. GitHub์ ๋๋ถ๋ถ์ ๋ฌธ์ ๋ ๊ฐ๋ณ ์์คํ ๊ด๋ฆฌ์, ๊ฐ๋ณ DBA, ๊ฐ๋ณ ์ค๊ณ์, ๊ฐ๋ณ ์์ง๋์ด์ ์ํด ์์ฑ๋์ง๋ง ๋๋ก๋ ์ฒด๊ณ์ ์ธ ๊ฒฝํ์ ๊ฐ์ง ์ฌ๋๋ค์ด ์์ ํน์ ์ฌ๋ก์ XNUMX%์์ ์ด ๋ฌธ์ ๊ฐ ์๋ค๊ณ ๋งํ๊ณ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์๊ฐํด ๋ด ์๋ค. ์ด๊ฒ์ด ์ฐ๋ฆฌ๊ฐ ๊ฐ์ฅ ๊ธฐ๋ํ๋ ๊ฒ์ ๋๋ค. ์ฐ๋ฆฌ๋ ๋ค๋ฅธ ํด๋ผ์ฐ๋ ํ๋ซํผ๊ณผ ๊ฒฝํ์ ๊ณต์ ํ๊ธฐ๋ฅผ ๊ธฐ๋ํฉ๋๋ค.
๋ง๋ผํค ์๊ธฐ๋ฅผ ๋ง์ด ํ๋๊ตฐ์. ๋๋ ๋น์ ์ด ๋ชจ์คํฌ๋ฐ์์ ๋ง๋ผํค์ ๋ด ๊ฒ์ ์๊ณ ์์ต๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก? PostgreSQL์ ์ฌ๋๋ค์ ๋ฅ๊ฐํ๋์?
์๋์, Oleg Bartunov๋ ๋งค์ฐ ๋น ๋ฅด๊ฒ ๋ฌ๋ฆฝ๋๋ค. ๊ทธ๋ ๋๋ณด๋ค ํ ์๊ฐ ๋จผ์ ์ผ์ ๋ง์ณค๋ค. ์ ๋ฐ์ ์ผ๋ก ๋๋ ์ง๊ธ๊น์ง ๋๋ฌํ ๊ฒ์ ๋ง์กฑํฉ๋๋ค. ๋์๊ฒ๋ ๋ง๋ฌด๋ฆฌํ๋ ๊ฒ๋ง์ผ๋ก๋ ์ฑ๊ณผ์๋ค. ์ ๋ฐ์ ์ผ๋ก Postgres ์ปค๋ฎค๋ํฐ์ ์คํ์๊ฐ ๋๋ฌด ๋ง๋ค๋ ๊ฒ์ ๋๋ผ์ด ์ผ์ ๋๋ค. ์ ๊ฐ ๋ณด๊ธฐ์๋ ์์ด๋ก๋น ์คํฌ์ธ ์ ์์คํ ํ๋ก๊ทธ๋๋ฐ์ ๋ํ ์๊ตฌ ์ฌ์ด์ ์ผ์ข ์ ๊ด๊ณ๊ฐ ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
ํด๋ฆญํ์ฐ์ค์ ์ฃผ์๊ฐ ์๋ค๋ ๊ฒ๋๊น?
๋๋ ๊ทธ๋ค์ด ๊ฑฐ๊ธฐ์ ์๋ค๋ ๊ฒ์ ํ์คํ ์๊ณ ์์ต๋๋ค. ClickHouse๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ด๊ธฐ๋ ํฉ๋๋ค. ๊ทธ๊ฑด ๊ทธ๋ ๊ณ , Oleg๋ ์ง๊ธ ๋์๊ฒ ํธ์ง๋ฅผ ์ฐ๊ณ ์์ต๋๋ค. "๋ณด๊ณ ํ ๋ฌ๋ฆฌ๊ธฐํ๋ฌ ๊ฐ๊น์?" ์ด๊ฒ์ ์ข์ ์๊ฐ์ ๋๋ค.
Nikita์ ๋ฐฉ์ก์์ ๋์จ ๋ ๋ค๋ฅธ ์ง๋ฌธ: "์ Greenplum์ ๋ฒ๊ทธ๋ฅผ ์ง์ ์์ ํ๊ณ ํ๋ฐฐ๋ค์๊ฒ ์ฃผ์ง ์์๋์?" ์ฌ์ค, ๋ฒ๊ทธ๊ฐ ๋ฌด์์ธ์ง, ์ด๋ค ์๋น์ค์ ์๋์ง๋ ๋ช ํํ์ง ์์ง๋ง ์๋ง๋ ๋น์ ์ด ๋งํ ๋ฒ๊ทธ๋ฅผ ์๋ฏธํ ๊ฒ์ ๋๋ค.
๋ค, ์์น์ ์ผ๋ก๋ ๋๊ตฐ๊ฐ์๊ฒ ์ฃผ์ด์ง ์๋ ์์์ต๋๋ค. ๋ฐฉ๊ธ ๋ณ๊ฒฝํ ์ฝ๋์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ณง๋ฐ๋ก ๊ทธ ์ผ์ ๊ณ์ํ๋ ๊ฒ์ ๋น์ฐํ๋ค. ์์น์ ์ผ๋ก๋ ํ๊ณผ ์ ๋ฌธ ์ง์์ ๊ณต์ ํ๋ ์์ด๋์ด๊ฐ ์ข์ต๋๋ค. ์ฐ๋ฆฌ ๋ถ์์ ๋ชจ๋ ๊ตฌ์ฑ์์ Greenplum ์์ ์ ๋ฐ๋์ ๊ณต์ ํ ๊ฒ์ ๋๋ค.
ํ๋ฐฐ ์๊ธฐ๋๊น ์ง๋ฌธ ํ๋ ๋๋ฆฝ๋๋ค. ๊ทธ ์ฌ๋์ Postgres์์ ์ฒซ ๋ฒ์งธ ์ปค๋ฐ์ ๋ง๋ค๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ์ฒซ ๋ฒ์งธ ์ปค๋ฐ์ ํ๋ ค๋ฉด ์ด๋ป๊ฒ ํด์ผ ํฉ๋๊น?
์ด๊ฒ์ ํฅ๋ฏธ๋ก์ด ์ง๋ฌธ์ ๋๋ค. โ์ด๋์๋ถํฐ ์์ํด์ผ ํ ๊น์?โ ์ผ๋ฐ์ ์ผ๋ก ์ปค๋์์ ๋ฌด์ธ๊ฐ๋ฅผ ์์ํ๋ ๊ฒ์ ๋งค์ฐ ์ด๋ ต์ต๋๋ค. ์๋ฅผ ๋ค์ด Postgres์๋ ํ ์ผ ๋ชฉ๋ก์ด ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ฌ์ค ์ด๊ฒ์ ๊ทธ๋ค์ด ์๋ํ์ง๋ง ์ฑ๊ณตํ์ง ๋ชปํ ๊ฒ์ ๋ํ ์ํธ์ ๋๋ค. ์ด๊ฒ๋ค์ ๋ณต์กํ ๊ฒ๋ค์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ผ๋ฐ์ ์ผ๋ก ์ปค๋ ๊ฐ๋ฐ์์ ๊ด์ฌ์ ๋ ๋๋ ์ผ๋ถ ์ ํธ๋ฆฌํฐ, ๊ฐ์ ํ ์ ์๋ ํ์ฅ ๊ธฐ๋ฅ์ ์ํ๊ณ์์ ์ฐพ์ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ๊ฑฐ๊ธฐ์๋ ๋ ๋ง์ ์ฑ์ฅ ํฌ์ธํธ๊ฐ ์์ต๋๋ค. Google Summer of Code ํ๋ก๊ทธ๋จ์์ ๋งค๋ Postgres ์ปค๋ฎค๋ํฐ๋ ๋ค๋ฃฐ ์ ์๋ ๋ค์ํ ์ฃผ์ ๋ฅผ ์ ์ํฉ๋๋ค. ์ฌํด์๋ ํ์์ด ์ธ ๋ช ์์๋ ๊ฒ ๊ฐ์์. ํ ์ฌ๋์ Yandex์ ์ค์ํ ์ฃผ์ ์ ๋ํด WAL-G์ ๊ธ์ ์ฐ๊ธฐ๋ ํ์ต๋๋ค. Greenplum์์๋ Greenplum ํด์ปค๊ฐ ํ ์์ฒญ์ ๋งค์ฐ ์ ์ฒ๋ฆฌํ๊ณ ์ฆ์ ๊ฒํ ๋ฅผ ์์ํ๊ธฐ ๋๋ฌธ์ Postgres ์ปค๋ฎค๋ํฐ๋ณด๋ค ๋ชจ๋ ๊ฒ์ด ๋ ๊ฐ๋จํฉ๋๋ค. Postgres์ ํจ์น๋ฅผ ๋ณด๋ด๋ ๊ฒ์ ๋ช ๋ฌ์ด ๊ฑธ๋ฆฌ์ง๋ง Greenplum์ ํ๋ฃจ ์์ ์์ ์ฌ๋ฌ๋ถ์ด ์ํํ ์์ ์ ํ์ธํ ๊ฒ์ ๋๋ค. ๋ ๋ค๋ฅธ ์ ์ Greenplum์ด ํ์ฌ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด์ผ ํ๋ค๋ ๊ฒ์ ๋๋ค. Greenplum์ ๋๋ฆฌ ์ฌ์ฉ๋์ง ์์ผ๋ฏ๋ก ๋ฌธ์ ๋ฅผ ์ฐพ๋ ๊ฒ์ด ๋งค์ฐ ์ด๋ ต์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฌด์๋ณด๋ค๋ ๋จผ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด์ผ ํฉ๋๋ค.
์ถ์ฒ : habr.com