ํ• ๋จธ๋‹ˆ์—๊ฒŒ SQL๊ณผ NoSQL์˜ ์ฐจ์ด์ ์„ ์„ค๋ช…ํ•˜๋Š” ๋ฐฉ๋ฒ•

ํ• ๋จธ๋‹ˆ์—๊ฒŒ SQL๊ณผ NoSQL์˜ ์ฐจ์ด์ ์„ ์„ค๋ช…ํ•˜๋Š” ๋ฐฉ๋ฒ•

๊ฐœ๋ฐœ์ž๊ฐ€ ๋‚ด๋ฆฌ๋Š” ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฒฐ์ • ์ค‘ ํ•˜๋‚˜๋Š” ์–ด๋–ค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•  ๊ฒƒ์ธ๊ฐ€์ž…๋‹ˆ๋‹ค. ์ˆ˜๋…„ ๋™์•ˆ ์˜ต์…˜์€ SQL(๊ตฌ์กฐ์  ์ฟผ๋ฆฌ ์–ธ์–ด)์„ ์ง€์›ํ•˜๋Š” ๋‹ค์–‘ํ•œ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์˜ต์…˜์œผ๋กœ ์ œํ•œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” MS SQL Server, Oracle, MySQL, PostgreSQL, DB2 ๋“ฑ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

์ง€๋‚œ 15๋…„ ๋™์•ˆ No-SQL ์ ‘๊ทผ ๋ฐฉ์‹์œผ๋กœ ๋งŽ์€ ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์‹œ์žฅ์— ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” Redis ๋ฐ Amazon DynamoDB์™€ ๊ฐ™์€ ํ‚ค-๊ฐ’ ์ €์žฅ์†Œ, Cassandra ๋ฐ HBase์™€ ๊ฐ™์€ ๊ด‘๋ฒ”์œ„ํ•œ ์—ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค, MongoDB ๋ฐ Couchbase์™€ ๊ฐ™์€ ๋ฌธ์„œ ์ €์žฅ์†Œ, Elasticsearch ๋ฐ Solr๊ณผ ๊ฐ™์€ ๊ทธ๋ž˜ํ”„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฐ ๊ฒ€์ƒ‰ ์—”์ง„์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

์ด ๊ธฐ์‚ฌ์—์„œ๋Š” ๊ธฐ๋Šฅ์„ ๋‹ค๋ฃจ์ง€ ์•Š๊ณ  SQL๊ณผ NoSQL์„ ์ดํ•ดํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
๊ฒŒ๋‹ค๊ฐ€ ์šฐ๋ฆฌ๋Š” ๊ทธ ๊ณผ์ •์—์„œ ์ฆ๊ฑฐ์šด ์‹œ๊ฐ„์„ ๋ณด๋‚ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํ• ๋จธ๋‹ˆ์—๊ฒŒ SQL์„ ์„ค๋ช…ํ•˜๋Š” ์ค‘

ํ• ๋จธ๋‹ˆ, ์ œ๊ฐ€ ๋‹น์‹ ์˜ ์œ ์ผํ•œ ์†์ž๊ฐ€ ์•„๋‹ˆ๋ผ๊ณ  ์ƒ์ƒํ•ด ๋ณด์„ธ์š”. ๋Œ€์‹  ์—„๋งˆ ์•„๋น ๋Š” ํ† ๋ผ์ฒ˜๋Ÿผ ์„œ๋กœ๋ฅผ ์‚ฌ๋ž‘ํ–ˆ๊ณ , 100๋ช…์˜ ์ž๋…€๋ฅผ ๋‚ณ๊ณ , 50๋ช…์„ ๋” ์ž…์–‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ๊ท€ํ•˜๋Š” ์šฐ๋ฆฌ ๋ชจ๋‘๋ฅผ ์‚ฌ๋ž‘ํ•˜๋ฉฐ ์šฐ๋ฆฌ์˜ ์ด๋ฆ„, ์ƒ์ผ, ์ข‹์•„ํ•˜๋Š” ์•„์ด์Šคํฌ๋ฆผ ๋ง›, ์˜ท ํฌ๊ธฐ, ์ทจ๋ฏธ, ๋ฐฐ์šฐ์ž ์ด๋ฆ„, ์ž๋…€ ์ด๋ฆ„ ๋ฐ ๊ธฐํƒ€ ๋งค์šฐ ์ค‘์š”ํ•œ ์‚ฌ์‹ค์„ ์žŠ๊ณ  ์‹ถ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํ˜„์‹ค์„ ์ง์‹œํ•ฉ์‹œ๋‹ค. ๋‹น์‹ ์€ 85์„ธ์ธ๋ฐ ์˜› ๊ธฐ์–ต์ด ๊ฐ๋‹นํ•  ์ˆ˜ ์—†์„ ์ •๋„์ž…๋‹ˆ๋‹ค.

์šด ์ข‹๊ฒŒ๋„ ๋‹น์‹ ์˜ ์†์ฃผ๋“ค ์ค‘์—์„œ ๊ฐ€์žฅ ๋˜‘๋˜‘ํ•œ ์ œ๊ฐ€ ๋„์›€์„ ๋“œ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‚˜๋Š” ๋‹น์‹ ์˜ ์ง‘์— ๊ฐ€์„œ ์ข…์ด ๋ช‡ ์žฅ์„ ๊บผ๋‚ด๊ณ  ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— ์ฟ ํ‚ค๋ฅผ ๊ตฌ์›Œ๋‹ฌ๋ผ๊ณ  ๋ถ€ํƒํ•ฉ๋‹ˆ๋‹ค.

ํ•œ ์žฅ์˜ ์ข…์ด์— "๋ผ๋Š” ๋ชฉ๋ก์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.์†์ž". ๋ชจ๋“  ์†์ž ๊ทธ์— ๋Œ€ํ•œ ๋ช‡ ๊ฐ€์ง€ ์ค‘์š”ํ•œ ์ •๋ณด๊ฐ€ ๊ธฐ๋ก๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ๊ณ ์œ  ๋ฒˆํ˜ธ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์†์ž ๊ทธ๋Š”. ๋˜ํ•œ ์ •๋ฆฌ๋ฅผ ์œ„ํ•ด ๋ชฉ๋ก ์ƒ๋‹จ์— ๋ช…๋ช…๋œ ์†์„ฑ์„ ๊ธฐ๋กํ•˜์—ฌ ๋ชฉ๋ก์— ์–ด๋–ค ์ •๋ณด๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ๋Š”์ง€ ํ•ญ์ƒ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

id
name
์ƒ์ผ
๋งˆ์ง€๋ง‰ ๋ฐฉ๋ฌธ
์˜ท ์‚ฌ์ด์ฆˆ
์ข‹์•„ํ•˜๋Š” ์•„์ด์Šคํฌ๋ฆผ
์ฑ„ํƒ

1
์กฐ๋ฆฝ์‹ ์‡ ์ง€๋ ˆ
09-22-1992
09-01-2019
L
๋ฏผํŠธ ์ดˆ์ฝœ๋ฆฟ
๊ทธ๋ฆ‡๋œ

2
์ œ์‹œ์นด
07-21-1992
02-22-2018
M
๋ฐ”์œ„๊ธธ
์ฐธ๋œ

...์šฐ๋ฆฌ๋Š” ๋ชฉ๋ก์„ ๊ณ„์†ํ•ฉ๋‹ˆ๋‹ค!

์†์ž ๋ช…๋‹จ

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

๊ทธ๋ž˜์„œ ๋‚˜๋Š” ๋˜ ๋‹ค๋ฅธ ์ข…์ด๋ฅผ ๊บผ๋‚ด์„œ ๊ทธ ์œ„์— ๋ชฉ๋ก์„ ๋ถ€๋ฆ…๋‹ˆ๋‹ค. ๋ฐฐ์šฐ์ž. ์šฐ๋ฆฌ์—๊ฒŒ ์ค‘์š”ํ•œ ์†์„ฑ์„ ๋ชฉ๋ก ์ƒ๋‹จ์— ๋‹ค์‹œ ์ถ”๊ฐ€ํ•˜๊ณ  ํ–‰ ์ถ”๊ฐ€๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

id
์†์ž_ID
name
์ƒ์ผ

1
2
์š”ํ•œ ๋ณต์Œ
06-01-1988

2
9
ํŽ˜๋ฅด
03-05-1985

โ€ฆ๋” ๋งŽ์€ ๋ฐฐ์šฐ์ž!

๋ฐฐ์šฐ์ž ๋ชฉ๋ก

์ด ๋‹จ๊ณ„์—์„œ ๋‚˜๋Š” ํ• ๋จธ๋‹ˆ์—๊ฒŒ ๋ˆ„๊ฐ€ ๋ˆ„๊ตฌ์™€ ๊ฒฐํ˜ผํ–ˆ๋Š”์ง€ ์•Œ๊ณ  ์‹ถ๋‹ค๋ฉด ์ผ์น˜์‹œํ‚ค๊ธฐ๋งŒ ํ•˜๋ฉด ๋œ๋‹ค๊ณ  ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. id ๋ชฉ๋ก์—์„œ ์†์ž ั ์†์ž_ID ๋ฐฐ์šฐ์ž ๋ชฉ๋ก์—.

์ฟ ํ‚ค๋ฅผ ์ˆ˜์‹ญ ๊ฐœ ๋จน์€ ํ›„์—๋Š” ๋‚ฎ์ž ์„ ์ž์•ผ ํ•ด์š”. "๊ณ„์† ํ•  ์ˆ˜ ์žˆ๋‚˜์š”, ํ• ๋จธ๋‹ˆ?" ๋‚˜๋Š” ๋‚ฎ์ž ์„ ์ž๋ ค๊ณ  ๋– ๋‚œ๋‹ค.

๋ช‡ ์‹œ๊ฐ„ ํ›„์— ๋Œ์•„์˜ฌ ๊ฑฐ์˜ˆ์š”. ์ •๋ง ๋ฉ‹์ง€์„ธ์š”, ํ• ๋จธ๋‹ˆ! ๋ชฉ๋ก ๋นผ๊ณ  ๋‹ค ๊ดœ์ฐฎ์•„ ๋ณด์ด๋Š”๋ฐ ์ทจ๋ฏธ. ๋ชฉ๋ก์—๋Š” ์•ฝ 1000๊ฐ€์ง€์˜ ์ทจ๋ฏธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์€ ๋ฐ˜๋ณต์ ์ž…๋‹ˆ๋‹ค. ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚ฌ๋‚˜์š”?

์†์ž_ID
์ทจ๋ฏธ

1
์ž์ „๊ฑฐ ํƒ€๊ธฐ

4
์ž์ „๊ฑฐ ํƒ€๊ธฐ

3
์ž์ „๊ฑฐ ํƒ€๊ธฐ

7
๋‹ฌ๋ฆฌ๋Š”

11
์ž์ „๊ฑฐ ํƒ€๊ธฐ

โ€ฆ๊ณ„์†ํ•ฉ๋‹ˆ๋‹ค!

์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ๋งํ•˜๋Š” ๊ฒƒ์„ ์™„์ „ํžˆ ์žŠ์–ด๋ฒ„๋ ธ์Šต๋‹ˆ๋‹ค! ํ•˜๋‚˜์˜ ๋ชฉ๋ก์„ ์‚ฌ์šฉํ•˜๋ฉด ์ถ”์ ๋งŒ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ทจ๋ฏธ. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๋‹ค๋ฅธ ๋ชฉ๋ก์—์„œ ์ถ”์ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์†์ž๋ˆ„๊ฐ€ ์ด๋Ÿฐ ์ผ์„ ํ•˜๊ณ  ์žˆ๋‚˜์š”? ์ทจ๋ฏธ. ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์„ ๋ถ€๋ฅผ ๊ฒƒ์ž…๋‹ˆ๋‹ค "๊ณตํ†ต ๋ชฉ๋ก". ๋ง˜์— ์•ˆ๋“œ์‹œ๋Š”๊ฑฐ ๋ณด๋‹ˆ ๊ณ ๋ฏผ๋˜์„œ ๋ชฉ๋ก๋ชจ๋“œ๋กœ ๋Œ์•„๊ฐ‘๋‹ˆ๋‹ค.

id
์ทจ๋ฏธ

1
์ž์ „๊ฑฐ ํƒ€๊ธฐ

2
๋‹ฌ๋ฆฌ๋Š”

3
์ˆ˜์˜

...๋” ๋งŽ์€ ์ทจ๋ฏธ!

์ทจ๋ฏธ ๋ชฉ๋ก

์ทจ๋ฏธ ๋ชฉ๋ก์ด ์žˆ์œผ๋ฉด ๋‘ ๋ฒˆ์งธ ๋ชฉ๋ก์„ ๋งŒ๋“ค๊ณ  ์ด๋ฆ„์„ "์†์ž์˜ ์ทจ๋ฏธ".

์†์ž_ID
์ทจ๋ฏธ_ID

4
1

3
1

7
2

โ€ฆ๋”!

์†์ž ์ทจ๋ฏธ์˜ ์ผ๋ฐ˜ ๋ชฉ๋ก

์ด ๋ชจ๋“  ์ž‘์—…์„ ๋งˆ์นœ ํ›„ ํ• ๋จธ๋‹ˆ๋Š” ์ด์ œ ๋†€๋ž๋„๋ก ๋Œ€๊ฐ€์กฑ ์ „์ฒด๋ฅผ ์ถ”์ ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ‹์ง„ ๋ฉ”๋ชจ๋ฆฌ ์‹œ์Šคํ…œ์„ ๊ฐ–๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ โ€“ ๋‚˜๋ฅผ ๋” ์˜ค๋ž˜ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด โ€“ ๊ทธ๋…€๋Š” "์ด ๋ชจ๋“  ๊ฒƒ์„ ์–ด๋””์„œ ๋ฐฐ์› ์Šต๋‹ˆ๊นŒ? "๋ผ๋Š” ๋งˆ๋ฒ•์˜ ์งˆ๋ฌธ์„ ๋ฌป์Šต๋‹ˆ๋‹ค.

๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต์‹์ ์œผ๋กœ ์„ค๋ช…๋œ ํ…Œ์ด๋ธ” ์„ธํŠธ(์ด ์˜ˆ์—์„œ๋Š” ์‹œํŠธ)์ž…๋‹ˆ๋‹ค. ์— ๋”ฐ๋ฅด๋ฉด ํ…Œ์ด๋ธ”์„ ๋‹ค์‹œ ์ •๋ฆฌํ•  ํ•„์š” ์—†์ด ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ์ˆ˜์ง‘ํ•˜๊ฑฐ๋‚˜ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค. ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—๋Š” ๋‹ค์–‘ํ•œ ์œ ํ˜•์ด ์žˆ์ง€๋งŒ ๋ถˆํ–‰ํžˆ๋„ ์ข…์ด์— ์ ํžŒ ๋ชฉ๋ก์€ ๊ทธ ์ค‘ ํ•˜๋‚˜๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.

๊ฐ€์žฅ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ํŠน์ง•์€ SQL(Structured Query Language) ์ฟผ๋ฆฌ ์–ธ์–ด์ž…๋‹ˆ๋‹ค. ๋•๋ถ„์— ํ• ๋จธ๋‹ˆ๊ฐ€ ์ž์‹ ์˜ ๊ธฐ์–ต ์‹œ์Šคํ…œ์„ ์ปดํ“จํ„ฐ๋กœ ์˜ฎ๊ธฐ๋ฉด โ€œ์ž‘๋…„์— ๋‚˜๋ฅผ ๋ฐฉ๋ฌธํ•˜์ง€ ์•Š์€ ์‚ฌ๋žŒ, ๊ฒฐํ˜ผํ–ˆ๊ณ  ์ทจ๋ฏธ๊ฐ€ ์—†๋Š” ์‚ฌ๋žŒ์€ ๋ˆ„๊ตฌ์ž…๋‹ˆ๊นŒ?โ€์™€ ๊ฐ™์€ ์งˆ๋ฌธ์— ๋Œ€ํ•œ ๋‹ต์„ ๋นจ๋ฆฌ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ€์žฅ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” SQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ ์ค‘ ํ•˜๋‚˜๋Š” ์˜คํ”ˆ ์†Œ์Šค MySQL์ž…๋‹ˆ๋‹ค. ์ฃผ๋กœ ์›น ๊ธฐ๋ฐ˜ ์†Œํ”„ํŠธ์›จ์–ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์œ„ํ•œ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ(RDBMS)์œผ๋กœ ๊ตฌํ˜„๋ฉ๋‹ˆ๋‹ค.

MySQL์˜ ์ผ๋ถ€ ์ฃผ์š” ๊ธฐ๋Šฅ:

  • ๊ฝค ์ž˜ ์•Œ๋ ค์ ธ ์žˆ๊ณ  ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋ฉฐ ๊ด‘๋ฒ”์œ„ํ•˜๊ฒŒ ํ…Œ์ŠคํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • SQL ๋ฐ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ ๊ฒฝํ—˜์ด ์žˆ๋Š” ์ˆ™๋ จ๋œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋งŽ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ฐ์ดํ„ฐ๋Š” ๋‹ค์–‘ํ•œ ํ…Œ์ด๋ธ”์— ์ €์žฅ๋˜๋ฏ€๋กœ ๊ธฐ๋ณธ ํ‚ค์™€ ์™ธ๋ž˜ ํ‚ค(์‹๋ณ„์ž)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ด€๊ณ„๋ฅผ ์‰ฝ๊ฒŒ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฝ๊ณ  ํšจ์œจ์ ์ด๋ฏ€๋กœ ํฌ๊ณ  ์ž‘์€ ๊ธฐ์—…์— ์ด์ƒ์ ์ž…๋‹ˆ๋‹ค.
  • ์†Œ์Šค ์ฝ”๋“œ๋Š” GNU General Public License์˜ ์กฐ๊ฑด์„ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.

์ด์ œ ์žŠ์–ด๋ฒ„๋ ค ๋ชจ๋‘.

ํ• ๋จธ๋‹ˆ์—๊ฒŒ NoSQL์„ ์„ค๋ช…ํ•˜๋Š” ์ค‘

ํ• ๋จธ๋‹ˆ, ์šฐ๋ฆฌ์—๊ฒ ๋Œ€๊ฐ€์กฑ์ด ์žˆ์–ด์š”. ๊ทธ๋…€์—๊ฒŒ๋Š” 150๋ช…์˜ ์†์ž๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค! ๊ทธ๋“ค ์ค‘ ๋‹ค์ˆ˜๋Š” ๊ฒฐํ˜ผํ–ˆ๊ณ , ์ž๋…€๊ฐ€ ์žˆ์œผ๋ฉฐ, ๋ฌด์—‡์ธ๊ฐ€๋ฅผ ์ข‹์•„ํ•ฉ๋‹ˆ๋‹ค. ๋‹น์‹  ๋‚˜์ด์—๋Š” ์šฐ๋ฆฌ ๋ชจ๋‘์— ๊ด€ํ•œ ๋ชจ๋“  ๊ฒƒ์„ ๊ธฐ์–ตํ•˜๋Š” ๊ฒƒ์ด ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๋‹น์‹ ์—๊ฒŒ ํ•„์š”ํ•œ ๊ฒƒ์€ ๋ฉ”๋ชจ๋ฆฌ ์‹œ์Šคํ…œ์ž…๋‹ˆ๋‹ค!

๋‹คํ–‰ํžˆ ๋‚˜๋Š” ์•„๋‹ˆ ๋‚ด ์ƒ์ผ๊ณผ ์ข‹์•„ํ•˜๋Š” ์•„์ด์Šคํฌ๋ฆผ ๋ง›์„ ์žŠ์œผ์‹œ๊ธธ ๋ฐ”๋ผ๋ฉด์„œ ์ œ๊ฐ€ ๋„์™€๋“œ๋ฆด ์ˆ˜ ์žˆ์–ด์š”. ๊ทธ๋ž˜์„œ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ฐ€๊ฒŒ๋กœ ๋‹ฌ๋ ค๊ฐ€์„œ ์ˆ˜์ฒฉ์„ ๋“ค๊ณ  ์ง‘์œผ๋กœ ๋Œ์•„๊ฐ‘๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ์ทจํ•˜๋Š” ์ฒซ ๋ฒˆ์งธ ๋‹จ๊ณ„๋Š” ๋‚ด ๋…ธํŠธ ํ‘œ์ง€์— ํฌ๊ณ  ๊ตต์€ ๊ธ€์”จ๋กœ "์†์ฃผ"๋ผ๊ณ  ์“ฐ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ์ฒซ ๋ฒˆ์งธ ํŽ˜์ด์ง€๋กœ ๋„˜๊ธฐ๊ณ  ๋‚˜์— ๋Œ€ํ•ด ๊ธฐ์–ตํ•ด์•ผ ํ•  ๋ชจ๋“  ๊ฒƒ์„ ์“ฐ๊ธฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๋ช‡ ๋ถ„ ํ›„ ํŽ˜์ด์ง€๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

{ 
  "_id":"dkdigiye82gd87gd99dg87gd",
  "name":"Cody",
  "birthday":"09-12-2006",
  "last_visit":"09-02-2019",
  "clothing_size":"XL",
  "favorite_ice_cream":"Fudge caramel",
  "adopted":false,
  "hobbies":[ 
     "video games",
     "computers",
     "cooking"
  ],
  "spouse":null,
  "kids":[ 

  ],
  "favorite_picture":"file://scrapbook-103/christmas-2010.jpg",
  "misc_notes":"Prefers ice-cream cake on birthday instead of chocolate cake!"
}

ะฏ: โ€œ๋ชจ๋“  ๊ฒƒ์ด ์ค€๋น„๋œ ๊ฒƒ ๊ฐ™์•„์š”!โ€
ะ‘ะฐะฑัƒัˆะบะฐ: โ€œ์ž ๊น, ๋‚˜๋จธ์ง€ ์†์ž๋“ค์€ ์–ด์ฉŒ๊ณ ?โ€
ะฏ: "๋งž์•„์š”. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๊ฐ๊ฐ์— ๋Œ€ํ•ด ํ•œ ํŽ˜์ด์ง€๋ฅผ ํ• ๋‹นํ•˜์‹ญ์‹œ์˜ค.โ€
ะ‘ะฐะฑัƒัˆะบะฐ: โ€œ๋‚ด๊ฐ€ ๋‹น์‹ ์—๊ฒŒ ํ–ˆ๋˜ ๊ฒƒ์ฒ˜๋Ÿผ ๋ชจ๋“  ์‚ฌ๋žŒ์— ๋Œ€ํ•ด ๋™์ผํ•œ ์ •๋ณด๋ฅผ ๋ชจ๋‘ ์ ์–ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?โ€
ะฏ: โ€œ์•„๋‹ˆ์š”, ์›ํ•  ๊ฒฝ์šฐ์—๋งŒ์š”. ๋ณด์—ฌ์ฃผ๊ฒŒ."
๋‚˜๋Š” ํ• ๋จธ๋‹ˆ์˜ ํŽœ์„ ์žก๊ณ  ํŽ˜์ด์ง€๋ฅผ ๋„˜๊ธฐ๊ณ  ๋‚ด๊ฐ€ ๊ฐ€์žฅ ์ข‹์•„ํ•˜์ง€ ์•Š๋Š” ์‚ฌ์ดŒ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๋น ๋ฅด๊ฒŒ ์ ์Šต๋‹ˆ๋‹ค.

{ 
  "_id":"dh97dhs9b39397ss001",
  "name":"Tanner",
  "birthday":"09-12-2008",
  "clothing_size":"S",
  "friend_count":0,
  "favorite_picture":null,
  "remember":"Born on same day as Cody but not as important"
}

ํ• ๋จธ๋‹ˆ๊ฐ€ ์†์ž ์ค‘ ํ•œ ๋ช…์— ๋Œ€ํ•ด ๊ธฐ์–ตํ•ด์•ผ ํ•  ๋•Œ๋งˆ๋‹ค ์†์ž์˜ ๋…ธํŠธ์—์„œ ์˜ฌ๋ฐ”๋ฅธ ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋“ค์— ๋Œ€ํ•œ ๋ชจ๋“  ์ •๋ณด๋Š” ํŽ˜์ด์ง€์— ๋ฐ”๋กœ ์ €์žฅ๋˜๋ฏ€๋กœ ์‹ ์†ํ•˜๊ฒŒ ๋ณ€๊ฒฝํ•˜๊ณ  ์—…๋ฐ์ดํŠธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  ์ž‘์—…์ด ์™„๋ฃŒ๋˜๋ฉด ๊ทธ๋…€๋Š” "์ด ๋ชจ๋“  ์ž‘์—…์„ ์–ด๋””์„œ ๋ฐฐ์› ๋‚˜์š”? "๋ผ๋Š” ๋งˆ๋ฒ•์˜ ์งˆ๋ฌธ์„ ๋˜์ง‘๋‹ˆ๋‹ค.

NoSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

๋งŽ์ด์žˆ๋‹ค. NoSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค (โ€œ๋‹จ์ˆœํ•œ SQL์ด ์•„๋‹™๋‹ˆ๋‹คโ€). ์šฐ๋ฆฌ์˜ ์˜ˆ์—์„œ ์šฐ๋ฆฌ๋Š” ๋ณด์—ฌ์ฃผ์—ˆ์Šต๋‹ˆ๋‹ค ๋ฌธ์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค. NoSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์‚ฌ์šฉ๋˜๋Š” ํ…Œ์ด๋ธ” ๊ด€๊ณ„๋ฅผ ์ œ์™ธํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ชจ๋ธ๋งํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” 2000๋…„๋Œ€ ์ดˆ๋ฐ˜ ๋ช…์‹œ์ ์ธ ํ™•์žฅ ์š”๊ตฌ ์‚ฌํ•ญ(์˜ˆ: Facebook)์œผ๋กœ ์ธํ•ด ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํด๋Ÿฌ์Šคํ„ฐ๋ง์ด ํ•„์š”ํ•œ ํšŒ์‚ฌ์—์„œ ์ธ๊ธฐ๋ฅผ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ๋Š” ๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑ์ด ์„ฑ๋Šฅ๊ณผ ํ™•์žฅ์„ฑ๋ณด๋‹ค ํ›จ์”ฌ ๋œ ์ค‘์š”ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ฒ˜์Œ์—๋Š” NoSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ํ‹ˆ์ƒˆ ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ ์ž‘์—…์— ์ž์ฃผ ์‚ฌ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์›น ๋ฐ ํด๋ผ์šฐ๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ฒฝ์šฐ NoSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์ƒ๋‹นํ•œ ์–‘์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ณ  ๋ฐฐํฌํ–ˆ์Šต๋‹ˆ๋‹ค. NoSQL ์—”์ง€๋‹ˆ์–ด๋“ค์€ ๋˜ํ•œ ์—…๋ฐ์ดํŠธ๋˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ๋น ๋ฅธ ๋ณ€๊ฒฝ์ด ๊ฐ€๋Šฅํ•˜๋„๋ก ์œ ์—ฐํ•œ ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ(๋˜๋Š” ๊ทธ๊ฒƒ์ด ๋ถ€์กฑํ•จ)๋ฅผ ์ข‹์•„ํ–ˆ์Šต๋‹ˆ๋‹ค.

NoSQL์˜ ์ฃผ์š” ๊ธฐ๋Šฅ:

  • ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋งค์šฐ ์œ ์—ฐํ•œ ๋ฐฉ๋ฒ•
  • ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ์ˆ˜ํ‰์  ํ™•์žฅ
  • ์ง€์†์„ฑ/ํ™•์‚ฐ๋ณ„ ๊ฐ€๋Šฅํ•œ ์‹œํ€€์‹ฑ
  • ๊ณ ์œ  ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‹๋ณ„๋˜๋Š” ๋ฌธ์„œ

์ƒ์„ธํ•œ ๋น„๊ต

MySQL์—๋Š” ์ •์˜๋˜๊ณ  ๊ตฌ์กฐํ™”๋œ ์Šคํ‚ค๋งˆ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
NoSQL์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ "๋ฌธ์„œ"์— ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

MySQL์—๋Š” ๊ฑฐ๋Œ€ํ•œ ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
NoSQL์€ ๊ทœ๋ชจ๊ฐ€ ์ž‘๊ณ  ๋น ๋ฅด๊ฒŒ ์„ฑ์žฅํ•˜๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ๋ณด์œ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

NoSQL์€ ํ™•์žฅ์ด ์‰ฝ์Šต๋‹ˆ๋‹ค.
MySQL์—๋Š” ๋” ๋งŽ์€ ๊ด€๋ฆฌ ํšจ์œจ์„ฑ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

MySQL์€ ๋‹ค์–‘ํ•œ ์œ ํ˜•์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์‚ฌ์šฉ๋˜๋Š” SQL์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
NoSQL์€ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ๊ตฌํ˜„์„ ๊ฐ–์ถ˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ธฐ๋ฐ˜ ์„ค๊ณ„์ž…๋‹ˆ๋‹ค.

MySQL์€ ํ‘œ์ค€ ์ฟผ๋ฆฌ ์–ธ์–ด(SQL)๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
NoSQL์€ ํ‘œ์ค€ ์ฟผ๋ฆฌ ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

MySQL์—๋Š” ํ›Œ๋ฅญํ•œ ๋ณด๊ณ  ๋„๊ตฌ๊ฐ€ ๋งŽ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
NoSQL์—๋Š” ํ‘œ์ค€ํ™”ํ•˜๊ธฐ ์–ด๋ ค์šด ์—ฌ๋Ÿฌ ๋ณด๊ณ  ๋„๊ตฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

MySQL์€ ๋น… ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ์„ฑ๋Šฅ ๋ฌธ์ œ๋ฅผ ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
NoSQL์€ ๋น…๋ฐ์ดํ„ฐ์— ํƒ์›”ํ•œ ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์ƒ๊ฐ8base

ํšŒ์‚ฌ 8๋ฒ ์ด์Šค์ œ๊ฐ€ ์ผํ•˜๋Š” ๊ณณ์—์„œ๋Š” AWS์—์„œ ํ˜ธ์ŠคํŒ…๋˜๋Š” Aurora MySQL ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ ํ”„๋กœ์ ํŠธ์— ์ž‘์—… ๊ณต๊ฐ„์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๊ณ ์„ฑ๋Šฅ๊ณผ ํ™•์žฅ์„ฑ์„ ์š”๊ตฌํ•  ๊ฒฝ์šฐ NoSQL์ด ๋…ผ๋ฆฌ์ ์ธ ์„ ํƒ์ธ ๋ฐ˜๋ฉด, SaaS ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ๊ธฐํƒ€ ๋น„์ฆˆ๋‹ˆ์Šค ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๊ตฌ์ถ•ํ•  ๋•Œ๋Š” DBMS๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๊ฐ•๋ ฅํ•œ ๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑ์ด ํ•„์ˆ˜์ ์ด๋ผ๊ณ  ๋ฏฟ์Šต๋‹ˆ๋‹ค.

๋ณด๊ณ , ํŠธ๋žœ์žญ์…˜ ๋ฌด๊ฒฐ์„ฑ ๋ฐ ์ž˜ ์ •์˜๋œ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์ด ํ•„์š”ํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์ถ•ํ•˜๋Š” ์Šคํƒ€ํŠธ์—… ๋ฐ ๊ฐœ๋ฐœ์ž์˜ ๊ฒฝ์šฐ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ํˆฌ์žํ•˜๋Š” ๊ฒƒ์ด ์˜ฌ๋ฐ”๋ฅธ ์„ ํƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

8base.com์—์„œ Aurora, Serverless ๋ฐ GraphQL์„ ์‚ฌ์šฉํ•œ ๊ฐœ๋ฐœ์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์•Œ์•„๋ณด์„ธ์š”. ์—ฌ๊ธฐ์—.

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€