Amazon Web Services ํ•œ๊ตญ ๋ธ”๋กœ๊ทธ

Amazon Aurora DSQL ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์ถœ์‹œ โ€“ ์„œ๋ฒ„๋ฆฌ์Šค ๊ธ€๋กœ๋ฒŒ ๋ถ„์‚ฐ SQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

์ง€๊ธˆ์œผ๋กœ ๋ถ€ํ„ฐ 10๋…„์ „ AWS๋Š” ์ƒ์šฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ 1/10 ๋น„์šฉ์œผ๋กœ MySQL ๋ฐ PostgreSQL๊ณผ ์™„๋ฒฝํ•˜๊ฒŒ ํ˜ธํ™˜๋˜๋Š” ํƒ์›”ํ•œ ์„ฑ๋Šฅ๊ณผ ๊ฐ€์šฉ์„ฑ์„ ์ œ๊ณตํ•˜๋Š” Amazon Aurora๋ฅผ ์ถœ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ, ์ด์ „ ๋ณด๋‹ค ๊ด€๋ฆฌ๊ฐ€ ๋” ์‰ฝ๊ณ , ์›Œํฌ๋กœ๋“œ์— ๋”ฐ๋ผ ํ™•์žฅ ๋ฐ ์ถ•์†Œ๋˜๋ฉฐ, ๊ณ ๊ฐ€์šฉ์„ฑ ๋ฉ€ํ‹ฐ ๋ฆฌ์ „ ๋ฐ ๋ฉ€ํ‹ฐ AZ ์•„ํ‚คํ…์ฒ˜๋ฅผ ๋” ์‰ฝ๊ฒŒ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ๋Š” ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์š”๊ตฌํ•˜๋Š” ๊ณ ๊ฐ์˜ ํ”ผ๋“œ๋ฐฑ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

์˜ค๋Š˜ ๊ฐ€์žฅ ๋น ๋ฅธ ์„œ๋ฒ„๋ฆฌ์Šค ๋ถ„์‚ฐ SQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ธ Amazon Aurora DSQL์„ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋กœ ์ถœ์‹œํ•ฉ๋‹ˆ๋‹ค. Aurora DSQL์€ ์‚ฌ์‹ค์ƒ ๋ฌด์ œํ•œ์˜ ํ™•์žฅ์„ฑ๊ณผ ์ตœ๊ณ ์˜ ๊ฐ€์šฉ์„ฑ ๋ฐ ์ œ๋กœ ์ธํ”„๋ผ ๊ด€๋ฆฌ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ƒค๋”ฉ์ด๋‚˜ ์ธ์Šคํ„ด์Šค ์—…๊ทธ๋ ˆ์ด๋“œ ์—†์ด ๋ชจ๋“  ์›Œํฌ๋กœ๋“œ ์ˆ˜์š”์— ๋งž๊ฒŒ ํ™•์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ˜์‹ ์ ์ธ ์•กํ‹ฐ๋ธŒ-์•กํ‹ฐ๋ธŒ(Active-Active) ๋ถ„์‚ฐ ์•„ํ‚คํ…์ฒ˜๋ฅผ ๊ฐ–์ถ˜ Aurora DSQL์€ ๋‹จ์ผ ๋ฆฌ์ „ ๊ตฌ์„ฑ์—์„œ 99.99%, ๋ฉ€ํ‹ฐ ๋ฆฌ์ „ ๊ตฌ์„ฑ์—์„œ 99.999%์˜ ๊ฐ€์šฉ์„ฑ์„ ์ œ๊ณตํ•˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ์œผ๋ฉฐ, ํ˜์‹ ์ ์ธ ์•กํ‹ฐ๋ธŒ-์•กํ‹ฐ๋ธŒ ๋ถ„์‚ฐ ์•„ํ‚คํ…์ฒ˜๋ฅผ ๊ฐ–์ถ”๊ณ  ์žˆ์–ด ๊ณ ๊ฐ€์šฉ์„ฑ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐ ์ด์ƒ์ ์ž…๋‹ˆ๋‹ค.

์„œ๋ฒ„๋ฆฌ์Šค ์„ค๊ณ„๋ฅผ ํ†ตํ•ด ํŒจ์น˜, ์—…๊ทธ๋ ˆ์ด๋“œ, ์œ ์ง€ ๊ด€๋ฆฌ ์ค‘๋‹จ ์‹œ๊ฐ„ ๋“ฑ์˜ ์šด์˜ ๋ถ€๋‹ด์„ ์—†์• ์ค๋‹ˆ๋‹ค. ๋˜ํ•œ Aurora DSQL์€ ๋ช‡ ๋‹จ๊ณ„๋งŒ ๊ฑฐ์น˜๋ฉด ๋น ๋ฅธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ƒ์„ฑ์œผ๋กœ ์‹œ์ž‘ํ•˜๋Š” ๊ฐ„๋‹จํ•œ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. Aurora DSQL์€ PostgreSQL๊ณผ ํ˜ธํ™˜๋˜๋ฏ€๋กœ ๊ฐœ๋ฐœ์ž๋Š” ์ž˜ ์•Œ๋ ค์ง„ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐœ๋…๊ณผ ์ด๋ฏธ ์•Œ๊ณ  ์žˆ๋Š” ๋“œ๋ผ์ด๋ฒ„, ๋„๊ตฌ ๋ฐ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹ ์†ํ•˜๊ฒŒ ๊ตฌ์ถ•ํ•˜๊ณ  ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Aurora DSQL ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ด์ 
Aurora DSQL์€ ๊ตฌ์„ฑ ์š”์†Œ ์žฅ์•  ๋˜๋Š” ๊ฐ€์šฉ ์˜์—ญ(AZ) ์ค‘๋‹จ ์‹œ, ์„œ๋น„์Šค๋ฅผ ์ง€์†ํ•˜๋Š” ๋‹จ์ผ ๋ฆฌ์ „ ๊ตฌ์„ฑ๊ณผ ๋ฉ€ํ‹ฐ AZ ์žฅ์• ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋ฉด์„œ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๋ฐ ์ €์žฅ ์œ„์น˜๋ฅผ ์™„๋ฒฝํ•˜๊ฒŒ ์ œ์–ดํ•˜๋Š” ๋ฉ€ํ‹ฐ ๋ฆฌ์ „ ๊ตฌ์„ฑ์˜ ๋‘ ๊ฐ€์ง€ ๊ตฌ์„ฑ์œผ๋กœ ์‹คํ–‰๋˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ณ ์œ ํ•œ ์„ธ๋ถ„ํ™”๋œ ์•กํ‹ฐ๋ธŒ-์•กํ‹ฐ๋ธŒ ์•„ํ‚คํ…์ฒ˜๋Š” ์žฅ์•  ์กฐ์น˜ ๋˜๋Š” ์ „ํ™˜์œผ๋กœ ์ธํ•œ ๋‹ค์šดํƒ€์ž„์„ ์ œ๊ฑฐํ•˜์—ฌ ๊ณ ๊ฐ€์šฉ์„ฑ ๋ฐ ๋น„์ฆˆ๋‹ˆ์Šค ์—ฐ์†์„ฑ์„ ์‰ฝ๊ฒŒ ์„ค๊ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

1. ๋‹จ์ผ ๋ฆฌ์ „ ๊ตฌ์„ฑ
Aurora DSQL์€ 3๊ฐœ์˜ AZ์—์„œ ์•กํ‹ฐ๋ธŒ-์•กํ‹ฐ๋ธŒ์ธ ๋‹จ์ผ ๋ฆฌ์ „ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ œ๊ณตํ•˜์—ฌ ๋ณต์ œ ์ง€์—ฐ๊ณผ ๊ธฐ์กด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์žฅ์•  ์กฐ์น˜ ์ž‘์—…์„ ์ตœ์†Œํ™”ํ•ฉ๋‹ˆ๋‹ค. ํ•˜๋“œ์›จ์–ด ๋˜๋Š” ์ธํ”„๋ผ์— ์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ ์ˆ˜๋™ ๊ฐœ์ž… ์—†์ด ์ •์ƒ์ ์ธ ์ธํ”„๋ผ๋กœ ์š”์ฒญ์„ ์ž๋™์œผ๋กœ ๋ผ์šฐํŒ…ํ•ฉ๋‹ˆ๋‹ค. Aurora DSQL์˜ ํŠธ๋žœ์žญ์…˜์€ ์ง€์—ฐ ์‹œ๊ฐ„์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์„ ์ตœ์†Œํ™”ํ•˜๋ฉด์„œ ์—ฌ๋Ÿฌ ๋ฆฌ์ „์— ๊ฑธ์ณ ๋ชจ๋“  ACID ์†์„ฑ(์›์ž์„ฑ, ์ผ๊ด€์„ฑ, ๊ฒฉ๋ฆฌ ๋ฐ ๋‚ด๊ตฌ์„ฑ)์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๊ฐ•๋ ฅํ•œ ์Šค๋ƒ…์ƒท ๊ฒฉ๋ฆฌ๋ฅผ ๊ตฌํ˜„ํ•˜๊ณ  ํด๋Ÿฌ์Šคํ„ฐ ์—”๋“œํฌ์ธํŠธ์— ๋Œ€ํ•œ ์ฝ๊ธฐ ๋ฐ ์“ฐ๊ธฐ์— ๋Œ€ํ•œ ๊ฐ•๋ ฅํ•œ ๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๋‹ค์Œ ๋‹ค์ด์–ด๊ทธ๋žจ์€ ๋‹จ์ผ ๋ฆฌ์ „ ๋ฐฐํฌ์—์„œ Aurora DSQL์˜ ๊ณ ๊ฐ€์šฉ์„ฑ ํด๋Ÿฌ์Šคํ„ฐ ํ† ํด๋กœ์ง€๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

๋‹จ์ผ ๋ฆฌ์ „ ๊ตฌ์„ฑ์—์„œ Aurora DSQL์€ ๋ชจ๋“  ์“ฐ๊ธฐ ํŠธ๋žœ์žญ์…˜์„ ๋ถ„์‚ฐ ํŠธ๋žœ์žญ์…˜ ๋กœ๊ทธ์— ์ปค๋ฐ‹ํ•˜๊ณ , ์ปค๋ฐ‹๋œ ๋ชจ๋“  ๋กœ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ 3๊ฐœ์˜ AZ์— ์žˆ๋Š” ์‚ฌ์šฉ์ž ์Šคํ† ๋ฆฌ์ง€ ๋ณต์ œ๋ณธ์— ๋™๊ธฐ์‹์œผ๋กœ ๋ณต์ œํ•ฉ๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ ์Šคํ† ๋ฆฌ์ง€ ๋ณต์ œ๋ณธ์€ ์ตœ์ ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ฑ๋Šฅ์„ ์œ„ํ•ด ์Šคํ† ๋ฆฌ์ง€ ํ”Œ๋ฆฟ์— ๋ถ„์‚ฐ๋ฉ๋‹ˆ๋‹ค. Aurora DSQL์€ ์ž๋™ํ™”๋œ ์žฅ์•  ์กฐ์น˜ ๋ณต๊ตฌ๋ฅผ ์œ„ํ•ด ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ตฌ์„ฑ ์š”์†Œ ๋˜๋Š” AZ๊ฐ€ ์†์ƒ๋˜๋ฉด ์ž๋™์œผ๋กœ ์ •์ƒ์ ์ธ ๊ตฌ์„ฑ ์š”์†Œ๋กœ ์•ก์„ธ์Šค๋ฅผ ๋ฆฌ๋””๋ ‰์…˜ํ•˜๊ณ  ๋ณต์ œ๋ณธ์„ ๋น„๋™๊ธฐ์‹์œผ๋กœ ๋ณต๊ตฌํ•ฉ๋‹ˆ๋‹ค. ์†์ƒ๋œ ๋ณต์ œ๋ณธ์ด ๋ณต์›๋˜๋ฉด Aurora DSQL์€ ์ž๋™์œผ๋กœ ํ•ด๋‹น ๋ณต์ œ๋ณธ์„ ์Šคํ† ๋ฆฌ์ง€ ์ฟผ๋Ÿผ์— ๋‹ค์‹œ ์ถ”๊ฐ€ํ•˜๊ณ  ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

2. ๋ฉ€ํ‹ฐ ๋ฆฌ์ „ ๊ตฌ์„ฑ
๋ฉ€ํ‹ฐ ๋ฆฌ์ „ ํด๋Ÿฌ์Šคํ„ฐ๋Š” ๋‹จ์ผ ๋ฆฌ์ „ ํด๋Ÿฌ์Šคํ„ฐ์™€ ๋™์ผํ•œ ๋ณต์›๋ ฅ๊ณผ ์—ฐ๊ฒฐ์„ฑ์„ ์ œ๊ณตํ•˜๋Š” ๋™์‹œ์— ๊ฐ ์—ฐ๊ฒฐ๋œ ๋ฆฌ์ „(Linked Region)์— ํ•˜๋‚˜์”ฉ ๋‘ ๊ฐœ์˜ ๋ฆฌ์ „ ์—”๋“œํฌ์ธํŠธ๋ฅผ ํ†ตํ•ด ๊ฐ€์šฉ์„ฑ์„ ๊ฐœ์„ ํ•ฉ๋‹ˆ๋‹ค. ์—ฐ๊ฒฐ๋œ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋‘ ์—”๋“œํฌ์ธํŠธ๋Š” ๋ชจ๋‘ ๋‹จ์ผ ๋…ผ๋ฆฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ œ๊ณตํ•˜๋ฉฐ ๊ฐ•๋ ฅํ•œ ๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑ์œผ๋กœ ๋™์‹œ ์ฝ๊ธฐ ๋ฐ ์“ฐ๊ธฐ ์ž‘์—…์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์ง€๋ฆฌ์  ์œ„์น˜, ์„ฑ๋Šฅ ๋˜๋Š” ๋ณต์›๋ ฅ์„ ์œ„ํ•ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์—ฐ๊ฒฐ์˜ ๊ท ํ˜•์„ ๋งž์ถœ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๋…์ž๊ฐ€ ๋™์ผํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ผ๊ด€๋˜๊ฒŒ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Aurora DSQL์€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ตœ๊ณ ์˜ ๋ณต์›๋ ฅ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ 99.999%์˜ ๋ฉ€ํ‹ฐ ๋ฆฌ์ „ ๊ฐ€์šฉ์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๋‹ค์Œ ๋‹ค์ด์–ด๊ทธ๋žจ์€ Aurora DSQL ๋ฉ€ํ‹ฐ ๋ฆฌ์ „ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์•„ํ‚คํ…์ฒ˜๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

๋ฉ€ํ‹ฐ ๋ฆฌ์ „ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๋ฉด Aurora DSQL์€ ๋‹ค๋ฅธ ๋ฆฌ์ „์— ๋‹ค๋ฅธ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ํ•จ๊ป˜ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค. ์—ฐ๊ฒฐ๋œ ๋ฆฌ์ „์„ ์ถ”๊ฐ€ํ•˜๋ฉด ์ปค๋ฐ‹๋œ ํŠธ๋žœ์žญ์…˜์˜ ๋ชจ๋“  ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ๋‹ค๋ฅธ ์—ฐ๊ฒฐ๋œ ๋ฆฌ์ „์œผ๋กœ ๋ณต์ œ๋ฉ๋‹ˆ๋‹ค. ๊ฐ ์—ฐ๊ฒฐ๋œ ํด๋Ÿฌ์Šคํ„ฐ์—๋Š” ๋ฆฌ์ „ ์—”๋“œํฌ์ธํŠธ๊ฐ€ ์žˆ์œผ๋ฉฐ, Aurora DSQL์€ ๋ฆฌ์ „ ๊ฐ„์— ์“ฐ๊ธฐ๋ฅผ ๋™๊ธฐ์‹์œผ๋กœ ๋ณต์ œํ•˜์—ฌ ๋ชจ๋“  ์—ฐ๊ฒฐ๋œ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ๊ฐ•๋ ฅํ•œ ์ผ๊ด€๋œ ์ฝ๊ธฐ ๋ฐ ์“ฐ๊ธฐ๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.

์„ธ ๋ฒˆ์งธ ๋ฆฌ์ „์€ ๊ฐ์‹œ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ์‹œ ๋ฆฌ์ „(Witness Region)์€ ์—ฐ๊ฒฐ๋œ ํด๋Ÿฌ์Šคํ„ฐ์— ๊ธฐ๋ก๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์‹ ํ•˜์ง€๋งŒ ํด๋Ÿฌ์Šคํ„ฐ ๋˜๋Š” ์—ฐ๊ฒฐ๋œ ์—”๋“œํฌ์ธํŠธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์•”ํ˜ธํ™”๋œ ํŠธ๋žœ์žญ์…˜ ๋กœ๊ทธ์˜ ์ œํ•œ๋œ ์ฐฝ์„ ์ €์žฅํ•˜๋ฉฐ, Aurora DSQL์€ ์ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฉ€ํ‹ฐ ๋ฆฌ์ „ ๋‚ด๊ตฌ์„ฑ ๋ฐ ๊ฐ€์šฉ์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

Aurora DSQL ์‹œ์ž‘ํ•˜๊ธฐ
Aurora DSQL์€ ์ด์ œ ๋ฏธ๋ฆฌ ๋ณด๊ธฐ๋กœ ์ œ๊ณต๋˜๋ฏ€๋กœ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ์ด ์–ผ๋งˆ๋‚˜ ์‰ฌ์šด์ง€ ์ง์ ‘ ๊ฒฝํ—˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Aurora DSQL ์ฝ˜์†” ๋กœ ์ด๋™ ํ•˜๊ฑฐ๋‚˜ AWS Command Line Interface (AWS CLI) ๋˜๋Š” AWS SDK๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹์œผ๋กœ ์•ก์„ธ์Šค ํ•ฉ๋‹ˆ๋‹ค.

AWS ๊ด€๋ฆฌ ์ฝ˜์†”์—์„œ Create cluster๋ฅผ ์„ ํƒํ•˜๋ฉด, ์›ํด๋ฆญ์œผ๋กœ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฉ€ํ‹ฐ ๋ฆฌ์ „ ๊ตฌ์„ฑ์„ ๊ตฌ์„ฑํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, Add linked Regions๋ฅผ ์„ ํƒํ•˜๋ฉด, ๋ชจ๋“  ํŠธ๋žœ์žญ์…˜์ด ๋ชจ๋“  ์—ฐ๊ฒฐ๋œ ๋ฆฌ์ „์— ๋ณต์ œ๋ฉ๋‹ˆ๋‹ค.

์—ฐ๊ฒฐ๋œ ๋ฆฌ์ „(Linked Region)์€ Aurora DSQL์€ ์„ ํƒํ•œ ๋ฆฌ์ „์— ๋‹ค๋ฅธ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๋งŒ๋“  ๋‹ค์Œ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค. ์—ฐ๊ฒฐ๋œ ํด๋Ÿฌ์Šคํ„ฐ์—๋Š” ๊ฐ๊ฐ ๋ฆฌ์ „ ์—”๋“œํฌ์ธํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. DSQL์€ ๋ฆฌ์ „ ๊ฐ„์— ์“ฐ๊ธฐ๋ฅผ ๋™๊ธฐ์ ์œผ๋กœ ๋ณต์ œํ•˜๋ฏ€๋กœ ๊ฐ•๋ ฅํ•œ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•˜๋ฉด์„œ ์—ฐ๊ฒฐ๋œ ๋ชจ๋“  ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์ฝ๊ณ  ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ์‹œ ๋ฆฌ์ „(Witness Region)์€ ์—ฐ๊ฒฐ๋œ ํด๋Ÿฌ์Šคํ„ฐ์— ์“ฐ์—ฌ์ง„ ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์‹ ํ•ฉ๋‹ˆ๋‹ค. Witness ๋ฆฌ์ „์—๋Š” ํด๋Ÿฌ์Šคํ„ฐ๋‚˜ ์—ฐ๊ฒฐ๋œ ์—”๋“œํฌ์ธํŠธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. Witness ๋ฆฌ์ „์€ ์•”ํ˜ธํ™”๋œ ํŠธ๋žœ์žญ์…˜ ๋กœ๊ทธ์˜ ์ œํ•œ๋œ ์ฐฝ์„ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. Aurora DSQL์€ ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์ค‘ ๋ฆฌ์ „ ๋‚ด๊ตฌ์„ฑ๊ณผ ๊ฐ€์šฉ์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

Create cluster๋ฅผ ์„ ํƒํ•˜๋ฉด, ์ด์ œ ์ƒˆ๋กœ์šด DSQL ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ๋งŒ๋“ค์–ด์ง‘๋‹ˆ๋‹ค. ์ด ํด๋Ÿฌ์Šคํ„ฐ๋Š” US East (N. Virginia) ๋ฆฌ์ „์— ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๋‘๊ณ , US East (Ohio) ๋ฆฌ์ „์— ์—ฐ๊ฒฐ๋œ ํด๋Ÿฌ์Šคํ„ฐ์™€ US West (Oregon) ๋ฆฌ์ „์— ๊ฐ์‹œ ๋ฆฌ์ „์„ ๋‘๊ณ  ์žˆ๋Š” ๋ฉ€ํ‹ฐ ๋ฆฌ์ „ ๊ตฌ์„ฑ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค.

AWS CLI์„ ํ†ตํ•ด์„œ๋„ ๊ฐ„๋‹จํ•˜๊ฒŒ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

$ aws dsql create-cluster --region us-east-1

๋‹ค์Œ๊ณผ ๊ฐ™์€ ์‘๋‹ต์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

{
 "identifier": "foo0bar1baz2quux3quuux4",
 "arn": "arn:aws:dsql:us-east-1:111122223333:cluster/foo0bar1baz2quux3quuux4",
 "status": "CREATING",
 "creationTime": "2024-05-25T16:56:49.784000-07:00",
 "deletionProtectionEnabled": true
}

Aurora DSQL์€ ์ƒˆ๋กœ์šด API ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. API์„ ์‚ฌ์šฉํ•˜์—ฌ Aurora DSQL์—์„œ ๋ฆฌ์†Œ์Šค๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, Aurora DSQL์„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ ์‚ฌ์šฉํ•˜๋Š” Django ๊ธฐ๋ฐ˜ ์• ์™„๋™๋ฌผ ๋ณ‘์› ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค๊ฑฐ๋‚˜, AWS Lambda ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด์„œ ์†์‰ฝ๊ฒŒ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. Aurora DSQL GitHub ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๋‹ค์–‘ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ Aurora DSQL์„ ์—ฐ๊ฒฐํ•˜๊ณ  ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ฝ”๋“œ ์˜ˆ์ œ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ด์ œ ๋ฉ€ํ‹ฐ ๋ฆฌ์ „ ์•กํ‹ฐ๋ธŒ-์•กํ‹ฐ๋ธŒ ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•˜์—ฌ, ๊ธ€๋กœ๋ฒŒ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ๋Š” ์•„๋ž˜ ๋ฐ๋ชจ ์˜์ƒ์„ ์ฐธ๊ณ ํ•˜์„ธ์š”. ์‹ ๊ทœ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•, ๋ณด์•ˆ ์—ฐ๊ฒฐ์„ ์œ„ํ•œ ์ธ์ฆ ํ† ํฐ์„ ์ƒ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•, AWS Amplify๋ฅผ ํฌํ•จํ•˜์—ฌ 2๊ฐœ์˜ ๊ฐœ๋ณ„ AWS ๋ฆฌ์ „์—์„œ ์ž‘๋™ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค.

์•Œ์•„๋‘์‹ค ์‚ฌํ•ญ
๋ช‡ ๊ฐ€์ง€ ์—ผ๋‘ํ•ด ๋‘์‹ค ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.

  • ํ™•์žฅ์„ฑ โ€“ Aurora DSQL์€ ๋ชจ๋“  ์›Œํฌ๋กœ๋“œ ์ˆ˜์š”๋ฅผ ์ถฉ์กฑํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ๊ฑฐ์˜ ๋ฌด์ œํ•œ์˜ ํ™•์žฅ์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ฟผ๋ฆฌ ์ฒ˜๋ฆฌ ๊ณ„์ธต, ์ปค๋ฐ‹ ๊ณ„์ธต ๋ฐ ์Šคํ† ๋ฆฌ์ง€ ๊ณ„์ธต์€ ๋…๋ฆฝ์ ์œผ๋กœ ํ™•์žฅ๋˜์–ด ๋‹ค์–‘ํ•œ ์ฝ๊ธฐ/์“ฐ๊ธฐ ๋น„์œจ, ๋ฐ์ดํ„ฐ ํฌ๊ธฐ ๋ฐ ์ฟผ๋ฆฌ ๋ณต์žก์„ฑ์„ ํฌํ•จํ•œ ๋ชจ๋“  ํ˜•ํƒœ์˜ ์›Œํฌ๋กœ๋“œ์— ์ ์‘ํ•ฉ๋‹ˆ๋‹ค.
  • ๋™์‹œ์„ฑ โ€“ ๊ธฐ์กด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ๋‹ฌ๋ฆฌ Aurora DSQL์€ ๊ธฐ์กด ์ž ๊ธˆ ๋ฐฉ์‹ ๋Œ€์‹  ๋‚™๊ด€์  ๋™์‹œ์„ฑ ์ œ์–ด(OCC)๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ทœ๋ชจ๊ฐ€ ํ™•์žฅ๋จ์— ๋”ฐ๋ผ OCC๋Š” ๋” ๊ธด ํŠธ๋žœ์žญ์…˜์œผ๋กœ ์ธํ•ด ๋‹ค๋ฅธ ์ง„ํ–‰ ์ค‘์ธ ํŠธ๋žœ์žญ์…˜์˜ ์†๋„๊ฐ€ ๋А๋ ค์ง€์ง€ ์•Š๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. Aurora DSQL์˜ OCC์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ Amazon Aurora DSQL์˜ ๋™์‹œ์„ฑ ์ œ์–ด๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.
  • ํŽธ๋ฆฌ์„ฑ โ€“ Aurora DSQL์€ ๋‹จ์ผ API ํ˜ธ์ถœ๋กœ ์ƒˆ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๋น ๋ฅด๊ฒŒ ์ƒ์„ฑํ•˜๊ณ  ๋ช‡ ๋ถ„ ๋‚ด์— PostgreSQL ํ˜ธํ™˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งŽ์€ ์ผ๋ฐ˜์ ์ธ PostgreSQL ๋“œ๋ผ์ด๋ฒ„ ๋ฐ ๋„๊ตฌ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ACID ํŠธ๋žœ์žญ์…˜, SQL ์ฟผ๋ฆฌ, ๋ณด์กฐ ์ธ๋ฑ์Šค, ์กฐ์ธ, ์‚ฝ์ž… ๋ฐ ์—…๋ฐ์ดํŠธ์™€ ๊ฐ™์€ ํ•ต์‹ฌ ๊ด€๊ณ„ํ˜• ๊ธฐ๋Šฅ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ณด์•ˆ์„ฑ โ€“ Aurora DSQL์€ ๊ฐ„๋‹จํ•œ ์„ ์–ธ์  ๊ฐœ์ธ ์ •๋ณด ๋ณดํ˜ธ ๋ฐ ๋ณด์•ˆ ์ œ์–ด์™€ ํ•จ๊ป˜ AWS Identity and Access Management (AWS IAM) ๋ฐ AWS CloudTrail๊ณผ์˜ ์™„์ „ํ•œ ํ†ตํ•ฉ์„ ํ†ตํ•ด ๋ณด์•ˆ์„ ๊ฐ•ํ™”ํ•ฉ๋‹ˆ๋‹ค. PostgreSQL wire protocol ํ˜ธํ™˜์„ฑ์„ ํฌ์ƒํ•˜์ง€ ์•Š๊ณ , AWS CLI ๋ฐ AWS SDK๋ฅผ ํ†ตํ•œ ํ† ํฐ ์ƒ์„ฑ์„ ํ†ตํ•ด ํ‘œ์ค€ ์‚ฌ์šฉ์ž ์•”ํ˜ธ ๊ธฐ๋ฐ˜ ์ธ์ฆ์„ ์ฐจ๋‹จ ํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ฆฌ ๋ณด๊ธฐ ์ถœ์‹œ
Aurora DSQL์€US East (N. Virginia) ๋ฆฌ์ „์—์„œ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋กœ ํ…Œ์ŠคํŠธ ํ•ด ๋ณด์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋” ์ž์„ธํ•œ ๊ฒƒ์€ Aurora DSQL ์ œํ’ˆ ํŽ˜์ด์ง€๋ฅผ ์ฐธ์กฐํ•˜๊ฑฐ๋‚˜ AWS ์„œ๋น„์Šค ์‚ฌ์šฉ ์„ค๋ช…์„œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”. ํ”ผ๋“œ๋ฐฑ์„ ๋ณด๋‚ด๋ ค๋ฉด AWS re:Post for Aurora DSQL๋ฅผ ์ด์šฉํ•˜๊ฑฐ๋‚˜ ํ‰์†Œ ์—ฐ๋ฝํ•˜๋Š” AWS Support ๋‹ด๋‹น์ž๋ฅผ ํ†ตํ•ด ์ „๋‹ฌํ•ด ์ฃผ์„ธ์š”.

์ด ๊ธ€์€ AWS Database Blog์˜ Introducing Amazon Aurora DSQL๋ฅผ ํ•œ๊ตญ์–ด๋กœ ๋ฒˆ์—ญ ๋ฐ ์žฌํŽธ์ง‘ํ•˜์˜€์Šต๋‹ˆ๋‹ค.