book-kitty / real-mysql-1

realmysql 8.0 1๊ถŒ ์Šคํ„ฐ๋””
3 stars 4 forks source link

2023.01.31 ๋ฌธ์ œ ๋ชฉ๋ก (ch06~ch07) #20

Open giibeom opened 1 year ago

giibeom commented 1 year ago

๐Ÿ“Œ ๋ฌธ์ œ๋ชฉ๋ก

๋ฒˆํ˜ธ ์ถœ์ œ์ž ๋ฌธ์ œ
1. giibeom MySQL ์„œ๋ฒ„์˜ 2๋‹จ๊ณ„ ํ‚ค ๊ด€๋ฆฌ๋ฅผ ํ†ตํ•ด ์–ด๋– ํ•œ ์ด์ ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‚˜์š”?
2. giibeom ๋งˆ์Šคํ„ฐ ํ‚ค๋ฅผ ๋ณ€๊ฒฝํ•  ๋•Œ ์ผ์–ด๋‚˜๋Š” ์ƒํ™ฉ์„ ์•Œ๊ณ  ์žˆ๋‚˜์š”? ๋˜ํ•œ ํ…Œ์ด๋ธ” ์ŠคํŽ˜์ด์Šค ํ‚ค๋Š” ์™œ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š์•„๋„ ๋˜๋‚˜์š”?
3. ramirami ํ…Œ์ด๋ธ” ์••์ถ•์€ ์–ด๋– ํ•œ ์ƒํ™ฉ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„๊นŒ์š”?
4. sedin2 InnoDB ๋ฒ„ํผ ํ’€์— ์ ์žฌ๋œ ๋‘ ํ…Œ์ด๋ธ”A(์•”ํ˜ธํ™”X), ํ…Œ์ด๋ธ”B(์•”ํ˜ธํ™”O)๋Š” ์„œ๋กœ ๋™์ผํ•œ ์„ฑ๋Šฅ์„ ๋ณด์ด๋Š”๋ฐ์š” ์™œ ๊ทธ๋Ÿด๊นŒ์š”?
5. ZooKong Unzip_LRU๊ฐ€ ์žˆ์Œ์œผ๋กœ์„œ ์–ป์„ ์ˆ˜ ์žˆ๋Š” ์žฅ์ ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”
6. ZooKong Mysql์˜ ํ…Œ์ด๋ธ” ์•”ํ˜ธํ™”์™€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ํ†ตํ•œ ์•”ํ˜ธํ™”์˜ ์žฅ๋‹จ์ ์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”
giibeom commented 1 year ago

1. MySQL ์„œ๋ฒ„์˜ 2๋‹จ๊ณ„ ํ‚ค ๊ด€๋ฆฌ๋ฅผ ํ†ตํ•ด ์–ด๋– ํ•œ ์ด์ ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‚˜์š”?

ํ‚ค ๊ด€๋ฆฌ๋ฅผ 2๋‹จ๊ณ„๋กœ ํ•  ๋•Œ์˜ ์ œ์ผ ํฐ ์žฅ์ ์€ ์•”ํ˜ธํ™” ํ‚ค ๋ณ€๊ฒฝ์œผ๋กœ ์ธํ•œ ๊ณผ๋„ํ•œ ์‹œ์Šคํ…œ ๋ถ€ํ•˜๊ฐ€ ์˜ค๋Š” ์ƒํ™ฉ์„ ํ”ผํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

MySQL์€ ๋งˆ์Šคํ„ฐํ‚ค์™€ ํ…Œ์ด๋ธ” ์ŠคํŽ˜์ด์Šคํ‚ค๊ฐ€ ์žˆ๋Š”๋ฐ, ํ…Œ์ด๋ธ”์ŠคํŽ˜์ด์Šคํ‚ค๋Š” ์„œ๋ฒ„ ์™ธ๋ถ€๋กœ ๋…ธ์ถœ๋˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์ƒ๊ด€ ์—†์ง€๋งŒ ๋งˆ์Šคํ„ฐ ํ‚ค๋Š” ์™ธ๋ถ€์˜ ํŒŒ์ผ์„ ์ด์šฉํ•˜๋ฏ€๋กœ ์ฃผ๊ธฐ์ ์œผ๋กœ ๋ณ€๊ฒฝํ•ด์ฃผ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค

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

๋ณตํ˜ธํ™” โ†’ ์•”ํ˜ธํ™” ์ง„ํ–‰ ์ค‘์—๋Š” ํ…Œ์ด๋ธ” ๋ฝ์ด ๊ฑธ๋ฆฌ๋‚˜?


2. ๋งˆ์Šคํ„ฐ ํ‚ค๋ฅผ ๋ณ€๊ฒฝํ•  ๋•Œ ์ผ์–ด๋‚˜๋Š” ์ƒํ™ฉ์„ ์•Œ๊ณ  ์žˆ๋‚˜์š”? ๋˜ํ•œ ํ…Œ์ด๋ธ” ์ŠคํŽ˜์ด์Šค ํ‚ค๋Š” ์™œ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š์•„๋„ ๋˜๋‚˜์š”?

์ผ๋‹จ MySQL ์„œ๋ฒ„์˜ ๋งˆ์Šคํ„ฐ ํ‚ค๊ฐ€ ๋ณ€๊ฒฝ๋œ๋‹ค๋ฉด ๊ธฐ์กด์˜ ๋งˆ์Šคํ„ฐํ‚ค๋ฅผ ์ด์šฉํ•ด ๋ชจ๋“  ํ…Œ์ด๋ธ”์˜ ํ…Œ์ด๋ธ”์ŠคํŽ˜์ด์Šค ํ‚ค๋ฅผ ๋ณตํ˜ธํ™” ํ•œ ๋‹ค์Œ ์ƒˆ๋กœ์šด ๋งˆ์Šคํ„ฐ ํ‚ค๋กœ ๋‹ค์‹œ ์•”ํ˜ธํ™”ํ•ฉ๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ๋งˆ์Šคํ„ฐ ํ‚ค๊ฐ€ ๋ณ€๊ฒฝ๋˜๋Š” ๋™์•ˆ MySQL ์„œ๋ฒ„์˜ ํ…Œ์ด๋ธ”์ŠคํŽ˜์ด์Šคํ‚ค โ€œ์ž์ฒดโ€์™€ ๋ฐ์ดํ„ฐ ํŒŒ์ผ์˜ ๋ฐ์ดํ„ฐ๋Š” ์ „ํ˜€ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์„œ๋น„์Šค์˜ ๋ถ€ํ•˜๋ฅผ ์ตœ์†Œํ™”ํ•ฉ๋‹ˆ๋‹ค.

ํ…Œ์ด๋ธ” ์ŠคํŽ˜์ด์Šคํ‚ค๋Š” MySQL ์„œ๋ฒ„ ์™ธ๋ถ€๋กœ ๋…ธ์ถœ๋  ์ผ์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ตœ์ดˆ ํ•œ๋ฒˆ ์ƒ์„ฑ๋œ ํ‚ค๋ฅผ ๋ณ€๊ฒฝํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.


3. ํ…Œ์ด๋ธ” ์••์ถ•์€ ์–ด๋– ํ•œ ์ƒํ™ฉ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„๊นŒ์š”?

ํ…Œ์ด๋ธ” ์••์ถ•์€ ๋นˆ๋ฒˆํ•˜๊ฒŒ ์กฐํšŒ๋˜๊ฑฐ๋‚˜ ๋ณ€๊ฒฝ๋˜๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ์•„๋‹Œ, Insert๋งŒ ๋˜๋Š” ๋กœ๊ทธ์„ฑ ๋ฐ์ดํ„ฐ์˜ ์šฉ๋Ÿ‰์„ ์ค„์ผ ๋•Œ ์‚ฌ์šฉํ•˜๊ธฐ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค.


4. InnoDB ๋ฒ„ํผ ํ’€์— ์ ์žฌ๋œ ๋‘ ํ…Œ์ด๋ธ”A(์•”ํ˜ธํ™”X), ํ…Œ์ด๋ธ”B(์•”ํ˜ธํ™”O)๋Š” ์„œ๋กœ ๋™์ผํ•œ ์„ฑ๋Šฅ์„ ๋ณด์ด๋Š”๋ฐ์š” ์™œ ๊ทธ๋Ÿด๊นŒ์š”?

MySQL ์„œ๋ฒ„์˜ ์•”ํ˜ธํ™”๋Š” TDE ๋ฐฉ์‹์ด์—ฌ์„œ ๋””์Šคํฌ๋กœ๋ถ€ํ„ฐ ํ•œ๋ฒˆ ์ฝ์€ ๋ฐ์ดํ„ฐ ํŽ˜์ด์ง€๋Š” ๋ณตํ˜ธํ™”๋˜์–ด InnoDB ๋ฒ„ํผ ํ’€์— ์ ์žฌ๋ฉ๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋ฏ€๋กœ InnoDB ๋ฒ„ํผ ํ’€์— ์กด์žฌํ•˜๋Š” ๋ฐ์ดํ„ฐ๋“ค์€ ์ด๋ฏธ ๋ณตํ˜ธํ™” ๋œ ์ƒํƒœ์ด๋ฏ€๋กœ ์•”ํ˜ธํ™” ํ…Œ์ด๋ธ”์ด๋“  ์•”ํ˜ธํ™” ํ…Œ์ด๋ธ”์ด ์•„๋‹ˆ๋“  ์„ฑ๋Šฅ์ด ๋™์ผํ•ฉ๋‹ˆ๋‹ค.

์ถ”๊ฐ€์ ์œผ๋กœ InnoDB์˜ ์•„ํ‚คํ…์ฒ˜์—์„œ๋Š” ์Šคํ† ๋ฆฌ์ง€ ์—”์ง„ ๋งจ ๋งˆ์ง€๋ง‰ ๋‹จ๊ณ„, ์ฆ‰ ๋””์Šคํฌ์™€ ์ œ์ผ ๊ฐ€๊นŒ์šด ๊ณ„์ธต์ด I/O ํ•ธ๋“ค๋Ÿฌ์ธ๋ฐ, ์ด ํ•ธ๋“ค๋Ÿฌ๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ๋””์Šคํฌ์— ๋„ฃ๊ธฐ ์ง์ „๊ณผ, ๋บ€ ์งํ›„์— ์•”๋ณตํ˜ธํ™”๋ฅผ ์ง„ํ–‰ํ•˜๋ฏ€๋กœ ๋‚˜๋จธ์ง€ ๊ณ„์ธต์—์„œ๋Š” ์•”๋ณตํ˜ธํ™”๋ฅผ ์‹ ๊ฒฝ์“ฐ์ง€ ์•Š์•„๋„ ๋œ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.


5. Unzip_LRU๊ฐ€ ์žˆ์Œ์œผ๋กœ์„œ ์žฅ์ ๊ณผ ์ˆ˜ํ–‰ ๊ณผ์ •์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”

InnoDB ์Šคํ† ๋ฆฌ์ง€ ์—”์ง„์€ ๋””์Šคํฌ์—์„œ ์ฝ์€ ์ƒํƒœ ๊ทธ๋Œ€๋กœ์˜ ๋ฐ์ดํ„ฐ ํŽ˜์ด์ง€ ๋ชฉ๋ก์„ ๊ด€๋ฆฌํ•˜๋Š” LRU ๋ฆฌ์ŠคํŠธ์™€, ์••์ถ•๋œ ํŽ˜์ด์ง€๋“ค์˜ ์••์ถ• ํ•ด์ œ ๋ฒ„์ „์ธ Unzip_LRU ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ณ„๋„๋กœ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

์ด๋กœ์จ ์••์ถ•๋œ ๋ฐ์ดํ„ฐ ํŽ˜์ด์ง€๊ฐ€ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ๊ฒฝ์šฐ์— Unzip_LRU ๋ฆฌ์ŠคํŠธ์˜ ๋ฐ์ดํ„ฐ ํŽ˜์ด์ง€๋ฅผ ์‚ฌ์šฉํ•จ์œผ๋กœ์จ ์••์ถ• ๋ฐ ์••์ถ• ํ•ด์ œ ์ž‘์—…์„ ์ตœ์†Œํ™” ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

(์••์ถ• ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋งŽ์€ CPU ์ž์›์„ ์†Œ๋ชจ)


6. Mysql์˜ ํ…Œ์ด๋ธ” ์•”ํ˜ธํ™”์™€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ํ†ตํ•œ ์•”ํ˜ธํ™”์˜ ์žฅ๋‹จ์ ์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”

์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ์•”ํ˜ธํ™”๋Š” ์ฃผ๋กœ ์ค‘์š” ์ •๋ณด๋ฅผ ๊ฐ€์ง„ ์ปฌ๋Ÿผ ๋‹จ์œ„๋กœ ์•”ํ˜ธํ™” ํ•˜๋Š” ํŠน์ง•์ด ์žˆ๊ณ , DB ์ˆ˜์ค€์—์„œ์˜ ์•”ํ˜ธํ™”๋Š” ํ…Œ์ด๋ธ” ๋‹จ์œ„๋กœ ์•”ํ˜ธํ™”๋ฅผ ํ•˜๊ณค ํ•ฉ๋‹ˆ๋‹ค.

๋จผ์ € ํ…Œ์ด๋ธ” ์•”ํ˜ธํ™”๋Š” MySQL ์„œ๋ฒ„์˜ ๊ฐ€์žฅ ๋””์Šคํฌ์™€ ๋ฐ€์ ‘ํ•˜๊ฒŒ ์ ‘ํ•ด์žˆ๋Š” ์ตœํ•˜์ธต ๊ณ„์ธต์ธ I/O ๋ ˆ์ด์–ด์—์„œ ์•”๋ณตํ˜ธํ™”๋ฅผ ๋‹ด๋‹นํ•˜๋Š”๋ฐ, ์ด๋กœ์จ MySQL ๋‚ด๋ถ€์˜ ๋™์ž‘์€ ์•”ํ˜ธํ™” ํ…Œ์ด๋ธ”๊ณผ ๋น„์•”ํ˜ธํ™” ํ…Œ์ด๋ธ”์ด ๋‹ค๋ฅผ๊ฒŒ ์—†์Šต๋‹ˆ๋‹ค.

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

์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ํ†ตํ•œ ์•”ํ˜ธํ™”๋Š” ๋ณดํ†ต ์ฃผ๋ฏผ๋“ฑ๋ก๋ฒˆํ˜ธ์™€ ๊ฐ™์€ ์ค‘์š”ํ•œ ์ปฌ๋Ÿผ๋“ค์„ ์•”ํ˜ธํ™” ํ•˜๊ณ , DB์—์„œ 2์ค‘์œผ๋กœ ์•”ํ˜ธํ™” ํ•˜๋Š”๋ฐ, ์ด๋ ‡๊ฒŒ ๋œ๋‹ค๋ฉด MySQL ์„œ๋ฒ„์— ์ ‘์†์„ ํ•˜๋”๋ผ๋„ ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋Š” 1์ฐจ์ ์ธ ์•”ํ˜ธํ™”๊ฐ€ ๋˜์–ด ์žˆ๋Š” ์ƒํƒœ์ด๋ฏ€๋กœ ํ…Œ์ด๋ธ” ์•”ํ˜ธํ™”์— ๋น„ํ•ด์„œ ๋น„๊ต์  ์•ˆ์ „ํ•ฉ๋‹ˆ๋‹ค.

gzgzg2 commented 1 year ago

1. MySQL ์„œ๋ฒ„์˜ 2๋‹จ๊ณ„ ํ‚ค ๊ด€๋ฆฌ๋ฅผ ํ†ตํ•ด ์–ด๋– ํ•œ ์ด์ ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‚˜์š”?

2. ๋งˆ์Šคํ„ฐ ํ‚ค๋ฅผ ๋ณ€๊ฒฝํ•  ๋•Œ ์ผ์–ด๋‚˜๋Š” ์ƒํ™ฉ์„ ์•Œ๊ณ  ์žˆ๋‚˜์š”? ๋˜ํ•œ ํ…Œ์ด๋ธ” ์ŠคํŽ˜์ด์Šค ํ‚ค๋Š” ์™œ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š์•„๋„ ๋˜๋‚˜์š”?

3. ํ…Œ์ด๋ธ” ์••์ถ•์€ ์–ด๋– ํ•œ ์ƒํ™ฉ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„๊นŒ์š”?

4. InnoDB ๋ฒ„ํผ ํ’€์— ์ ์žฌ๋œ ๋‘ ํ…Œ์ด๋ธ”A(์•”ํ˜ธํ™”X), ํ…Œ์ด๋ธ”B(์•”ํ˜ธํ™”O)๋Š” ์„œ๋กœ ๋™์ผํ•œ ์„ฑ๋Šฅ์„ ๋ณด์ด๋Š”๋ฐ์š” ์™œ ๊ทธ๋Ÿด๊นŒ์š”?

5. Unzip_LRU๊ฐ€ ์žˆ์Œ์œผ๋กœ์„œ ์žฅ์ ๊ณผ ์ˆ˜ํ–‰ ๊ณผ์ •์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”

6. Mysql์˜ ํ…Œ์ด๋ธ” ์•”ํ˜ธํ™”์™€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ํ†ตํ•œ ์•”ํ˜ธํ™”์˜ ์žฅ๋‹จ์ ์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”

sedin2 commented 1 year ago

1. MySQL ์„œ๋ฒ„์˜ 2๋‹จ๊ณ„ ํ‚ค ๊ด€๋ฆฌ๋ฅผ ํ†ตํ•ด ์–ด๋– ํ•œ ์ด์ ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‚˜์š”?


2. ๋งˆ์Šคํ„ฐ ํ‚ค๋ฅผ ๋ณ€๊ฒฝํ•  ๋•Œ ์ผ์–ด๋‚˜๋Š” ์ƒํ™ฉ์„ ์•Œ๊ณ  ์žˆ๋‚˜์š”? ๋˜ํ•œ ํ…Œ์ด๋ธ” ์ŠคํŽ˜์ด์Šค ํ‚ค๋Š” ์™œ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š์•„๋„ ๋˜๋‚˜์š”?


3. ํ…Œ์ด๋ธ” ์••์ถ•์€ ์–ด๋– ํ•œ ์ƒํ™ฉ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„๊นŒ์š”?


4. InnoDB ๋ฒ„ํผ ํ’€์— ์ ์žฌ๋œ ๋‘ ํ…Œ์ด๋ธ”A(์•”ํ˜ธํ™”X), ํ…Œ์ด๋ธ”B(์•”ํ˜ธํ™”O)๋Š” ์„œ๋กœ ๋™์ผํ•œ ์„ฑ๋Šฅ์„ ๋ณด์ด๋Š”๋ฐ์š” ์™œ ๊ทธ๋Ÿด๊นŒ์š”?


5. Unzip_LRU๊ฐ€ ์žˆ์Œ์œผ๋กœ์„œ ์žฅ์ ๊ณผ ์ˆ˜ํ–‰ ๊ณผ์ •์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”


6. Mysql์˜ ํ…Œ์ด๋ธ” ์•”ํ˜ธํ™”์™€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ํ†ตํ•œ ์•”ํ˜ธํ™”์˜ ์žฅ๋‹จ์ ์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”

zookong commented 1 year ago
  1. MySQL ์„œ๋ฒ„์˜ 2๋‹จ๊ณ„ ํ‚ค ๊ด€๋ฆฌ๋ฅผ ํ†ตํ•ด ์–ด๋– ํ•œ ์ด์ ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‚˜์š”?

MySQL์˜ ๋ฐ์ดํ„ฐ ์•”ํ˜ธํ™”์˜ ํ‚ค๋Š” ํ‚ค๋ง ํ”Œ๋Ÿฌ๊ทธ์ธ์— ์˜ํ•ด ๊ด€๋ฆฌ ๋งˆ์Šคํ„ฐ ํ‚ค, ํ…Œ์ด๋ธ”์ŠคํŽ˜์ด์Šค ํ‚ค๊ฐ€ ์กด์žฌ ๋งˆ์Šคํ„ฐ ํ‚ค๋Š” ์™ธ๋ถ€ ํ‚ค ๊ด€๋ฆฌ ์†”๋ฃจ์…˜ ํ˜น์€ ๋””์Šคํฌ์˜ ํŒŒ์ผ์—์„œ ๋งˆ์Šคํ„ฐ ํ‚ค๋ฅผ ํš๋“, ์™ธ๋ถ€์— ๋…ธ์ถœ๋  ๊ฐ€๋Šฅ์„ฑ ์กด์žฌ ํ…Œ์ด๋ธ”์ŠคํŽ˜์ด์Šค ํ‚ค๋Š” ์•”ํ˜ธํ™”๋œ ํ…Œ์ด๋ธ” ์ƒ์„ฑ์‹œ์— ์ž„์˜์˜ ํ‚ค๋ฅผ ๋ฐœ๊ธ‰, ๋‚ด๋ถ€์ ์œผ๋กœ ์กด์žฌํ•˜๊ธฐ์— ๋…ธ์ถœ ๊ฐ€๋Šฅ์„ฑ ์กด์žฌํ•˜์ง€ ์•Š์Œ

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

  1. ๋งˆ์Šคํ„ฐ ํ‚ค๋ฅผ ๋ณ€๊ฒฝํ•  ๋•Œ ์ผ์–ด๋‚˜๋Š” ์ƒํ™ฉ์„ ์•Œ๊ณ  ์žˆ๋‚˜์š”? ๋˜ํ•œ ํ…Œ์ด๋ธ” ์ŠคํŽ˜์ด์Šค ํ‚ค๋Š” ์™œ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š์•„๋„ ๋˜๋‚˜์š”?

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

  1. ํ…Œ์ด๋ธ” ์••์ถ•์€ ์–ด๋– ํ•œ ์ƒํ™ฉ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„๊นŒ์š”?

๋””์Šคํฌ ์ €์žฅ ๊ณต๊ฐ„์˜ ๋น„์šฉ์  ์ด๋“์„ ์–ป๊ณ ์ž ํ• ๋•Œ ๋ฐ์ดํ„ฐ์˜ ๋ฐฑ์—… ๋ฐ ๋ณต๊ตฌ๊ฐ€ ์ž์ฃผ ์ผ์–ด๋‚˜์„œ ์‹œ๊ฐ„์  ๋น„์šฉ์ด ํด๋•Œ ํŽ˜์ด์ง€ ์••์ถ•์„ ํ†ตํ•ด ์ด์ ์„ ์–ป๊ธฐ ํž˜๋“ค๋•Œ

ํŽ€์น˜ ํ™€ ๊ธฐ๋Šฅ์€ ์šด์˜์ฒด์ œ, ํ•˜๋“œ์›จ์–ด ์ž์ฒด์—์„œ๋„ ๊ธฐ๋Šฅ์„ ์ง€์›ํ•ด์•ผ ํ•จ ํŽ€์น˜ ํ™€์ด ์ ์šฉ๋œ 1G ํŒŒ์ผ์ด ๋‹ค์‹œ ์ฑ„์›Œ์งˆ ๊ฒฝ์šฐ 10G๊ฐ€ ๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์‹ค์ œ ๋งŽ์ด ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ

  1. InnoDB ๋ฒ„ํผ ํ’€์— ์ ์žฌ๋œ ๋‘ ํ…Œ์ด๋ธ”A(์•”ํ˜ธํ™”X), ํ…Œ์ด๋ธ”B(์•”ํ˜ธํ™”O)๋Š” ์„œ๋กœ ๋™์ผํ•œ ์„ฑ๋Šฅ์„ ๋ณด์ด๋Š”๋ฐ์š” ์™œ ๊ทธ๋Ÿด๊นŒ์š”?

์•”ํ˜ธํ™”๋œ ํ…Œ์ด๋ธ”์— ๋Œ€ํ•ด InnoDB ๋ฒ„ํผ ํ’€์— ์ ์žฌํ•  ๊ฒฝ์šฐ ๋ณตํ˜ธํ™”๋œ ๋ฐ์ดํ„ฐ๊ฐ€ ์ ์žฌ๊ฐ€ ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์•”ํ˜ธํ™”๋˜์ง€ ์•Š์€ ํ…Œ์ด๋ธ”๊ณผ ์„ฑ๋Šฅ์ƒ ์ฐจ์ด๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š์Œ

  1. Unzip_LRU๊ฐ€ ์žˆ์Œ์œผ๋กœ์„œ ์žฅ์ ๊ณผ ์ˆ˜ํ–‰ ๊ณผ์ •์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”

    InnoDB ๋ฒ„ํผ ํ’€์—๋Š” ๋””์Šคํฌ์—์„œ ๊ทธ๋Œ€๋กœ ์ฝ๋Š” ์ƒํƒœ์ธ LRU, ์••์ถ•๋œ ํŽ˜์ด์ง€๋“ค์˜ ์••์ถ• ํ•ด์ œ ๋ฒ„์ „์ธ Unzip_LRU๊ฐ€ ์กด์žฌ ์••์ถ• ๋ฐ ์••์ถ• ํ•ด์ œ ์ž‘์—…์„ ์ตœ์†Œํ™” ์–ด๋Œ‘ํ‹ฐ๋ธŒ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์‚ฌ์šฉ CPU ์‚ฌ์šฉ๋Ÿ‰์ด ๋งŽ์€ ๊ฒฝ์šฐ Unzip_LRU ๋น„์œจ์„ ๋†’์ด๊ณ  ์••์ถ•๊ณผ ์••์ถ• ํ•ด์ œ๋ฅผ ํ”ผํ•จ Disk IO ์‚ฌ์šฉ๋Ÿ‰์ด ๋†’์€ ์„œ๋ฒ„๋Š” Unzip_LRU ๋ฆฌ์ŠคํŠธ ๋น„์œจ์„ ๋‚ฎ์ถ”๊ณ  InnoDB ๋ฒ„ํผ ํ’€์˜ ๊ณต๊ฐ„์„ ๋” ํ™•๋ณด

  2. Mysql์˜ ํ…Œ์ด๋ธ” ์•”ํ˜ธํ™”์™€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ํ†ตํ•œ ์•”ํ˜ธํ™”์˜ ์žฅ๋‹จ์ ์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”

    ์žฅ์  MySQL ์„œ๋ฒ„๋ฅผ ํ†ตํ•ด์„œ๋„ ์•”ํ˜ธํ™”๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๊ธฐ์— ๋‚ด์šฉ์ด ์•ˆ๋ณด์ž„(๋‹จ์ ๋„..), MySQL TDE ๋Š” ์„œ๋ฒ„๋ฅผ ํ†ตํ•œ ์กฐํšŒ์‹œ์— ๋ณด์ž„ ๋‹จ์  ์ด๋ฏธ ์•”ํ˜ธํ™”๊ฐ€ ์ง„ํ–‰๋œ ๊ฐ’์ด๊ธฐ์— ์•”ํ˜ธํ™” ์ „์˜ ๊ฐ’์œผ๋กœ ์ธ๋ฑ์Šค ๋ฐ ์ •๋ ฌ ๋“ฑ์˜ ๊ธฐ๋Šฅ ์‚ฌ์šฉ์ด ๋ถˆ๊ฐ€(๋””์Šคํฌ ์ €์žฅ์‹œ ์•”ํ˜ธํ™”)