2022๋…„ 10์›” 29์ผยท4๋ถ„ ์ฝ๊ธฐ

PostgreSQL์ด๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

PostgreSQL์€ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๊ณ  ์ž˜ ์ง€์›๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์ด ์ œ๊ณตํ•˜๋Š” ํ˜œํƒ์€ ๋ฌด์—‡์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๊นŒ? ์ž์„ธํžˆ ์•Œ์•„๋ณด๋ ค๋ฉด ๊ณ„์† ์ฝ์–ด๋ณด์„ธ์š”!

PostgreSQL์ด๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

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

ํ”„๋กœ์ ํŠธ์˜ ์ œ๋ชฉ์€ SQL ์ง€์›์„ ๋” ์ž˜ ๋‚˜ํƒ€๋‚ด๊ธฐ ์œ„ํ•ด 1996๋…„์— PostgreSQL๋กœ ๋ณ€๊ฒฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ์€ ACID ์†์„ฑ(Atomicity, Consistency, Isolation ๋ฐ Durability)์„ ๋”ฐ๋ฅด๋Š” ํŠธ๋žœ์žญ์…˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋ณ„๋„์˜ ์›Œํฌ์Šคํ…Œ์ด์…˜์—์„œ ์ „์ฒด ๋ฐ์ดํ„ฐ ์›จ์–ดํ•˜์šฐ์Šค ๋˜๋Š” ์—ฌ๋Ÿฌ ๋™์‹œ ์‚ฌ์šฉ์ž๊ฐ€ ์žˆ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ด๋ฅด๊ธฐ๊นŒ์ง€ ๋ชจ๋“  ๊ฒƒ์„ ํฌํ•จํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์›Œํฌ๋กœ๋“œ๋ฅผ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ๋งŒ๋“ค์–ด์กŒ์Šต๋‹ˆ๋‹ค. macOS Server ์˜ ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ผ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ Windows, Linux, FreeBSD ๋ฐ OpenBSD ์™€ ๊ฐ™์€ ์šด์˜ ์ฒด์ œ์—์„œ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

PostgreSQL์ด๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

PostgreSQL์€ ๊ฐ•๋ ฅํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ์ˆ˜์ค€์˜ ์˜คํ”ˆ ์†Œ์Šค ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ž…๋‹ˆ๋‹ค. ๊ด€๊ณ„ํ˜• SQL ๋ฐ ๋น„๊ด€๊ณ„ํ˜• JSON ๋ฐ์ดํ„ฐ ๋ฐ ์ฟผ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. PostgreSQL์—๋Š” ๊ฐ•๋ ฅํ•œ ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. PostgreSQL์€ ๋›ฐ์–ด๋‚œ ์ˆ˜์ค€์˜ ์ง€์›, ๋ณด์•ˆ ๋ฐ ์ •ํ™•์„ฑ์„ ๊ฐ–์ถ˜ ๋งค์šฐ ์•ˆ์ •์ ์ธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์ž…๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ๋ชจ๋ฐ”์ผ ๋ฐ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ PostgreSQL์„ ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋งŽ์€ ์ง€๋ฆฌ ๊ณต๊ฐ„ ๋ฐ ๋ถ„์„ ์†”๋ฃจ์…˜๋„ PostgreSQL์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ตœ์‹  ๋ฒ„์ „์€ PostgreSQL 15์ž…๋‹ˆ๋‹ค.

PostgreSQL์€ ์ •๊ตํ•œ ๋ฐ์ดํ„ฐ ์œ ํ˜•์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์‹ค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๋งŽ์€ ๋ฐ์ดํ„ฐ ์œ ํ˜•์„ ์—ผ๋‘์— ๋‘๊ณ  ๋งŒ๋“ค์–ด์กŒ์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ฑ๋Šฅ์€ Oracle ๋ฐ SQL Server์™€ ๊ฐ™์€ ๊ฒฝ์Ÿ์—…์ฒด์™€ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค. AWS ๋Š” Amazon Relational Database Service๋ฅผ ํ†ตํ•ด PostgreSQL์šฉ์œผ๋กœ ์™„๋ฒฝํ•˜๊ฒŒ ์œ ์ง€ ๊ด€๋ฆฌ๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. PostgreSQL์€ Amazon Aurora ๊ตฌ์ถ•์—๋„ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—์„œ PostgreSQL ์„ค๋ช…์„œ ์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์•Œ์•„๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฃผ์š” PostgreSQL ๊ธฐ๋Šฅ

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

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๋˜ํ•œ ๋งค์šฐ ์ง„๋ณด๋œ ์ž ๊ธˆ ์‹œ์Šคํ…œ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์—ฌ๋Ÿฌ ๋ฒ„์ „๊ณผ์˜ ๋™์‹œ์„ฑ ์ œ์–ด ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค. PostgreSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„์—๋Š” ์„ฑ์ˆ™ํ•œ ์„œ๋ฒ„ ์ธก ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์œ„ํ•œ ๊ธฐ๋Šฅ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ANSI SQL ์‚ฌ์–‘์„ ์ค€์ˆ˜ํ•˜๋ฉฐ ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„ ๋„คํŠธ์›Œํฌ ์•„ํ‚คํ…์ฒ˜๋„ ์™„๋ฒฝํ•˜๊ฒŒ ์ง€์›๋ฉ๋‹ˆ๋‹ค.

PostgreSQL์—๋Š” ๊ณ ๊ฐ€์šฉ์„ฑ๊ณผ ๋ฐฑ์—… ์„œ๋ฒ„๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ANSI-SQL2008 ๋ฐ ๊ฐ์ฒด ์ง€ํ–ฅ์„ ์ค€์ˆ˜ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์ค‘ ์–ธ์–ด ์‹œ์Šคํ…œ์„ ์œ„ํ•œ ํ†ตํ•ฉ ํ—ˆ๋ธŒ ์—ญํ• ์„ ํ•˜๋Š” NoSQL ๊ณผ ๊ฐ™์€ ๋‹ค๋ฅธ ๋ฐ์ดํ„ฐ ์›จ์–ดํ•˜์šฐ์Šค์™€ ์—ฐ๊ฒฐํ•˜๋Š” ๊ธฐ๋Šฅ์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ JSON ์ง€์›์„ ํ†ตํ•ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ •ํ™•ํžˆ ํ•˜๋‚˜์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ •๋ณด๋Š” ํ•ญ์ƒ ํ•˜๋‚˜์˜ PostgreSQL ์ธ์Šคํ„ด์Šค์— ์˜ํ•ด ๊ด€๋ฆฌ๋ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํด๋Ÿฌ์Šคํ„ฐ๋Š” ํŒŒ์ผ ์‹œ์Šคํ…œ์˜ ๋™์ผํ•œ ์œ„์น˜์— ๋ณด๊ด€๋˜๋Š” ๋ ˆ์ฝ”๋“œ ๊ทธ๋ฃน์ž…๋‹ˆ๋‹ค.

SQL๊ณผ์˜ ์ฐจ์ด์ 

์šฐ๋ฆฌ๋Š” PostgreSQL์ด ์ตœ์‹  ๋ฒ„์ „์˜ SQL ์„ ์ง€์›ํ•˜๋Š” ๊ฒƒ์„ ๋ณด์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋‘˜์€ ์ •ํ™•ํžˆ ์–ด๋–ป๊ฒŒ ๋‹ค๋ฅธ๊ฐ€์š”? Oracle Corporation์€ ํ˜„์žฌ ์‚ฌ์šฉ์ž๊ฐ€ ๋น„์šฉ์„ ์ง€๋ถˆํ•ด์•ผ ํ•˜๋Š” ์—ฌ๋Ÿฌ ํ”„๋ฆฌ๋ฏธ์—„ ๋ฒ„์ „์ด ์žˆ๋Š” MySQL ํ”„๋กœ์ ํŠธ๋ฅผ ์†Œ์œ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋™์‹œ์— PostgreSQL์€ ๋ฌด๋ฃŒ ์˜คํ”ˆ ์†Œ์Šค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ž…๋‹ˆ๋‹ค. PostgreSQL๊ณผ ๋‹ฌ๋ฆฌ MySQL์€ NDB ๋ฐ InnoDB Cluster Collection ์—”์ง„๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ๋•Œ๋งŒ ์™„์ „ํžˆ ACID์™€ ํ˜ธํ™˜๋ฉ๋‹ˆ๋‹ค.

MySQL ์€ OLAP ๋ฐ OLTP ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ๊ฐ™์ด ์ฝ๊ธฐ ์„ฑ๋Šฅ์ด ์œ ์ผํ•œ ์š”์†Œ์ผ ๋•Œ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋™์‹œ์— PostgreSQL์˜ ์„ฑ๋Šฅ์€ ์ •๊ตํ•œ ๊ฒ€์ƒ‰ ์ฒ˜๋ฆฌ๊ฐ€ ํ•„์š”ํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์ตœ์ ์ž…๋‹ˆ๋‹ค. MySQL ์€ ์ฝ๊ธฐ ์–ด๋ ค์šด ๊ฒฝํ–ฅ์ด ์žˆ๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ์ธํ…”๋ฆฌ์ „์Šค ํ”„๋กœ์ ํŠธ์™€ ํ•จ๊ป˜ ์ž‘์—…ํ•  ๋•Œ ๋” ์˜์กด์ ์ž…๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด PostgreSQL์€ ๋ถ„์„ ๋ฐ ์›จ์–ดํ•˜์šฐ์ง• ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ๋” ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

PostgreSQL์€ ๋ฌด์—‡์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๊นŒ?

์—ฌ๋Ÿฌ ์œ ๋ช… ๋ธŒ๋žœ๋“œ์™€ ํšŒ์‚ฌ์—์„œ PostgreSQL์„ ๋ฐฑ์—”๋“œ์˜ ์ผ๋ถ€๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” Netflix , Uber, Instagram ๋“ฑ๊ณผ ๊ฐ™์€ ์ด๋ฆ„์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ด๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค์–‘ํ•œ ์ข…๋ฅ˜์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งŽ์€ ์–‘์˜ ๋ณต์žกํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํŠนํžˆ ์ธ๊ธฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. PostgreSQL ์—๋Š” ์ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์—ฌ๋Ÿฌ ์†Œํ”„ํŠธ์›จ์–ด ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ๋‹ค์Œ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

๊ธˆ์œต ๋ถ€๋ฌธ

PostgreSQL ์€ ๊ธˆ์œต ๋ถ€๋ฌธ์„ ์œ„ํ•œ ํƒ์›”ํ•œ DBMS ์ž…๋‹ˆ๋‹ค. ์ด์ „์— ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด ACID ์™€ ์™„์ „ํžˆ ํ˜ธํ™˜๋˜๋ฏ€๋กœ ์˜จ๋ผ์ธ ํŠธ๋žœ์žญ์…˜ ์ฒ˜๋ฆฌ ๋˜๋Š” OLTP์— ๊ฐ€์žฅ ์ ํ•ฉํ•œ ์˜ต์…˜์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ถ„์„์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ Matlab, R ๊ณผ ๊ฐ™์€ ์ˆ˜ํ•™ ํ”„๋กœ๊ทธ๋žจ์„ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ •๋ถ€ ์ง€๋ฆฌ ์ •๋ณด ์‹œ์Šคํ…œ( GIS) ๋ฐ์ดํ„ฐ ์ €์žฅ

PostgreSQL ์—์„œ ์ œ๊ณตํ•˜๋Š” ๊ฐ•๋ ฅํ•œ GIS ๋Š” PostGIS ๋กœ ์•Œ๋ ค์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ชจ๋“ˆ์—๋Š” ๋‹ค์–‘ํ•œ ํ˜•ํƒœ์˜ ๊ธฐํ•˜ํ•™์  ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ์ˆ˜๋งŽ์€ ๊ธฐ๋Šฅ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. PostGIS ๋Š” ๋งŽ์€ SQL ํ‘œ์ค€์„ ์ค€์ˆ˜ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์˜คํ”ˆ ์†Œ์Šค ์ปค๋ฎค๋‹ˆํ‹ฐ๋Š” QGIS ์™€ GeoServer ๋ฅผ ๋ชจ๋‘ ํ™œ์šฉํ•˜์—ฌ Geodata ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์กฐ์ž‘

์‚ฐ์—… ํšŒ์‚ฌ๋Š” ํ˜„์žฌ PostgreSQL์„ ์‚ฌ์šฉํ•˜์—ฌ ์ „์ฒด ์›Œํฌํ”Œ๋กœ๋ฅผ ๊ฐ„์†Œํ™”ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์˜คํ”ˆ ์†Œ์Šค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๋ฐ์ดํ„ฐ ๋ฐฑ์—”๋“œ๋กœ ํ™œ์šฉํ•˜๋ฉด ๊ณต๊ธ‰๋ง์˜ ํšจ์œจ์„ฑ์„ ๋”์šฑ ์ตœ์ ํ™”ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๊ธฐ์—…์€ ์šด์˜ ๋น„์šฉ์„ ์ ˆ๊ฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์›น์‚ฌ์ดํŠธ ๊ฐœ๋ฐœ ๋ฐ NoSQL

์‚ฌ์ดํŠธ์—์„œ ์ดˆ๋‹น ๋งŽ์€ ์ˆ˜์˜ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ํ™•์žฅ์€ ์˜์‹ฌํ•  ์—ฌ์ง€ ์—†์ด ์ค‘์š”ํ•œ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ ๊ฐ€์žฅ ์ข‹์€ ์˜ต์…˜์€ PostgreSQL ์ž…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” Django, Node.js, PHP, Hibernate ๋“ฑ์„ ํฌํ•จํ•œ ๋ชจ๋“  ์ตœ์‹  ์›น ํ”„๋ ˆ์ž„์›Œํฌ์—์„œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์›ํ•˜๋Š” ๋งŒํผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์„ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๋ณต์ œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๊ณผํ•™ ์ •๋ณด

ํ•™๋ฌธ์  ๋˜๋Š” ๊ณผํ•™์  ๋…ธ๋ ฅ์— ์ข…์‚ฌํ•˜๋Š” ๊ฒฝ์šฐ ํ…Œ๋ผ๋ฐ”์ดํŠธ์˜ ์ •๋ณด๋ฅผ ์ƒ์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ด ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€๋Šฅํ•œ ๊ฐ€์žฅ ํšจ๊ณผ์ ์ธ ๋ฐฉ์‹์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. PostgreSQL์˜ ํ™˜์ƒ์ ์ธ ๋ถ„์„ ๊ธฐ๋Šฅ๊ณผ ๊ฐ•๋ ฅํ•œ SQL ์—”์ง„์€ ์ด์— ์ด์ƒ์ ์ž…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋งŽ์€ ๋ฐ์ดํ„ฐ๋ฅผ ๋” ์‰ฝ๊ฒŒ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

PostgreSQL ์‚ฌ์šฉ์˜ ์ด์ 

PostgreSQL ์—๋Š” ์˜คํ”ˆ ์†Œ์Šค ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ ์•ˆ์ •์„ฑ์— ์ด๋ฅด๊ธฐ๊นŒ์ง€ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋งค์šฐ ๋งค๋ ฅ์ ์ธ ๋ช‡ ๊ฐ€์ง€ ์ฃผ์š” ์ด์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์˜คํ”ˆ์†Œ์Šค ๋ผ์ด์„ ์Šค๋ฅผ ํ†ตํ•ด PostgreSQL ์˜ ์†Œ์Šค์ฝ”๋“œ์— ๋ฌด๋ฃŒ๋กœ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด ๋•Œ๋ฌธ์— ํšŒ์‚ฌ์—์„œ ์š”๊ตฌํ•˜๋Š” ๋Œ€๋กœ ์‚ฌ์šฉ, ๋ณ€๊ฒฝ ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฝ๊ธฐ ๋•Œ๋ฌธ์— PostgresSQL ์„ ์ดํ•ดํ•˜๋Š” ๋ฐ ๋งŽ์€ ์ง€์นจ์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ํ†ตํ•ฉ ๋ฐ ๊ธฐ์—… ์‚ฌ์šฉ์„ ์œ„ํ•ด ์œ ์ง€ ๊ด€๋ฆฌํ•˜๊ธฐ ์‰ฝ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์ฃผ์š” ์ด์  ์ค‘ ์ผ๋ถ€์ž…๋‹ˆ๋‹ค.

์ข‹์€ PostgreSQL ๊ธฐ๋Šฅ

PostgreSQL ์—๋Š” ๋งค์šฐ ๊ฐ•๋ ฅํ•œ ๊ธฐ๋Šฅ ์„ธํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” MVCC ( Multi-Version Concurrency Control) ๊ธฐ๋Šฅ๊ณผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ฑ๋Šฅ์„ ๋‹ค์‹œ ์บก์ฒ˜ํ•˜๋Š” ํŠน์ • ์‹œ์ ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—๋Š” ์„ธ๋ถ„ํ™”๋œ ์•ก์„ธ์Šค ์ œ์–ด, ํ…Œ์ด๋ธ”์ŠคํŽ˜์ด์Šค ๋ฐ ๋น„๋™๊ธฐ ์žฌ์ƒ ๊ธฐ๋Šฅ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์ •๋ณด์˜ ์–‘๊ณผ ์ง€์›ํ•  ์ˆ˜ ์žˆ๋Š” ๋™์‹œ ๊ณ ๊ฐ ์ˆ˜ ๋ฉด์—์„œ PostgreSQL ์€ ํ™•์žฅ์„ฑ์ด ๋›ฐ์–ด๋‚ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๋˜ํ•œ ๊ตญ์ œ ๋ฌธ์ž ์ง‘ํ•ฉ, ์œ ๋‹ˆ์ฝ”๋“œ ๋ฐ ๋ฉ€ํ‹ฐ๋ฐ”์ดํŠธ ๋ฌธ์ž์—ด ์•”ํ˜ธํ™”๋ฅผ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์ค‘์ฒฉ๋œ ํŠธ๋žœ์žญ์…˜, ์˜จ๋ผ์ธ ๋ฐฑ์—… ๋ฐ ๋ฏธ๋ฆฌ ์“ฐ๊ธฐ ๋กœ๊น…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜คํ”ˆ ์†Œ์Šค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

PostgreSQL์˜ ์†Œ์Šค ์ฝ”๋“œ๋Š” ์˜คํ”ˆ ์†Œ์Šค ๋ผ์ด์„ ์Šค๋ฅผ ํ†ตํ•ด ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์›ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ PostgreSQL ์„ ์‚ฌ์šฉ, ๋ณ€๊ฒฝ ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. PostgreSQL๊ณผ ๊ด€๋ จ๋œ ๋ผ์ด์„ ์Šค ๋น„์šฉ์ด ์—†์œผ๋ฏ€๋กœ ๊ณผ์ž‰ ๋ฐฐํฌ์˜ ๊ฐ€๋Šฅ์„ฑ์ด ์—†์Šต๋‹ˆ๋‹ค. ์—ด์ •์ ์ธ PostgreSQL ์ปค๋ฎค๋‹ˆํ‹ฐ๋Š” ์ž์ฃผ ๋ฌธ์ œ๋ฅผ ๋ฐœ๊ฒฌํ•˜๊ณ  ์ˆ˜์ •ํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋ณด์•ˆ์„ ๊ฐ•ํ™”ํ•ฉ๋‹ˆ๋‹ค.

๊ทœ๋ฒ” ๋ฐ ์‹ ๋ขฐ์„ฑ ์ค€์ˆ˜

์œ„์—์„œ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด PostgreSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์ตœ๊ณ ์˜ ๊ธฐ๋Šฅ ์ค‘ ํ•˜๋‚˜๋Š” ๋ฏธ๋ฆฌ ์“ฐ๊ธฐ ๋กœ๊น…์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์˜ค๋ฅ˜์— ๋งค์šฐ ๊ฐ•ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ๋ฐฉ๋Œ€ํ•œ ์ˆ˜์˜ ์˜คํ”ˆ ์†Œ์Šค ์ฐธ๊ฐ€์ž ๋•๋ถ„์— ๊ฐ•๋ ฅํ•œ ์ปค๋ฎค๋‹ˆํ‹ฐ ์ง€์› ์‹œ์Šคํ…œ์ด ํ†ตํ•ฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๋‹ค์–‘ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ ์™ธ๋ž˜ ํ‚ค, ๊ธฐ๋ณธ ํ‚ค, ์กฐ์ธ, ๋ณด๊ธฐ ๋“ฑ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ์šฉ์–ด๋Š” ์ผ๋ฐ˜ SQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ์™€ ๊ฐ™์€ ์˜๋ฏธ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด PostgreSQL ๊ธฐ๋ณธ ํ‚ค๋Š” ๋ ˆ์ฝ”๋“œ๋ฅผ ๋šœ๋ ทํ•˜๊ฒŒ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ๋Š” ํ•„๋“œ ์กฐํ•ฉ์˜ ํ•„๋“œ์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ์ตœ์‹  ๋ฒ„์ „์˜ SQL์—์„œ ์ง€์›ํ•˜๋Š” ๋Œ€๋ถ€๋ถ„์˜ ๋ฐ์ดํ„ฐ ์œ ํ˜•, ํŠนํžˆ INTEGER, NUMERIC, BOOLEAN, CHAR ๋“ฑ๊ณผ ๊ฐ™์€ ๋ฐ์ดํ„ฐ ์œ ํ˜•์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์ด๋ฏธ์ง€, ์˜ค๋””์˜ค ๋˜๋Š” ๋น„๋””์˜ค์™€ ๊ฐ™์€ ํฐ ๋ฐ”์ด๋„ˆ๋ฆฌ ํ•ญ๋ชฉ์˜ ์ €์žฅ์„ ์šฉ์ดํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.

PostgreSQL ์˜ ์—ญ์‚ฌ

University of California, Berkeley์˜ Michael Stonebreaker ๊ต์ˆ˜๋Š” 1986๋…„ PostgreSQL ํ”„๋กœ๊ทธ๋žจ์˜ ์‹œ์ž‘์„ ๊ฐ๋…ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ์˜ ์ดˆ๊ธฐ ์ œ๋ชฉ์ธ POSTGRES ๋Š” 1977๋…„์— ์ƒ์„ฑ๋œ Berkeley์˜ ์ดˆ๊ธฐ Ingres ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ ๊ฒฝ์˜์ž…๋‹ˆ๋‹ค. ํ˜„์žฌ ๋‹ค์Œ ์ค‘ ํ•˜๋‚˜์ธ POSTGRES ๊ฐ€์žฅ ์ž˜ ์•Œ๋ ค์ง„ ์˜คํ”ˆ ์†Œ์Šค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ ์œ ํ˜•์„ ์™„๋ฒฝํ•˜๊ฒŒ ์ œ๊ณตํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์ตœ์†Œํ•œ์˜ ๊ธฐ๋Šฅ์„ ํฌํ•จํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ๋งŽ์€ ๋ฐ์ดํ„ฐ ์œ ํ˜•์„ ๋” ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•˜๊ธฐ๋ฅผ ์›ํ•ฉ๋‹ˆ๋‹ค.

PostgreSQL ์ด ์—ฌ์ „ํžˆ Postgres ๋ผ๊ณ  ์ž์ฃผ ์–ธ๊ธ‰๋˜์ง€๋งŒ, ์ด ํ”„๋กœ์ ํŠธ๋Š” SQL ์ฟผ๋ฆฌ ์–ธ์–ด์™€์˜ ํ˜ธํ™˜์„ฑ์„ ๊ฐ•์กฐํ•˜๊ธฐ ์œ„ํ•ด 1996๋…„์— PostgreSQL ๋กœ ๋ธŒ๋žœ๋“œ๋ฅผ ๋ณ€๊ฒฝํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฌด๋ฃŒ ๋ฐ ์˜คํ”ˆ ์†Œ์Šค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” PostgreSQL Global Development Group์œผ๋กœ ์•Œ๋ ค์ง„ ํ—Œ์‹ ์ ์ด๊ณ  ๋‹ค๋ฌธํ™”์ ์ธ ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ๋กœ๋ถ€ํ„ฐ ์ฃผ๊ธฐ์ ์œผ๋กœ ์ค‘์š”ํ•˜๊ณ  ์‚ฌ์†Œํ•œ ์—…๋ฐ์ดํŠธ๋ฅผ ๊ณ„์† ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. PostgreSQL ๋ฒ„์ „ 7.2 ~ 8.2๋Š” ๋น„์ฐจ๋‹จ ๋ฐ ์Šคํ‚ค๋งˆ ์ง€์›๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ–ˆ์Šต๋‹ˆ๋‹ค.

PostgreSQL์˜ ์ธ๊ธฐ ์‚ฌ์šฉ ์‚ฌ๋ก€

์‹ค๋ฐ์ดํ„ฐ๋กœ ํ”„๋กœํ† ํƒ€์ž… ์ œ์ž‘
๋‹จ์ˆœ ๋‹ค์ด์–ด๊ทธ๋žจ์ด ์•„๋‹ˆ๋ผ ์ž‘๋™ํ•˜๋Š” ์•ฑ์œผ๋กœ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๊ณผ ์ฟผ๋ฆฌ๋ฅผ ์กฐ๊ธฐ์— ๊ฒ€์ฆํ•˜์„ธ์š”.
ํ”„๋กœํ† ํƒ€์ž… ์‹œ์ž‘

PostgreSQL ์˜ ์ฃผ์š” ์‚ฌ์šฉ ์‚ฌ๋ก€ ์ค‘ ์ผ๋ถ€๋Š” ์•„๋ž˜์— ์ž์„ธํžˆ ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

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

PostgreSQL ์€ ์ธํ„ฐ๋„ท ๋ฒ”์œ„์—์„œ ์˜จ๋ผ์ธ ์†Œํ”„ํŠธ์›จ์–ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์œ„ํ•œ ์ฃผ์š” ๋ฐ์ดํ„ฐ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์ž…๋‹ˆ๋‹ค. ์Šคํƒ€ํŠธ์—…๊ณผ ๊ธฐ์กด ๊ธฐ์—… ๋ชจ๋‘์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์†”๋ฃจ์…˜๊ณผ ์ œํ’ˆ์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

์ง€๋ฆฌ์  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

PostgreSQL์€ ์ง€๋ฆฌ ์—”ํ‹ฐํ‹ฐ๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋ฉฐ PostGIS ๋ชจ๋“ˆ( GIS)๊ณผ ๊ฒฐํ•ฉ๋  ๋•Œ ์œ„์น˜ ๊ธฐ๋ฐ˜ ์ž‘์—… ๋ฐ ์ง€๋ฆฌ ์ •๋ณด ์‹œ์Šคํ…œ์„ ์œ„ํ•œ ์ง€๋ฆฌ ๊ณต๊ฐ„ ๋ฐ์ดํ„ฐ ์ €์žฅ์†Œ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํŽ˜๋”๋ ˆ์ด์…˜ ํ—ˆ๋ธŒ

PostgreSQL ์€ ๋‹ค๋ฅธ ๋ฐ์ดํ„ฐ ์›จ์–ดํ•˜์šฐ์Šค, ํŠนํžˆ NoSQL ๊ณผ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์™ธ๋ถ€ ๋ฐ์ดํ„ฐ ๋ž˜ํผ ๋ฐ JSON ํ˜ธํ™˜์„ฑ ๋•๋ถ„์— ๋‹ค์ค‘ ์–ธ์–ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ์˜ ์—ฐํ•ฉ ์„ผํ„ฐ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

์˜คํ”ˆ ์†Œ์Šค LAPP ์Šคํƒ

LAPP ๋Š” Linux, Apache, PostgreSQL, PHP, Python ๋ฐ Perl ์˜ ์•ฝ์–ด์ž…๋‹ˆ๋‹ค. LAMP ์Šคํƒ์— ๋Œ€ํ•œ ์•ˆ์ •์ ์ธ ๋Œ€์•ˆ์ธ PostgreSQL ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋™์  ์†Œํ”„ํŠธ์›จ์–ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ์›น ํŽ˜์ด์ง€๋ฅผ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์–ธ์–ด ์ง€์›

์ „์ฒด ์ฝ”๋“œ ์†Œ์œ  ์œ ์ง€
์ง์ ‘ ํ˜ธ์ŠคํŒ…ํ•˜๊ณ  ์›ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ๋Š” ์‹ค์ œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•˜์„ธ์š”.
์ฝ”๋“œ ๋‚ด๋ณด๋‚ด๊ธฐ

PostgreSQL ์€ C ์–ธ์–ด๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ ์ฃผ์š” ๋ฐฐํฌํŒ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

  • PL/pgSQL
  • PL/Tcl
  • PL/Perl
  • PL/Python

์—ฌ๊ธฐ์„œ PL ์€ ์ ˆ์ฐจ์  ์–ธ์–ด๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

PostgreSQL ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ๋Œ€๋ถ€๋ถ„์˜ ์ฝ”๋”ฉ ์–ธ์–ด ๋ฐ ํ”„๋กœํ† ์ฝœ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

  • Python
  • Java
  • Perl
  • .๊ทธ๋ฌผ
  • Go
  • Ruby
  • C/C++
  • Tcl
  • ODBC

PostgreSQL ๋ฐ AppMaster

์ฝ”๋“œ๊ฐ€ ์—†๋Š” ๊ฐœ๋ฐœ์€ ์ผ๋ฐ˜ ๋Œ€์ค‘์ด ์†Œํ”„ํŠธ์›จ์–ด ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ๋” ์‰ฝ๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋„๋ก ํ–ˆ์Šต๋‹ˆ๋‹ค. ํ•œ๋•Œ ์†Œํ”„ํŠธ์›จ์–ด ์—”์ง€๋‹ˆ์–ด๋งŒ ํ•  ์ˆ˜ ์žˆ์—ˆ๋˜ ์ผ์ด ์ด์ œ๋Š” ํ›จ์”ฌ ๋” ์‰ฝ๊ฒŒ ํ•™์Šตํ•  ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. No-code ๊ฐœ๋ฐœ์„ ํ†ตํ•ด ์‚ฌ๋žŒ๋“ค์€ ๋ฐ˜์‘ํ˜• ์›น์‚ฌ์ดํŠธ์™€ ๋ชจ๋ฐ”์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ์›น ์•ฑ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

AppMaster๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” ์›ํ•˜๋Š” ๊ฒฝ์šฐ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๋‚ด๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. AppMaster ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ „์ ์œผ๋กœ ๊ท€ํ•˜์˜ ํ†ต์ œ์™€ ์†Œ์œ ๊ถŒ ๋‚ด์— ์žˆ๋Š” ๋†€๋ผ์šด ๋…ธ์ฝ”๋“œ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

AppMaster.io ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋””์ž์ด๋„ˆ ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ณต์žกํ•œ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ์ˆ˜์ค€์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‰ฝ๊ฒŒ ๋””์ž์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๊ณ ๊ธ‰ DBMS ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ PostgreSQL ์—์„œ ์‹คํ–‰๋˜์–ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์•ˆ์ •์„ฑ๊ณผ ๋‚ด๊ฒฐํ•จ์„ฑ์„ ํฌ๊ฒŒ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค. DBMS ๋Š” ์˜คํ”ˆ ๋ผ์ด์„ ์Šค๊ฐ€ ์žˆ์œผ๋ฉฐ, ์‚ฌ์šฉ์— ๋Œ€ํ•ด ์ถ”๊ฐ€ ๋น„์šฉ์„ ์ง€๋ถˆํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๋ฐ PostgreSQL์— ํ”„๋กœ์ ํŠธ ๋ฐฐํฌ

AppMaster ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—”์ง„์€ PostgreSQL 13 ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, AppMaster Cloud ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ AWS ๋˜๋Š” Azure ์™€ ๊ฐ™์€ PostgreSQL ํ˜ธํ™˜ ํด๋ผ์šฐ๋“œ์— ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์—…๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒฐ๋ก 

๋‚ด๋ถ€ ๋Œ€์‹œ๋ณด๋“œ ๋งŒ๋“ค๊ธฐ
PostgreSQL์„ ์•ˆ์ „ํ•˜๊ฒŒ ์ฝ๊ณ  ์“ธ ์ˆ˜ ์žˆ๋Š” ๊ด€๋ฆฌ์ž ํŒจ๋„ ๋ฐ ๋‚ด๋ถ€ ์•ฑ์„ ๋งŒ๋“œ์„ธ์š”.
๋‚ด๋ถ€ ๋„๊ตฌ ๋งŒ๋“ค๊ธฐ

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

๋˜ํ•œ PostgreSQL ์˜ ์˜คํ”ˆ ์†Œ์Šค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ํ•ญ์ƒ ๋ฐœ์ „ํ•˜๊ณ  ์žˆ์Œ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์–ด๋А ์‹œ์ ์—์„œ๋“  ๋ง‰ํžŒ ๊ฒฝ์šฐ ๋’ค์— ์žˆ๋Š” ๋Œ€๊ทœ๋ชจ ์ปค๋ฎค๋‹ˆํ‹ฐ๋„ ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์˜ต์…˜ ์ค‘์—์„œ ์„ ํƒํ•˜๋Š” ๊ฒฝ์šฐ PostgreSQL์„ ์ง„์ง€ํ•˜๊ฒŒ ๊ณ ๋ คํ•ด์•ผ ํ•˜๋Š” ์˜ต์…˜์ž…๋‹ˆ๋‹ค.

์‰ฌ์šด ์‹œ์ž‘
๋ฉ‹์ง„๋งŒ๋“ค๊ธฐ

๋ฌด๋ฃŒ ์š”๊ธˆ์ œ๋กœ AppMaster๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด์„ธ์š”.
์ค€๋น„๊ฐ€ ๋˜๋ฉด ์ ์ ˆํ•œ ๊ตฌ๋…์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‹œ์ž‘ํ•˜๋‹ค
PostgreSQL์ด๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? | AppMaster