์ง๋ ฌํ ํ์ ๋๊ตฌ
ํ ์์คํ ๊ณผ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์๋ ์ฐ๋์ ์ํด ์ ํด์ง ๋ฐ์ดํฐ ํ์์ ๋ํ ์ฝ์์ด ํ์ํ๋ค. ๊ฐ์ ์๊ธฐ ์๋น์ค์์ ์ฌ์ฉํ๋ ๋ฐ์ดํฐํฌ๋งท์ ์ฌ์ฉํด์ ๋ง๋ค๊ฒ ๋๋ฉด ๋ฌธ์ ๊ฐ ๋ฐ์ํ๊ธฐ ๋๋ฌธ์ด๋ค.
์ด๋ฅผ ์ํด ํ์ํ๊ฒ์ด XML , JSon ๋ฑ์ ๋ฐ์ดํฐ ์ง๋ ฌํ ํ์์ด๋ค.
XML / JSon / YAML
XML
<guests>
<guest>
<firstName>John</firstName> <lastName>Doe</lastName>
</guest>
<guest>
<firstName>María</firstName> <lastName>García</lastName>
</guest>
<guest>
<firstName>Nikki</firstName> <lastName>Wolf</lastName>
</guest>
</guests>
1998๋ ์ ์ด๊ธฐ๋ฒ์ ์ ๋ฆด๋ฆฌ์คํ ๋ฐ์ดํฐ ์ง๋ ฌํ ๋๊ตฌ๋ก, Extensible Markup Language์ ์ฝ์์ด๋ค. SGML์์ ํ์๋์๋ค.
์์์ ๋ณด์ด๋ฏ์ด ํ๊ทธ ๊ตฌ์กฐ๋ก ์์ฑ๋์ด์์ผ๋ฉฐ ํธ๋ฆฌ๊ตฌ์กฐ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ค. ํ๊ทธ๋ฅผ ํตํด์ Key๋ฅผ ์์ฑํ๊ณ Value๋ฅผ ๋ฃ์ด์ฃผ๋ ํ์์ด๊ณ Obect์ Array์ ๊ตฌ๋ถ์ด ์ ์๋๋ค.
JSon
{"guests":[
{ "firstName":"John", "lastName":"Doe" },
{ "firstName":"María", "lastName":"García" },
{ "firstName":"Nikki", "lastName":"Wolf" }
]}
2001๋ ์ ๋ฆด๋ฆฌ์คํ ๋ฐ์ดํฐ ์ง๋ ฌํ ๋๊ตฌ์ด๋ค. JSon์ JavaScript Object Notation์ ์ฝ์๋ก XML์ ๋นํด ๊ฐ๋จํ๊ฒ ์์ฑ์ด ๊ฐ๋ฅํ๋ค. key-value ๊ฐ ์์ ์ผ๋ฃจ๋ ๋งต๊ณผ ์ ์ฌํ ๊ตฌ์กฐ๋ก ์ด๋ฃจ์ด์ ธ์๋ค.
Object์ผ ๊ฒฝ์ฐ { } ๋ก ๊ฐ์ธ๊ณ , Array์ผ ๊ฒฝ์ฐ [ ]๋ก ๊ฐ์ธ์ค๋ค.
YAML
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
์ฌ๋์ด ๊ฐ์ฅ ๋ณด๊ธฐ ์ข์ ๋ฐ์ดํฐ ํ์์ธ๊ฒ ๊ฐ๋ค. ์ค๋ฐ๊ฟ๊ณผ ํญ์ด ํ์๋ก ๋ค์ด๊ฐ์ผํ๋ค.
์ผ๋ฐ์ ์ธ key-valueํ์์ด ๋ค์ด๊ฐ๊ณ Object์ ์์์ " " ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํ๊ณ , Array์ ๊ฒฝ์ฐ - ๋ฅผ ํตํด ๊ตฌ๋ถํ๋ค.
๊ฐ๋ฐ์์คํ ์ค์ ํ์ผ ๋ฑ์ ์ธํ ํ ๋ Config.properties ์์ yaml๋ก ๋ฐ๊ฟ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๋ ๋ง๋ค. ์ฟ ๋ฒ๋คํฐ์ค์์๋ yaml์ ๊ถ์ฅํ๋ค.
์ฐธ๊ณ