8.1 ์ ๋น์ ๊ทํ๊ฐ ํ์ํ๊ฐ์?
ํฐ ํ ์ด๋ธ ์ฌ์ด์์ ๊ณ์ฐ ๋น์ฉ์ด ๊ฐ์ฅ ๋ง์ด ๋๋ ์์ ์ ์กฐ์ธ์ ๋๋ค. ๋ฐ๋ผ์ ํ๋์ ์ฟผ๋ฆฌ์์ ์๋ฐฑ๋ง ๊ฐ์ ํ์ผ๋ก ๊ตฌ์ฑ๋ ์ฌ๋ฌ ํ ์ด๋ธ์ "ํ๊ธฐ"ํด์ผ ํ๋ ๊ฒฝ์ฐ DBMS๋ ์ด๋ฌํ ์ฒ๋ฆฌ์ ๋ง์ ์๊ฐ์ ํ ์ ํฉ๋๋ค.
์ด๋ ์ฌ์ฉ์๋ ์ปคํผ๋ฅผ ๋ง์๊ธฐ ์ํด ์๋ฆฌ๋ฅผ ๋น์ธ ์ ์์ต๋๋ค. ์ฒ๋ฆฌ์ ์ํธ์์ฉ์ฑ์ ์ค์ง์ ์ผ๋ก ์ฌ๋ผ์ง๊ณ ๋ฐฐ์น ์ฒ๋ฆฌ์ ์ ๊ทผํฉ๋๋ค. ์ค์๊ฐ์์ผ๋ก ๋ฐฐ์น ๋ชจ๋์์๋ ์ฌ์ฉ์๊ฐ ์ ๋ ์์นจ์ ์์ฒญํ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์์ ํ๊ณ ์นจ์ฐฉํ๊ฒ ์์ ํ์ฌ ์ ๋ ์ ์๋ก์ด ์์ฒญ์ ์ค๋นํฉ๋๋ค.
๊ณผ๋ํ ์กฐ์ธ ์ํฉ์ ํผํ๊ธฐ ์ํด ํ ์ด๋ธ์ด ๋น์ ๊ทํ๋ฉ๋๋ค. ๊ทธ๋ฌ๋ ์ด์จ๋ ์๋๋๋ค. ํธ๋์ญ์ ๋ฐฉ์์ผ๋ก ๋น์ ๊ทํ๋ ํ ์ด๋ธ์ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค์ฉ ํ ์ด๋ธ ๊ตฌ์ฑ ๊ท์น์ ๋ฐ๋ผ "์ ๊ทํ๋" ๊ฒ์ผ๋ก ๊ฐ์ฃผํ ์ ์๋ ๋ช ๊ฐ์ง ๊ท์น์ด ์์ต๋๋ค.
๋ถ์ ์ฒ๋ฆฌ์์ "์ ์"์ผ๋ก ๊ฐ์ฃผ๋๋ ๋ ๊ฐ์ง ์ฃผ์ ์ฒด๊ณ๋ "๋์ก์ด"์ "๋ณ"์ ๋๋ค. ์ด๋ฆ์ ๋ณธ์ง์ ์ ๋ฐ์ํ๊ณ ๊ด๋ จ ํ ์ด๋ธ์ ๊ทธ๋ฆผ์์ ์ง์ ๋ฐ๋ฆ ๋๋ค.
๋ ๊ฒฝ์ฐ ๋ชจ๋ ์์ ํฉํธ ํ ์ด๋ธ์ ์คํค๋ง์ ์ค์ฌ ์์์ด๋ฉฐ ์ด๋ฒคํธ, ํธ๋์ญ์ , ๋ฌธ์ ๋ฐ ๊ธฐํ ๋ถ์๊ฐ์ ๊ด์ฌ ๋์์ ํฌํจํฉ๋๋ค. ๊ทธ๋ฌ๋ ํธ๋์ญ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ํ๋์ ๋ฌธ์๊ฐ ์ฌ๋ฌ ํ ์ด๋ธ(์ ์ด๋ ๋ ๊ฐ: ํค๋ ๋ฐ ์ฝํ ์ธ ํ)์ "๋ฒ์ง"๋๋ฉด ํฉํธ ํ ์ด๋ธ์์ ํ๋์ ๋ฌธ์, ๋ ์ ํํ๊ฒ๋ ๊ฐ ํ ๋๋ ๊ทธ๋ฃนํ๋ ํ ์งํฉ์ด ํด๋นํฉ๋๋ค. ํ๋์ ๋ ์ฝ๋๋ก.
์ด๋ ์์ ๋ ํ ์ด๋ธ์ ๋น์ ๊ทํํ์ฌ ์ํํ ์ ์์ต๋๋ค.
![](https://cdn.codegym.cc/images/article/07bd1f49-716c-4226-8326-886e52968e41/1024.jpeg)
8.2 ๋น์ ๊ทํ ์์
์ด์ DBMS๊ฐ ์๋ฅผ ๋ค์ด ํด๋น ๊ธฐ๊ฐ ๋์ Pirozhki LLC ๋ฐ Vatrushki CJSC์ ๊ณ ๊ฐ์ ๋ํ ๋ฐ๊ฐ๋ฃจ ํ๋งค๋์ ๊ฒฐ์ ํ๋ ์ ํ์ ์ฟผ๋ฆฌ๋ฅผ ์คํํ๋ ๊ฒ์ด ์ผ๋ง๋ ์ฌ์ด์ง ํ๊ฐํ ์ ์์ต๋๋ค.
์ ๊ทํ๋ ํธ๋์ญ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์:
SELECT
SUM(dl.qty) AS total qty, SUM(dl.price) AS total amount, c.name
FROM
docs d
INNER JOIN doc lines dl ON d.id doc = dl.id doc
INNER JOIN customers c ON d.id customer = c.id customer
INNER JOIN products p ON dl.id product = p.id product
WHERE
c.name IN (โPirozhki LLCโ, โVatrushki CJSCโ) AND
p.name = โFlourโ AND
d.date BETWEEN โ2014-01-01โ AND โ2014-02-01โ
GROUP BY c.name
๋ถ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์:
SELECT
SUM(s.qty) AS total_qty, SUM(s.amount) AS total_amount, c.name
FROM
sales s
INNER JOIN customers c ON d.id_customer = c.id_customer
INNER JOIN products p ON dl.id_product = p.id_product
WHERE
c.name IN ('Pirozhki LLC', 'Vatrushki CJSC') AND
p.name = 'Flour' AND
s.date BETWEEN '2014-01-01' AND '2014-02-01'
GROUP BY c.name
๋ ๊ฐ์ ๋ฌธ์ ํ ์ด๋ธ๊ณผ ์๋ฐฑ๋ง ํ์ ๊ตฌ์ฑ ์ฌ์ด์ ๋ฌด๊ฑฐ์ด ์กฐ์ธ ๋์ DBMS๋ ํฉํธ ํ ์ด๋ธ๊ณผ ์ง์ ์์ ํ๊ณ ์์ ๋ณด์กฐ ํ ์ด๋ธ๊ณผ ๊ฐ๋ฒผ์ด ์กฐ์ธ์ ์ํํฉ๋๋ค. ์ด ์์ ์ ์๋ณ์๋ฅผ ๋ชฐ๋ผ๋ ์ํํ ์ ์์ต๋๋ค.
SELECT
SUM(s.qty) AS total_qty, SUM(s.amount) AS total_amount, s.id_customer
FROM
sales s
WHERE
s.id_customer IN (1025, 20897) AND
s.id_product = 67294 AND
s.date BETWEEN '2014-01-01' AND '2014-02-01'
GROUP BY s.id_customer
"๋ณ"๊ณผ "๋์ก์ด" ์ฒด๊ณ๋ก ๋์๊ฐ ๋ด ์๋ค. ์ฒซ ๋ฒ์งธ ์ฌ์ง์ ๋ฌด๋ ๋ค์๋ ๊ณ ๊ฐ, ๊ทธ๋ฃน, ์์ , ํ๋งค์ ๋ฐ ์ค์ ๋ก ์ํ์ ํ ์ด๋ธ์ด ์์ต๋๋ค. ๋น์ ๊ทํ๋๋ฉด ์ฐจ์์ด๋ผ๊ณ ํ๋ ์ด๋ฌํ ํ ์ด๋ธ๋ ํฉํธ ํ ์ด๋ธ์ ์กฐ์ธ๋ฉ๋๋ค. ํฉํธ ํ ์ด๋ธ์ด ๋ค๋ฅธ ์ฐจ์(๋ ๋ฒ์งธ ์์ค ์ด์์ ์ฐจ์)์ ๋ํ ๋งํฌ๊ฐ ์๋ ์ฐจ์ ํ ์ด๋ธ์ ์ฐธ์กฐํ๋ ๊ฒฝ์ฐ ์ด๋ฌํ ์คํค๋ง๋ฅผ "๋์ก์ด"๋ผ๊ณ ํฉ๋๋ค.
![](https://cdn.codegym.cc/images/article/e81a6085-ffdc-4b0c-9645-cdd17b1c1691/1024.jpeg)
๋ณด์๋ค์ํผ ํด๋ผ์ด์ธํธ ๊ทธ๋ฃน๋ณ ํํฐ๋ง์ ํฌํจํ๋ ์ฟผ๋ฆฌ์ ๊ฒฝ์ฐ ์ถ๊ฐ ์ฐ๊ฒฐ์ ๋ง๋ค์ด์ผ ํฉ๋๋ค.
SELECT sum(amount)
FROM sales s
INNER JOIN customers c ON s.id_customer = c.id_customer
WHERE c.id_customer_group IN (1, 2, 10, 55)
์ด ๊ฒฝ์ฐ ๋น์ ๊ทํ๊ฐ ๊ณ์๋์ด ๋ ๋ฒ์งธ ์ฐจ์์ ์ฒซ ๋ฒ์งธ ์ฐจ์์ผ๋ก ๋จ์ด๋จ๋ ค ํฉํธ ํ ์ด๋ธ์ ๋ ์ฝ๊ฒ ์ฟผ๋ฆฌํ ์ ์์ต๋๋ค.
ํฉํธ ํ ์ด๋ธ์ด ๋ ๋ฒ์งธ ์์ค์ด ์๋ ์ฐจ์๋ง ์ฐธ์กฐํ๋ ์คํค๋ง๋ฅผ ์คํ ์คํค๋ง๋ผ๊ณ ํฉ๋๋ค. ์ธก์ ํ ์ด๋ธ์ ์๋ ๋ณ์ "๊ด์ " ์์ ํด๋นํฉ๋๋ค.
์คํ ์คํค๋ง๋ ์ฐจ์์ ๊ณ์ธต ๊ตฌ์กฐ์ ๋จ์ผ ์ฟผ๋ฆฌ์์ ํด๋น ํ ์ด๋ธ์ ์กฐ์ธํ ํ์์ฑ์ ์์ ํ ์ ๊ฑฐํฉ๋๋ค.
SELECT sum(amount)
FROM sales s
WHERE s.id_customer_group IN (1, 2, 10, 55)
![](https://cdn.codegym.cc/images/article/2abb3172-bf4e-41d9-b687-66c668783596/1024.jpeg)
๋น์ ๊ทํ์ ๋จ์ ์ ํญ์ ์ค๋ณต์ฑ์ผ๋ก ์ธํด ํธ๋์ญ์ ๋ฐ ๋ถ์ ์ ํ๋ฆฌ์ผ์ด์ ๋ชจ๋์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํฌ๊ธฐ๊ฐ ์ฆ๊ฐํฉ๋๋ค. "๋์ก์ด"๋ฅผ "๋ณ"๋ก ๋ณํํ๋ ์์ ์์์ ๋๋ต์ ์ธ ๋ธํ๋ฅผ ๊ณ์ฐํด ๋ด ์๋ค.
Oracle๊ณผ ๊ฐ์ ์ผ๋ถ DBMS์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง ์ ์ ์์ค์ ํน๋ณํ ์ ์ ์ ํ์ด ์์ผ๋ฏ๋ก ์ผ๋ฐ ๋ถ์ธ ์ ํ์ ์ฌ์ฉํด์ผ ํฉ๋๋ค. numeric(N)
์ฌ๊ธฐ์ N์ ์ ์ฅ๋ ๋นํธ ์์
๋๋ค. ์ด๋ฌํ ์ซ์์ ์ ์ฅ ํฌ๊ธฐ๋ ๋ฌผ๋ฆฌ์ ๋ฐ์ดํฐ ์ ์ฅ์ ๋ํ ๋ฌธ์์ ์ ๊ณต๋ ํน์ ๊ณต์์ ์ฌ์ฉํ์ฌ ๊ณ์ฐ๋๋ฉฐ ์ผ๋ฐ์ ์ผ๋ก "16๋นํธ ์ ์"์ ๊ฐ์ ์ ์์ค ์ ํ์ ํฌ๊ธฐ๋ฅผ 1-3๋ฐ์ดํธ ์ด๊ณผํฉ๋๋ค.
sales ํ
์ด๋ธ์ด ๋ฐ์ดํฐ ์์ถ์ ์ฌ์ฉํ์ง ์๊ณ ์ฝ 5์ต๊ฐ์ ํ์ ํฌํจํ๊ณ ๊ณ ๊ฐ ๊ทธ๋ฃน์ ์๊ฐ ์ฝ 1000๊ฐ๋ผ๊ณ ๊ฐ์ ํฉ๋๋ค. ์ด ๊ฒฝ์ฐ ์๋ณ์ ์ ํ์ผ๋ก id_customer_group
2๋ฐ์ดํธ๋ฅผ ์ฐจ์งํ๋ ์งง์ ์ ์(shortint, smallint)๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
DBMS๊ฐ 2๋ฐ์ดํธ ์ ์ ์ ํ(์: PostgreSQL, SQL Server, Sybase ๋ฑ)์ ์ง์ํ๋ค๊ณ ๊ฐ์ ํฉ๋๋ค. ๊ทธ๋ฐ ๋ค์ ํ๋งค ํ
์ด๋ธ์ ํด๋น ์ด์ ์ถ๊ฐํ๋ฉด id_customer_group
ํฌ๊ธฐ๊ฐ ์ต์ํ 500 000 000 * 2 = 1 000 000 000 byte ~ 1 GByte
.
8.3 ๋น์ ๊ทํ๋ ์ธ์ ํ์ํฉ๋๊น?
๋น์ ๊ทํ๊ฐ ์ ์ฉํ ์ ์๋ ๋ช ๊ฐ์ง ์ผ๋ฐ์ ์ธ ์ํฉ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
๋ง์ ์์ ํ ์ด๋ธ ์กฐ์ธ
์์ ํ ์ ๊ทํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ํ ์ฟผ๋ฆฌ์์ ์ข ์ข ์ต๋ 12๊ฐ ์ด์์ ํ ์ด๋ธ์ ์กฐ์ธํด์ผ ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ฐ ์ฐ๊ฒฐ์ ๋งค์ฐ ๋ฆฌ์์ค ์ง์ฝ์ ์ธ ์์ ์ ๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ์ด๋ฌํ ์์ฒญ์ ์๋ฒ ๋ฆฌ์์ค๋ฅผ ์๋นํ๊ณ ๋๋ฆฌ๊ฒ ์ํ๋ฉ๋๋ค.
์ด๋ฌํ ์ํฉ์์ ๋์์ด ๋ ์ ์์ต๋๋ค.
- ํ ์ด๋ธ ์๋ฅผ ์ค์ฌ์ ๋น์ ๊ทํ. ๊ฑฐ์ ๋ณ๊ฒฝ๋์ง ์์ (์ข ์ข ์กฐ๊ฑด๋ถ ์์ ๋๋ ์ฐธ์กฐ) ์ ๋ณด์ ์๋ฏธ์ ๋ฐ์ ํ๊ฒ ๊ด๋ จ๋ ์ ๋ณด๋ฅผ ํฌํจํ๋ ์์ ํฌ๊ธฐ์ ์ฌ๋ฌ ํ ์ด๋ธ๋ก ๊ฒฐํฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
- ์ผ๋ฐ์ ์ผ๋ก ๋ง์ ์์ ์ฟผ๋ฆฌ์์ 5~6๊ฐ ์ด์์ ํ ์ด๋ธ์ ์กฐ์ธํด์ผ ํ๋ ๊ฒฝ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋น์ ๊ทํ๋ฅผ ๊ณ ๋ คํด์ผ ํฉ๋๋ค.
- ํ ์ด๋ธ ์ค ํ๋์ ์ถ๊ฐ ํ๋๋ฅผ ์ถ๊ฐํ์ฌ ๋น์ ๊ทํ. ์ด ๊ฒฝ์ฐ ๋ฐ์ดํฐ ์ค๋ณต์ฑ์ด ๋ํ๋๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฌด๊ฒฐ์ฑ์ ์ ์งํ๊ธฐ ์ํด ์ถ๊ฐ ์กฐ์น๊ฐ ํ์ํฉ๋๋ค.
์์ ๊ฐ
์ข ์ข ์ฟผ๋ฆฌ๋ ๋๋ฆฌ๊ณ ๋ง์ ๋ฆฌ์์ค๋ฅผ ์๋นํ๋ฉฐ ํนํ ๊ทธ๋ฃนํ ๋ฐ ์ง๊ณ ํจ์(Sum, Max ๋ฑ)๋ฅผ ์ฌ์ฉํ ๋ ์ผ๋ถ ๋ณต์กํ ๊ณ์ฐ์ด ์ํ๋ฉ๋๋ค. ์์ฃผ ์ฌ์ฉ๋๋(๊ทธ๋ฆฌ๊ณ ๊ณ์ฐํ๊ธฐ ์ด๋ ค์ด) ๊ณ์ฐ๋ ๋ฐ์ดํฐ๋ฅผ ํฌํจํ๋ ํ ์ด๋ธ์ 1-2๊ฐ์ ์ถ๊ฐ ์ด์ ์ถ๊ฐํ๋ ๊ฒ์ด ์ด์น์ ๋ง๋ ๊ฒฝ์ฐ๊ฐ ์์ต๋๋ค.
๊ฐ ์ฃผ๋ฌธ์ ์ด ๋น์ฉ์ ๊ฒฐ์ ํ๋ค๊ณ ๊ฐ์ ํฉ๋๋ค. ์ด๋ ๊ฒํ๋ ค๋ฉด ๋จผ์ ๊ฐ ์ ํ์ ๋น์ฉ์ ๊ฒฐ์ ํด์ผํฉ๋๋ค ( "์ ํ ๋จ์ ์"* "์ ํ ๋จ๊ฐ"-ํ ์ธ ๊ณต์์ ๋ฐ๋ผ). ๊ทธ๋ฐ ๋ค์ ๋น์ฉ์ ์ฃผ๋ฌธ๋ณ๋ก ๊ทธ๋ฃนํํด์ผ ํฉ๋๋ค.
์ด ์ฟผ๋ฆฌ๋ฅผ ์คํํ๋ ๊ฒ์ ๋งค์ฐ ๋ณต์กํ๋ฉฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ๋ง์ ์์ ์ฃผ๋ฌธ์ ๋ํ ์ ๋ณด๋ฅผ ์ ์ฅํ๋ ๊ฒฝ์ฐ ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆด ์ ์์ต๋๋ค. ์ด๋ฌํ ์ฟผ๋ฆฌ๋ฅผ ์คํํ๋ ๋์ ์ฃผ๋ฌธ ๋จ๊ณ์์ ๋น์ฉ์ ๊ฒฐ์ ํ๊ณ ์ฃผ๋ฌธ ํ ์ด๋ธ์ ๋ณ๋ ์ด์ ์ ์ฅํ ์ ์์ต๋๋ค. ์ด ๊ฒฝ์ฐ ์ํ๋ ๊ฒฐ๊ณผ๋ฅผ ์ป์ผ๋ ค๋ฉด ์ด ์ด์์ ๋ฏธ๋ฆฌ ๊ณ์ฐ๋ ๊ฐ์ ์ถ์ถํ๋ฉด ๋ฉ๋๋ค.
๋ฏธ๋ฆฌ ๊ณ์ฐ๋ ๊ฐ์ ํฌํจํ๋ ์ด์ ์์ฑํ๋ฉด ์ฟผ๋ฆฌ๋ฅผ ์คํํ ๋ ๋ง์ ์๊ฐ์ ์ ์ฝํ ์ ์์ง๋ง ์ ์์ ํด๋น ์ด์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฐ์ดํธํด์ผ ํฉ๋๋ค.
๊ธด ์ฑ
๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ธด ํ๋(Blob, Long ๋ฑ)๊ฐ ํฌํจ๋ ํฐ ํ ์ด๋ธ์ด ์๋ ๊ฒฝ์ฐ ๊ธด ํ๋๋ฅผ ๋ณ๋์ ํ ์ด๋ธ๋ก ์ด๋ํ๋ฉด ํด๋น ํ ์ด๋ธ์ ๋ํ ์ฟผ๋ฆฌ ์คํ ์๋๋ฅผ ํฌ๊ฒ ๋์ผ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ์ฌ์ง ์์ฒด๋ฅผ blob ํ๋(์ ๋ฌธ์ ์ธ ํ์ง, ๊ณ ํด์๋ ๋ฐ ์ ์ ํ ํฌ๊ธฐ)์ ์ ์ฅํ๋ ๊ฒ์ ํฌํจํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ฌ์ง ์นดํ๋ก๊ทธ๋ฅผ ๋ง๋ค๊ณ ์ถ์ต๋๋ค. ์ ๊ทํ์ ๊ด์ ์์ ๋ค์ ํ ์ด๋ธ ๊ตฌ์กฐ๋ ์ ๋์ ์ผ๋ก ์ ํํฉ๋๋ค.
- ์ฌ์ง์ด ๋ถ์ฐฉ ๋ ์ ๋ถ์ฆ
- ์ ์ ID
- ์นด๋ฉ๋ผ ๋ชจ๋ธ ID
- ์ฌ์ง ์์ฒด(๋ธ๋กญ ํ๋)
์ด์ ์์ฑ์๊ฐ ์ฐ์ ์ฌ์ง์ ์๋ฅผ ์ธ๋ฉด์ ์ฟผ๋ฆฌ๊ฐ ์คํ๋๋ ์๊ฐ์ ์์ํด ๋ด ์๋ค.
์ด๋ฌํ ์ํฉ์์ ์ฌ๋ฐ๋ฅธ ์๋ฃจ์ (์ ๊ทํ ์์น์ ์๋ฐํ๋๋ผ๋)์ ์ฌ์ง ID์ ์ฌ์ง ์์ฒด๊ฐ ์๋ blob ํ๋์ ๋ ํ๋๋ก๋ง ๊ตฌ์ฑ๋ ๋ค๋ฅธ ํ ์ด๋ธ์ ๋ง๋๋ ๊ฒ์ ๋๋ค. ๊ทธ๋ฐ ๋ค์ ๋ฉ์ธ ํ ์ด๋ธ(๋ ์ด์ ํฐ ๋ธ๋กญ ํ๋๊ฐ ์๋)์์ ์ ํํ๋ฉด ์ฆ์ ์ด๋ํ์ง๋ง ์ฌ์ง ์์ฒด๋ฅผ ๋ณด๊ณ ์ถ์ ๋ ๊ธฐ๋ค๋ฆฌ๊ฒ ์ต๋๋ค.
๋น์ ๊ทํ๊ฐ ์ ๋นํ๋๋ ์๊ธฐ๋ฅผ ์ด๋ป๊ฒ ๊ฒฐ์ ํฉ๋๊น?
8.4 ๋น์ ๊ทํ์ ์ฅ๋จ์
ํน์ ๋จ๊ณ๊ฐ ์ ๋นํ์ง ์ฌ๋ถ๋ฅผ ๊ฒฐ์ ํ๋ ํ ๊ฐ์ง ๋ฐฉ๋ฒ์ ๋น์ฉ ๋ฐ ๊ฐ๋ฅํ ์ด์ ์ธก๋ฉด์์ ๋ถ์์ ์ํํ๋ ๊ฒ์ ๋๋ค. ๋น์ ๊ทํ๋ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ๋น์ฉ์ ์ผ๋ง์ ๋๊น?
์๊ตฌ ์ฌํญ ๊ฒฐ์ (๋ฌ์ฑํ๊ณ ์ ํ๋ ๊ฒ) โ ๋ฐ์ดํฐ ์๊ตฌ ์ฌํญ ๊ฒฐ์ (๋ฐ๋ผ์ผ ํ ๊ฒ) โ ์ด๋ฌํ ์๊ตฌ ์ฌํญ์ ์ถฉ์กฑํ๋ ์ต์ ๋จ๊ณ ์ฐพ๊ธฐ โ ๊ตฌํ ๋น์ฉ ๊ณ์ฐ โ ๊ตฌํ
๋น์ฉ์๋ ๋์คํฌ ๊ณต๊ฐ, ์ด ๊ตฌ์กฐ๋ฅผ ๊ด๋ฆฌํ๋ ๋ฐ ํ์ํ ๋ฆฌ์์ค, ์ด ํ๋ก์ธ์ค ์ ์ง์ ๊ด๋ จ๋ ์๊ฐ ์ง์ฐ์ผ๋ก ์ธํ ๊ธฐํ ์์ค๊ณผ ๊ฐ์ ๋ฌผ๋ฆฌ์ ์ธก๋ฉด์ด ํฌํจ๋ฉ๋๋ค. ๋น์ ๊ทํ ๋น์ฉ์ ์ง๋ถํด์ผ ํฉ๋๋ค. ๋น์ ๊ทํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๋ฐ์ดํฐ ์ค๋ณต์ฑ์ ์ฆ๊ฐ์์ผ ์ฑ๋ฅ์ ํฅ์์ํฌ ์ ์์ง๋ง ๊ด๋ จ ๋ฐ์ดํฐ๋ฅผ ์ ์ดํ๋ โโ๋ฐ ๋ ๋ง์ ๋ ธ๋ ฅ์ด ํ์ํฉ๋๋ค. ๋ฐ์ดํฐ๊ฐ ๋ฐ๋ณต๋๊ณ ์ถ์ ํ๊ธฐ ์ด๋ ค์์ง๋ฏ๋ก ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋๋ ํ๋ก์ธ์ค๊ฐ ๋์ฑ ์ด๋ ค์์ง๋๋ค. ๋ํ ์ฐธ์กฐ ๋ฌด๊ฒฐ์ฑ ๊ตฌํ์ด ์ฝ์ง ์์ต๋๋ค. ๊ด๋ จ ๋ฐ์ดํฐ๊ฐ ์๋ก ๋ค๋ฅธ ํ ์ด๋ธ๋ก ๋๋ฉ๋๋ค.
์ด์ ์๋ ๋ ๋น ๋ฅธ ์ฟผ๋ฆฌ ์ฑ๋ฅ๊ณผ ๋ ๋น ๋ฅธ ์๋ต์ ์ป์ ์ ์๋ ๊ธฐ๋ฅ์ด ํฌํจ๋ฉ๋๋ค. ์ฒ๋ฆฌ๋ ์ฆ๊ฐ, ๊ณ ๊ฐ ๋ง์กฑ๋, ์์ฐ์ฑ ํฅ์, ์ธ๋ถ ๊ฐ๋ฐ์ ๋๊ตฌ์ ๋ณด๋ค ํจ์จ์ ์ธ ์ฌ์ฉ ๋ฑ ๋ค๋ฅธ ์ด์ ๋ ์ป์ ์ ์์ต๋๋ค.
์์ฒญ ์๋ ๋ฐ ์ฑ๋ฅ ์ผ๊ด์ฑ
์๋ฅผ ๋ค์ด ๊ธฐ์ ์์ ๋งค์ผ ์์ฑ๋๋ 1,000๊ฐ์ ์ฟผ๋ฆฌ ์ค 72%๋ ๋๋ฆด๋ค์ด ์ฟผ๋ฆฌ๊ฐ ์๋ ์์ฝ ์์ค ์ฟผ๋ฆฌ์ ๋๋ค. ์์ฝ ํ ์ด๋ธ์ ์ฌ์ฉํ๋ฉด ์ฟผ๋ฆฌ๊ฐ 4๋ถ์ด ์๋๋ผ ์ฝ 6์ด ๋ง์ ์คํ๋๋ฏ๋ก ์ฒ๋ฆฌ ์๊ฐ์ด 3,000๋ถ ๋จ์ถ๋ฉ๋๋ค. ๋งค์ฃผ ํผ๋ฒ ํ ์ด๋ธ์ ์ ์ง ๊ด๋ฆฌํ๋ ๋ฐ ์์๋๋ 100๋ถ์ ์กฐ์ ํ ํ์๋ ์ฃผ๋น 2,500๋ถ์ ์ ์ฝํ ์ ์์ผ๋ฏ๋ก ํผ๋ฒ ํ ์ด๋ธ ์์ฑ์ด ์ ๋นํ๋ฉ๋๋ค. ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๋๋ถ๋ถ์ ์ฟผ๋ฆฌ๊ฐ ์์ฝ ๋ฐ์ดํฐ๊ฐ ์๋๋ผ ์ธ๋ถ ๋ฐ์ดํฐ๋ก ์ง์ ๋ ์ ์์ต๋๋ค. ์์ฝ ํ ์ด๋ธ์ ์ฌ์ฉํ๋ ์ฟผ๋ฆฌ๊ฐ ์ ์์๋ก ๋ค๋ฅธ ํ๋ก์ธ์ค์ ์ํฅ์ ์ฃผ์ง ์๊ณ ์ฝ๊ฒ ์ญ์ ํ ์ ์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ โฆ
์์ ๋์ด๋ ๊ธฐ์ค์ ์ต์ ํ์ ๋ค์ ๋จ๊ณ๋ฅผ ์ํํ ์ง ์ฌ๋ถ๋ฅผ ๊ฒฐ์ ํ ๋ ๊ณ ๋ คํด์ผ ํ ์ ์ผํ ๊ธฐ์ค์ด ์๋๋๋ค. ๋น์ฆ๋์ค ์ฐ์ ์์ ๋ฐ ์ต์ข ์ฌ์ฉ์ ์๊ตฌ ์ฌํญ์ ํฌํจํ์ฌ ๋ค๋ฅธ ์์๋ฅผ ๊ณ ๋ คํด์ผ ํฉ๋๋ค. ์ฌ์ฉ์๋ ๊ธฐ์ ์ ์ธ ๊ด์ ์์ ๋ชจ๋ ์์ฒญ์ด ๋ช ์ด ์์ ์๋ฃ๋๊ธฐ๋ฅผ ์ํ๋ ์ฌ์ฉ์์ ์๊ตฌ ์ฌํญ์ด ์์คํ ์ํคํ ์ฒ์ ์ด๋ค ์ํฅ์ ๋ฏธ์น๋์ง ์ดํดํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ์ดํด๋ฅผ ๋ฌ์ฑํ๋ ๊ฐ์ฅ ์ฌ์ด ๋ฐฉ๋ฒ์ ์ด๋ฌํ ํ ์ด๋ธ์ ๋ง๋ค๊ณ ๊ด๋ฆฌํ๋ ๊ฒ๊ณผ ๊ด๋ จ๋ ๋น์ฉ์ ์ค๋ช ํ๋ ๊ฒ์ ๋๋ค.
8.5 ๋น์ ๊ทํ๋ฅผ ๋ฅ์ํ๊ฒ ๊ตฌํํ๋ ๋ฐฉ๋ฒ.
์์ธ ํ ์ ์ฅ
๋น์ฆ๋์ค์ ์ค์ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ธฐ๋ฅ์ ์ ํํ์ง ์์ผ๋ ค๋ฉด ๋์ฒด๊ฐ ์๋ ๊ณต์กด์ ์ ๋ต์ ์ฑํํด์ผ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด ์ ์ค ์นด์ดํฐ์ ๋๋ค. ๋น์ฆ๋์ค์ ๊ฒฝ์ฐ ์น ํ์ด์ง ๋ฐฉ๋ฌธ ํ์๋ฅผ ์์์ผ ํฉ๋๋ค. ๊ทธ๋ฌ๋ ๋ถ์(๊ธฐ๊ฐ๋ณ, ๊ตญ๊ฐ๋ณ...)์ ์ํด์๋ ๊ฐ ๋ฐฉ๋ฌธ์ ๋ํ ์ ๋ณด๊ฐ ํฌํจ๋ ํ ์ด๋ธ๊ณผ ๊ฐ์ ์์ธํ ๋ฐ์ดํฐ๊ฐ ํ์ํ ๊ฐ๋ฅ์ฑ์ด ํฝ๋๋ค.
ํธ๋ฆฌ๊ฑฐ ์ฌ์ฉ
integrity
์ค๋ณต ๋ฐ์ดํฐ์ ๋ฌด๊ฒฐ์ฑ์ ์ ์งํ๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฒ ์ด์ค ํธ๋ฆฌ๊ฑฐ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์กฐ๋ฅผ ๋น์ ๊ทํํ๊ณ ์ ๊ทํ์ ์ด์ ์ ๊ณ์ ๋๋ฆด ์ ์์ต๋๋ค .
์๋ฅผ ๋ค์ด ๊ณ์ฐ๋ ํ๋๋ฅผ ์ถ๊ฐํ ๋ ๊ณ์ฐ๋ ํ๋๊ฐ ์์กดํ๋ ๊ฐ ์ด์ ํ์ํ ๋ฐ์ดํฐ๋ฅผ ๊ณ์ฐ๋ ํ๋์ ์ฐ๋ ๋จ์ผ ์ ์ฅ ํ๋ก์์ (์ค์!)๋ฅผ ํธ์ถํ๋ ํธ๋ฆฌ๊ฑฐ์ ์ฐ๊ฒฐ๋ฉ๋๋ค. ๊ณ์ฐ๋ ํ๋๊ฐ ์ข ์๋ ์ด์ ๊ฑด๋๋ฐ์ง ์์๋ ๋ฉ๋๋ค.
์ํํธ์จ์ด ์ง์
๊ธฐ๋ณธ ์ ๊ณต ํธ๋ฆฌ๊ฑฐ ๋ฐ ์ ์ฅ ํ๋ก์์ ๋ฅผ ์ฌ์ฉํ์ง ์๋ ๊ฒฝ์ฐ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์๋ ๋น์ ๊ทํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๋ฐ์ดํฐ์ ์ผ๊ด์ฑ์ ๋ณด์ฅํด์ผ ํฉ๋๋ค.
ํธ๋ฆฌ๊ฑฐ์ ์ ์ฌํ๊ฒ ๋ณ๊ฒฝ๋๋ ํ๋์ ์์กดํ๋ ๋ชจ๋ ํ๋๋ฅผ ์ ๋ฐ์ดํธํ๋ ํ๋์ ํจ์๊ฐ ์์ด์ผ ํฉ๋๋ค.
๊ฒฐ๋ก
๋น์ ๊ทํํ ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์๋ ์ฆ๊ฐ์ ์ผ๊ด์ฑ ์๋ ๋ฐ์ดํฐ์ ์ํ ์ฆ๊ฐ ์ฌ์ด, ํ๋ก๊ทธ๋๋จธ์ ์์ฑ ํธ์์ฑ ์ฌ์ด์์ ๊ท ํ์ ์ ์งํ๊ณ Select-s
๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฑ์ฐ๊ธฐ ๋ฐ ๋ฐ์ดํฐ ์
๋ฐ์ดํธ๋ฅผ ์ ๊ณตํ๋ ์ฌ๋๋ค์ ์์
์ ๋ณต์กํ๊ฒ ๋ง๋๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ๋ฐ๋ผ์ ๊ผญ ํ์ํ ๊ฒฝ์ฐ์๋ง ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋งค์ฐ ์ ์คํ๊ฒ, ๋งค์ฐ ์ ํ์ ์ผ๋ก ๋น์ ๊ทํํด์ผ ํฉ๋๋ค.
๋น์ ๊ทํ์ ์ฅ๋จ์ ์ ๋ฏธ๋ฆฌ ๊ณ์ฐํ๋ ๊ฒ์ด ๋ถ๊ฐ๋ฅํ๋ค๋ฉด ์ด๊ธฐ์๋ ์ ๊ทํ๋ ํ ์ด๋ธ๋ก ๋ชจ๋ธ์ ๊ตฌํํ ๋ค์ ๋ฌธ์ ์ฟผ๋ฆฌ๋ฅผ ์ต์ ํํ๊ธฐ ์ํด ๋น์ ๊ทํ๋ฅผ ์ํํด์ผ ํ๋ค.
์๋ก ๋ค๋ฅธ ํ ์ด๋ธ์์ ๊ด๋ จ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๋ณตํด์ ๊ฐ์ ธ์ค๋ ๊ฒฝ์ฐ์๋ง ์ ์ง์ ์ผ๋ก ๋น์ ๊ทํ๋ฅผ ๋์ ํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ๋ฐ์ดํฐ๋ฅผ ๋ณต์ ํ๋ฉด ๋ ์ฝ๋ ์๋ ๋์ด๋์ง๋ง ์ฝ๊ธฐ ์๋ ์ค์ด๋ญ๋๋ค. ๋ถํ์ํ ์ง๊ณ ์ ํ์ ํผํ๊ธฐ ์ํด ๊ณ์ฐ๋ ๋ฐ์ดํฐ๋ฅผ ์ด์ ์ ์ฅํ๋ ๊ฒ๋ ํธ๋ฆฌํฉ๋๋ค.
GO TO FULL VERSION