NoSQL์ ๊ณ ์ฑ๋ฅ ๋น๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ค๋ช ํ๋ ๋ฐ ์ฌ์ฉ๋๋ ์ฉ์ด์ ๋๋ค. NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๋ฌธ์, ๊ทธ๋ํ, ํค-๊ฐ, ์ปฌ๋ผ ํ์ ๋ฑ์ ๋น๋กฏํ ๋ค์ํ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์ฌ์ฉํฉ๋๋ค. NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๋ฐฐํฌ ์ฉ์ด์ฑ, ํ์ฅ ๊ฐ๋ฅํ ์ฑ๋ฅ, ๊ณ ๊ฐ์ฉ์ฑ ๋ฐ ๋ณต์๋ ฅ์ผ๋ก ๋๋ฆฌ ์ธ์ ๋ฐ๊ณ ์์ต๋๋ค. ์๋๋ NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฌ์ฉ์ ์์ํ๋ ๋ฐ ๋์์ด ๋๋ ๋ช ๊ฐ์ง ๋ฆฌ์์ค์ ๋๋ค.
Migration Best Practices โ RDBMS to Amazon DynamoDB ๋ฐฑ์๋ฅผ ๋ค์ด๋ก๋ํ์ญ์์ค.
| ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค | NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค | |
| ๋ฐ์ดํฐ ๋ชจ๋ธ | ๊ด๊ณํ ๋ชจ๋ธ์ ๋ฐ์ดํฐ๋ฅผ ํ๊ณผ ์ด๋ก ๊ตฌ์ฑ๋ ํ ์ด๋ธ์ด๋ผ๊ณ ํ๋ ํ ์ด๋ธ ํ์ ๊ตฌ์กฐ๋ก ์ ๊ทํํฉ๋๋ค. ์คํค๋ง๋ ํ ์ด๋ธ, ์ด, ์ธ๋ฑ์ค, ํ ์ด๋ธ ๊ฐ ๊ด๊ณ ๋ฐ ๊ธฐํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์๋ฅผ ์ ์ํฉ๋๋ค. | ๋น๊ด๊ณํ(NoSQL) ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ผ๋ฐ์ ์ผ๋ก ์คํค๋ง๋ฅผ ๊ฐ์ ์ ์ฉํ์ง ์์ต๋๋ค. ํํฐ์ ํค๋ ๊ฐ, ์ด ์ธํธ, ๋ฐ์ ํ JSON, XML ๋๋ ๊ด๋ จ ํญ๋ชฉ ์์ฑ์ ํฌํจํ๋ ๋ค๋ฅธ ๋ฌธ์์ ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค. |
| ACID ์์ฑ | ๊ธฐ์กด์ RDBMS(๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ )๋ ์ฝ์ด์ธ ACID(์์์ฑ, ์ผ๊ด์ฑ, ๊ฒฉ๋ฆฌ์ฑ, ๋ด๊ตฌ์ฑ)๋ก ์ ์๋ ์ผ๋ จ์ ์์ฑ ์ธํธ๋ฅผ ์ง์ํฉ๋๋ค. ์์์ฑ์ ํธ๋์ญ์ ์ด ์์ ํ ์คํ๋๊ฑฐ๋ ์ ํ ์คํ๋์ง ์๋ "๋ชจ๋ ์คํ ๋๋ ์ ํ ์คํ๋์ง ์์"์ ์๋ฏธํฉ๋๋ค. ์ผ๊ด์ฑ์ ํธ๋์ญ์ ์ด ์คํ๋๋ฉด ๋ฐ์ดํฐ๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง๋ฅผ ์ค์ํด์ผ ํจ์ ์๋ฏธํฉ๋๋ค. ๊ฒฉ๋ฆฌ์ฑ์ ๋์์ ์ผ์ด๋๋ ํธ๋์ญ์ ์ด ๋ค๋ฅธ ํธ๋์ญ์ ๊ณผ ๋ณ๋๋ก ์คํ๋์ด์ผ ํจ์ ์๋ฏธํฉ๋๋ค. ๋ด๊ตฌ์ฑ์ ์๊ธฐ์น ๋ชปํ ์์คํ ์ฅ์ ๋๋ ์ ์ ์ผ๋ก๋ถํฐ ๋ง์ง๋ง์ผ๋ก ์๋ ค์ง ์ํ๋ก ๋ณต์ํ๋ ๊ธฐ๋ฅ์ ๋๋ค. | NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ข ์ข ์ํ์ผ๋ก ํ์ฅ๋๋ ๋ ์ ์ฐํ ๋ฐ์ดํฐ ๋ชจ๋ธ์ฉ ๊ธฐ์กด RDBMS(๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ )์ ์ผ๋ถ ACID ์์ฑ์ ๊ตํํฉ๋๋ค. ์ด๋ฌํ ํน์ฑ์ ๊ธฐ์กด RDBMS๊ฐ ์ฑ๋ฅ ๋ณ๋ชฉ ์ง์ , ํ์ฅ์ฑ, ์ด์์์ ๋ณต์ก์ฑ, ๋์ด๋๋ ๊ด๋ฆฌ ์ ๋ฌด ๋ฐ ์ง์ ๋น์ฉ ๋ฌธ์ ๊ฐ ๋ณตํฉ์ ์ผ๋ก ๋ฐ์ํ ๊ฒฝ์ฐ ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ๊ตฌ์กฐ์ ๋ฌธ์ ์ ์ง๋ฉดํ๋ฉด NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ํ์ํ ์ ํ์ ํ ์ ์๋๋ก ์ง์ํฉ๋๋ค. |
| ์ฑ๋ฅ | ์ฑ๋ฅ์ ์ผ๋ฐ์ ์ผ๋ก ๋์คํฌ ํ์ ์์คํ ์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค. ์ต๊ณ ์ฑ๋ฅ์ ๋ฌ์ฑํ๊ธฐ ์ํด์๋ ์ฟผ๋ฆฌ, ์ธ๋ฑ์ค ๋ฐ ํ ์ด๋ธ ๊ตฌ์กฐ๋ฅผ ์ต์ ํํด์ผ ํฉ๋๋ค. | ์ฑ๋ฅ์ ์ผ๋ฐ์ ์ผ๋ก ๊ธฐ๋ณธ ํ๋์จ์ด ํด๋ฌ์คํฐ ํฌ๊ธฐ, ๋คํธ์ํฌ ์ง์ฐ ์๊ฐ ๋ฐ ํธ์ถ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ธฐ๋ฅ์ ๋๋ค. |
| ํ์ฅ ๊ฐ๋ฅ | ๋ ๋น ๋ฅธ ํ๋์จ์ด๋ก "ํ์ฅ"์ด ๊ฐํธํด ์ง๋๋ค. ๋ถ์ฐ ์์คํ ์ ํ์ฅํ๊ธฐ ์ํด์๋ ๊ด๊ณํ ํ ์ด๋ธ์ ๋ํด ์ถ๊ฐ์ ์ธ ํฌ์๊ฐ ํ์ํฉ๋๋ค. | ์ง์ฐ ์๊ฐ์ ๋๋ฆฌ์ง ์๊ณ ์ฒ๋ฆฌ๋์ ํฅ์์ํค๊ธฐ ์ํด ์ ๋น์ฉ ํ๋์จ์ด์ ๋ถ์ฐ ํด๋ฌ์คํฐ๋ฅผ ์ฌ์ฉํ์ฌ "ํ์ฅ"ํ๋๋ก ์ค๊ณ๋์์ต๋๋ค. |
| API | ๊ตฌ์กฐํ ์ง์์ด(SQL)๋ฅผ ์ค์ํ๋ ์ฟผ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅ ๋ฐ ๊ฒ์ํ๊ธฐ ์ํ ์์ฒญ์ด ์ ๋ฌ๋ฉ๋๋ค. ์ด๋ฌํ ์ฟผ๋ฆฌ๋ RDBMS(๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ )์ ์ํด ๊ตฌ๋ฌธ ๋ถ์ ๋ฐ ์คํ๋ฉ๋๋ค. | ๊ฐ์ฒด ๊ธฐ๋ฐ API๋ฅผ ํตํด ์ฑ ๊ฐ๋ฐ์๊ฐ ์ธ ๋ฉ๋ชจ๋ฆฌ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ์ฝ๊ฒ ์ ์ฅ ๋ฐ ๊ฒ์ํ ์ ์์ต๋๋ค. ํํฐ์ ํค๋ฅผ ์ฌ์ฉํ๋ฉด ์ฑ์์ ํค ๊ฐ ํ์ด, ์ด ์ธํธ ๋๋ ์ผ๋ จ์ ์ฑ ๊ฐ์ฒด ๋ฐ ์์ฑ์ ํฌํจํ๋ ๋ฐ์ ํ ๋ฌธ์๋ฅผ ๊ฒ์ํ ์ ์์ต๋๋ค. |
| ๋๊ตฌ | SQL ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ผ๋ฐ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ๊ตฌ๋๋๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐฐํฌ๋ฅผ ๊ฐ์ํํ๊ธฐ ์ํด ๋ค์ํ ๋๊ตฌ ์ธํธ๋ฅผ ์ ๊ณตํฉ๋๋ค. | NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ผ๋ฐ์ ์ผ๋ก ํด๋ฌ์คํฐ ๊ด๋ฆฌ ๋ฐ ์กฐ์ ์ ์ํ ๋๊ตฌ๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ธฐ๋ณธ ๋ฐ์ดํฐ์ ๋ํ ์ฃผ์ ์ธํฐํ์ด์ค์ ๋๋ค. |
์ปฌ๋ผ ํ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค
์ปฌ๋ผ ํ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๋ฐ์ดํฐ์ ํ์ด ์๋๋ผ ๋ฐ์ดํฐ์ ์ปฌ๋ผ์ ์ฝ๊ณ ์ฐ๋ ๋ฐ ์ต์ ํ๋์์ต๋๋ค. ์ปฌ๋ผ ๊ธฐ๋ฐ ์คํ ๋ฆฌ์ง๋ ์ ๋ฐ์ ์ธ ๋์คํฌ I/O ์๊ตฌ ์ฌํญ๊ณผ ๋์คํฌ์์ ๋ก๋ํด์ผ ํ๋ ๋ฐ์ดํฐ ์์ ํ๊ธฐ์ ์ผ๋ก ์ค์ฌ์ฃผ๋ฏ๋ก, ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ
์ด๋ธ์ ๋ถ์ ์ฟผ๋ฆฌ ์ฑ๋ฅ์ ์ค์ํ ์์์
๋๋ค. ์์ธํ ์์๋ณด๊ธฐ »
๋ฌธ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค
๋ฌธ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ฃผ๋ก JSON ๋๋ XML ํ์์ ๋ฌธ์์ ๊ฐ์ ๋ฐ์ ํ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋๋ก ์ค๊ณ๋์์ต๋๋ค. ๊ธฐ์กด ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์๋ ๋ฌ๋ฆฌ, ๋น๊ด๊ณํ(NoSQL) ๋ฌธ์๋ณ๋ก ๋ค๋ฅธ ์คํค๋ง๋ฅผ ์ ์ฉํ ์ ์์ผ๋ฏ๋ก ์ข ๋ ์ ์ฐํ๊ฒ ์ ํ๋ฆฌ์ผ์ด์
๋ฐ์ดํฐ๋ฅผ ๊ตฌ์ฑ ๋ฐ ์ ์ฅํ๊ณ ์ ํ์ ๊ฐ์ ํ์ํ ์คํ ๋ฆฌ์ง๋ฅผ ์ค์ผ ์ ์์ต๋๋ค. ์์ธํ ์์๋ณด๊ธฐ »
๊ทธ๋ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค
๊ทธ๋ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๊ฐ์ ์ด๋ผ๊ณ ๋ถ๋ฅด๋ ๋ฐฉํฅ ๋งํฌ์ ์ ์ ์ ์ ์ฅํฉ๋๋ค. ๊ทธ๋ํ๋ ๊ด๊ณํ(SQL) ๋ฐ ๋น๊ด๊ณํ(NoSQL) ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ตฌ์ถ๋ ์ ์์ต๋๋ค. ์ ์ ๋ฐ ์ฃ์ง๋ ๊ฐ๊ฐ ์ด๋ค๊ณผ ์ฐ๊ด๋ ์์ฑ์ ๊ฐ์ง๋๋ค. ์๋์ ๊ทธ๋ฆผ์ ์น๊ตฌ์ ์น๊ตฌ์ ๊ด์ฌ์ฌ ๊ฐ์ ๊ด๊ณ์ ๋ํ ๊ฐ๋จํ ๊ทธ๋ํ๋ฅผ ๋ํ๋
๋๋ค. ์์ธํ ์์๋ณด๊ธฐ »
์ธ ๋ฉ๋ชจ๋ฆฌ ํค-๊ฐ ์คํ ์ด
์ธ ๋ฉ๋ชจ๋ฆฌ ํค-๊ฐ ์คํ ์ด๋ ์ฝ๊ธฐ ์ค์ฌ์ ์ ํ๋ฆฌ์ผ์ด์
์ํฌ๋ก๋(์์
๋คํธ์ํน, ๊ฒ์, ๋ฏธ๋์ด ๊ณต์ , Q&A ํฌํธ ๋ฑ) ๋๋ ์ปดํจํ
์ง์ฝ์ ์ํฌ๋ก๋(์ถ์ฒ ์์ง ๋ฑ)์ ์ต์ ํ๋ NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค์
๋๋ค. ์ธ ๋ฉ๋ชจ๋ฆฌ ์บ์ฑ์ ํต์ฌ ๋ฐ์ดํฐ ์กฐ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅํด ์ก์ธ์ค ์ง์ฐ ์๊ฐ์ ์ค์ฌ์ฃผ๋ฏ๋ก ์ ํ๋ฆฌ์ผ์ด์
์ฑ๋ฅ์ด ํฅ์๋ฉ๋๋ค. ์์ธํ ์์๋ณด๊ธฐ »
| SQL |
MongoDB | DynamoDB | Cassandra | Couchbase |
| ํ ์ด๋ธ | ์ปฌ๋ ์ | ํ ์ด๋ธ | ํ ์ด๋ธ | ๋ฐ์ดํฐ ๋ฒํท |
| ์ด | ๋ฌธ์ |
ํญ๋ชฉ | ์ด | ๋ฌธ์ |
| ์ด |
ํ๋ | ์์ฑ | ์ด | ํ๋ |
| ๊ธฐ๋ณธ ํค |
ObjectId |
๊ธฐ๋ณธ ํค | ๊ธฐ๋ณธ ํค | ๋ฌธ์ ID |
| ์ธ๋ฑ์ค | ์ธ๋ฑ์ค | ๋ณด์กฐ ์ธ๋ฑ์ค | ์ธ๋ฑ์ค |
์ธ๋ฑ์ค |
| ๋ณด๊ธฐ | ๋ณด๊ธฐ | ๊ธ๋ก๋ฒ ๋ณด์กฐ ์ธ๋ฑ์ค | ๊ตฌ์ฒดํ๋ ๋ณด๊ธฐ | ๋ณด๊ธฐ |
| ์ค์ฒฉ๋ ํ
์ด๋ธ ๋๋ ๊ฐ์ฒด |
ํฌํจ ๋ฌธ์ | ๋งต | ๋งต | ๋งต |
| ๋ฐฐ์ด |
๋ฐฐ์ด | ๋ชฉ๋ก | ๋ชฉ๋ก | ๋ชฉ๋ก |
์ฝ๊ฒ Amazon DynamoDB๋ฅผ ์์ํ ์ ์์ต๋๋ค. ์์ ์๋ด์๋ฅผ ๋ฐ๋ผ ํด๋ฆญ ๋ช ๋ฒ์ผ๋ก ์ฒซ DynamoDB ํ
์ด๋ธ์ ์์ฑํ์ญ์์ค.

