Key Visualizer ์ธก์ •ํ•ญ๋ชฉ

์ด ํŽ˜์ด์ง€์—์„œ๋Š” Key Visualizer ํžˆํŠธ๋งต์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋Š” ์ธก์ •ํ•ญ๋ชฉ์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

๋Œ€๋ถ€๋ถ„์˜ Key Visualizer ์ธก์ •ํ•ญ๋ชฉ์€ ํ–‰๋‹น ์ˆ˜๋Ÿ‰์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด Ops ์ธก์ •ํ•ญ๋ชฉ์€ 1๋ถ„ ๋™์•ˆ ์ง„ํ–‰๋œ ํ–‰๋ณ„ ์ž‘์—… ์ˆ˜๋ฅผ ์ธก์ •ํ•ฉ๋‹ˆ๋‹ค.

Bigtable ํ…Œ์ด๋ธ”์—๋Š” ๋ช‡ ์กฐ ๊ฐœ์˜ ํ–‰์ด ์žˆ์„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๊ฐ ํ–‰์— ๋Œ€ํ•œ ์ธก์ •ํ•ญ๋ชฉ์„ ๋ณด๊ณ ํ•˜๋Š” ๊ฒƒ์ด ํ•ญ์ƒ ์‹ค์šฉ์ ์ธ ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. ๋Œ€์‹  Key Visualizer๋Š” ๋ชจ๋“  row key๋ฅผ 1,000๊ฐœ์˜ ์—ฐ์† ๋ฒ”์œ„๋กœ ๋‚˜๋ˆ„์–ด ๊ฐ ๋ฒ”์œ„์— ๊ฑฐ์˜ ๊ฐ™์€ ์ˆ˜์˜ row key๊ฐ€ ํฌํ•จ๋˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฒ”์œ„๋ฅผ ํ‚ค ๋ฒ„ํ‚ท์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

Key Visualizer๋Š” ๋Œ€๋ถ€๋ถ„์˜ ์ธก์ •ํ•ญ๋ชฉ์„ ๊ฐ ํ‚ค ๋ฒ„ํ‚ท์˜ ํ‰๊ท  ๋˜๋Š” ๊ฐ ํ‚ค ๋ฒ„ํ‚ท ๋‚ด ์ตœ๋Œ“๊ฐ’์œผ๋กœ ๋ณด๊ณ ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฝ๊ณ  ์ธก์ •ํ•ญ๋ชฉ๊ณผ ์„ฑ๋Šฅ ์ธก์ •ํ•ญ๋ชฉ์˜ ๊ฒฝ์šฐ Key Visualizer๋Š” ๊ฐœ๋ณ„ row key ๋˜๋Š” ํ‚ค ๋ฒ„ํ‚ท ๋‚ด ํŠน์ • ํ‚ค ๋ฒ”์œ„์— ๋Œ€ํ•œ ์ธก์ •ํ•ญ๋ชฉ์„ ๋ณด๊ณ ํ•˜์—ฌ ์ •ํ™•๋„๋ฅผ ๋†’์ž…๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๋ฅผ ์ฝ๊ธฐ ์ „์— Key Visualizer ๊ฐœ์š”๋ฅผ ์ˆ™์ง€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํ™œ๋™

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

๊ฒฝ๊ณ 

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

  • Read pressure index: CPU ์‚ฌ์šฉ๋ฅ  ๋ฐ ์ฝ๊ธฐ ์ง€์—ฐ ์‹œ๊ฐ„์„ ํฌํ•จํ•˜๋Š” row key ๋˜๋Š” ํ‚ค ๋ฒ”์œ„์— ๋Œ€ํ•œ ๋ถˆํˆฌ๋ช… ๋ณตํ•ฉ ์ง€์ˆ˜์ž…๋‹ˆ๋‹ค.

    ์ด ์ง€์ˆ˜๋Š” 15๋ถ„์˜ ๊ฐ„๊ฒฉ ๋™์•ˆ ๊ด€์ฐฐ๋œ ๋ชจ๋“  ๊ฐ’์„ ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ’์ด 100 ์ด์ƒ์ด๋ฉด ์ผ๋ฐ˜์ ์œผ๋กœ ํ‚ค ๋ฒ”์œ„์˜ ์„ฑ๋Šฅ์ด ์ข‹์ง€ ์•Š์Œ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๋‹จ์ผ ํ–‰ ๋˜๋Š” ์ž‘์€ ๋ฒ”์œ„์˜ ํ–‰์— ์ž์ฃผ ์•ก์„ธ์Šคํ•˜๊ฑฐ๋‚˜ ํ–‰์— 256MB ์ด์ƒ์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ํฌํ•จ๋œ ๊ฒฝ์šฐ ์„ฑ๋Šฅ์ด ์ €ํ•˜๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • Write pressure index: CPU ์‚ฌ์šฉ๋ฅ  ๋ฐ ์“ฐ๊ธฐ ์ง€์—ฐ ์‹œ๊ฐ„์„ ํฌํ•จํ•˜๋Š” row key ๋˜๋Š” ํ‚ค ๋ฒ”์œ„์— ๋Œ€ํ•œ ๋ถˆํˆฌ๋ช… ๋ณตํ•ฉ ์ง€์ˆ˜์ž…๋‹ˆ๋‹ค.

    ์ด ์ง€์ˆ˜๋Š” 15๋ถ„์˜ ๊ฐ„๊ฒฉ ๋™์•ˆ ๊ด€์ฐฐ๋œ ๋ชจ๋“  ๊ฐ’์„ ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ’์ด 100 ์ด์ƒ์ด๋ฉด ์ผ๋ฐ˜์ ์œผ๋กœ ํ‚ค ๋ฒ”์œ„์˜ ์„ฑ๋Šฅ์ด ์ข‹์ง€ ์•Š์Œ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๋‹จ์ผ ํ–‰ ๋˜๋Š” ์ž‘์€ ๋ฒ”์œ„์˜ ํ–‰์— ์ž์ฃผ ์•ก์„ธ์Šคํ•˜๊ฑฐ๋‚˜ ํ–‰์— 256MB๊ฐ€ ๋„˜๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ํฌํ•จ๋œ ๊ฒฝ์šฐ ์„ฑ๋Šฅ์ด ์ €ํ•˜๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ํฐ ํ–‰: ๊ฐ๊ฐ 256MB๊ฐ€ ๋„˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํฌํ•จํ•˜๋Š” ํ–‰์ด๋‚˜ ํ–‰๋‹น ํ‰๊ท ์ด 200MB๋ฅผ ๋„˜๋Š” ํ‚ค ๋ฒ”์œ„์— ์ €์žฅ๋˜๋Š” ๋ฐ์ดํ„ฐ ์–‘์ž…๋‹ˆ๋‹ค.

    ํ–‰๋‹น 256MB๊ฐ€ ๋„˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋ฉด ์„ฑ๋Šฅ ๋ฌธ์ œ์™€ ์ฝ๊ธฐ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๊ถŒ์žฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ด ์ธก์ •ํ•ญ๋ชฉ์˜ ๊ฒฝ์šฐ ํžˆํŠธ๋งต ์œ„๋กœ ์ปค์„œ๋ฅผ ์ด๋™ํ•ด๋„ Key Visualizer ํ”„๋กœ๊ทธ๋žจ์€ ํ‚ค ๋ฒ„ํ‚ท์— ๋Œ€ํ•œ ์ง‘๊ณ„ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋Œ€์‹  ํ…Œ์ด๋ธ”์˜ ํŠน์ • row key ๋˜๋Š” ํ‚ค ๋ฒ”์œ„์˜ ์ •๋ณด๊ฐ€ ํ‘œ์‹œ๋˜๋ฏ€๋กœ ๋ฌธ์ œ์˜ ์ถœ์ฒ˜๋ฅผ ์ •ํ™•ํžˆ ์ฐพ์•„๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ธก์ •ํ•ญ๋ชฉ์„ ๋ณด๊ณ  ์กฐ์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๊ฒฝ๊ณ  ์ธก์ •ํ•ญ๋ชฉ ๊ฒ€ํ† ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์ฝ๊ธฐ

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

  • Read CPU: ํ–‰์„ ์ฝ๋Š” ๋ฐ ์‚ฌ์šฉ๋œ ๋…ธ๋“œ ์ˆ˜๋กœ ํ‘œ์‹œ๋˜๋Š” ํ‰๊ท  CPU ์‚ฌ์šฉ๋ฅ ์ž…๋‹ˆ๋‹ค. ์ƒ‰์ƒ์€ ๊ด€์ธก๋œ ๋ชจ๋“  ๊ฐ’์— ์ƒ๋Œ€์ ์ธ ๊ฐ’์„ ๋‚˜ํƒ€๋‚ด๋ฏ€๋กœ ๋…ธ๋ž€์ƒ‰ ๋˜๋Š” ํฐ์ƒ‰์ด ํ•ซ์ŠคํŒŸ์„ ์˜๋ฏธํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.
  • Read bytes client: ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋ถ„๋‹น ๊ฐ ํ–‰์—์„œ ์ฝ์€ ๋ฐ”์ดํŠธ ์ˆ˜์ž…๋‹ˆ๋‹ค. ์ƒ‰์ƒ์€ ๊ด€์ธก๋œ ๋ชจ๋“  ๊ฐ’์— ์ƒ๋Œ€์ ์ธ ๊ฐ’์„ ๋‚˜ํƒ€๋‚ด๋ฏ€๋กœ ๋…ธ๋ž€์ƒ‰ ๋˜๋Š” ํฐ์ƒ‰์ด ํ•ซ์ŠคํŒŸ์„ ์˜๋ฏธํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.

์“ฐ๊ธฐ

์“ฐ๊ธฐ ์นดํ…Œ๊ณ ๋ฆฌ์—๋Š” ํ…Œ์ด๋ธ”์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์“ฐ๋Š” ๊ฒƒ๊ณผ ๊ด€๋ จ๋œ ์ธก์ •ํ•ญ๋ชฉ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ด ์นดํ…Œ๊ณ ๋ฆฌ์—๋Š” ๋‹ค์Œ ์ธก์ •ํ•ญ๋ชฉ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

  • Write CPU: ํ–‰์„ ์“ฐ๋Š” ๋ฐ ์‚ฌ์šฉ๋œ ๋…ธ๋“œ์˜ ์ˆ˜๋กœ ํ‘œ์‹œ๋˜๋Š” ํ‰๊ท  CPU ์‚ฌ์šฉ๋ฅ ์ž…๋‹ˆ๋‹ค. ์ƒ‰์ƒ์€ ๊ด€์ธก๋œ ๋ชจ๋“  ๊ฐ’์— ์ƒ๋Œ€์ ์ธ ๊ฐ’์„ ๋‚˜ํƒ€๋‚ด๋ฏ€๋กœ ๋…ธ๋ž€์ƒ‰ ๋˜๋Š” ํฐ์ƒ‰์ด ํ•ซ์ŠคํŒŸ์„ ์˜๋ฏธํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.
  • Write bytes client: ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋ถ„๋‹น ๊ฐ ํ–‰์—์„œ ์“ด ๋ฐ”์ดํŠธ ์ˆ˜์ž…๋‹ˆ๋‹ค. ์ƒ‰์ƒ์€ ๊ด€์ธก๋œ ๋ชจ๋“  ๊ฐ’์— ์ƒ๋Œ€์ ์ธ ๊ฐ’์„ ๋‚˜ํƒ€๋‚ด๋ฏ€๋กœ ๋…ธ๋ž€์ƒ‰ ๋˜๋Š” ํฐ์ƒ‰์ด ํ•ซ์ŠคํŒŸ์„ ์˜๋ฏธํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.

์„ฑ๋Šฅ

์„ฑ๋Šฅ ์นดํ…Œ๊ณ ๋ฆฌ์—๋Š” ์ง€์—ฐ ์‹œ๊ฐ„๊ณผ ๊ด€๋ จ๋œ ์ธก์ •ํ•ญ๋ชฉ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ด ์นดํ…Œ๊ณ ๋ฆฌ์—๋Š” ๋‹ค์Œ ์ธก์ •ํ•ญ๋ชฉ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

  • Latency: ์ฝ๊ธฐ ๋ฐ ์“ฐ๊ธฐ ์ž‘์—…์˜ ์ง€์—ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ฃผํ™ฉ์ƒ‰์œผ๋กœ ํ‘œ์‹œ๋œ 1์ดˆ๋Š” ๋†’์€ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • Latency(max): ์ฝ๊ธฐ ๋˜๋Š” ์“ฐ๊ธฐ์˜ ์ตœ๋Œ€ ์ง€์—ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ฃผํ™ฉ์ƒ‰์œผ๋กœ ํ‘œ์‹œ๋œ 1์ดˆ๋Š” ๋†’์€ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ์ธก์ •ํ•ญ๋ชฉ์˜ ๊ฒฝ์šฐ ํžˆํŠธ๋งต ์œ„๋กœ ์ปค์„œ๋ฅผ ์ด๋™ํ•ด๋„ Key Visualizer ํ”„๋กœ๊ทธ๋žจ์€ ํ‚ค ๋ฒ„ํ‚ท์— ๋Œ€ํ•œ ์ง‘๊ณ„ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋Œ€์‹  ํ…Œ์ด๋ธ”์˜ ํŠน์ • row key ๋˜๋Š” ํ‚ค ๋ฒ”์œ„์˜ ์ •๋ณด๊ฐ€ ํ‘œ์‹œ๋˜๋ฏ€๋กœ ๋ฌธ์ œ์˜ ์ถœ์ฒ˜๋ฅผ ์ •ํ™•ํžˆ ์ฐพ์•„๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํฌ๊ธฐ

  • Data stored: ํ–‰๋‹น ์ €์žฅ๋˜๋Š” ๋ฐ์ดํ„ฐ ์–‘์ž…๋‹ˆ๋‹ค. ์ด ์ธก์ •ํ•ญ๋ชฉ์€ ๋ฐ์ดํ„ฐ ์ €์žฅ ์‹œ Bigtable์˜ ๋ฐ์ดํ„ฐ ์••์ถ•์„ ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค.
  • Rows: ๊ฐ ํ‚ค ๋ฒ„ํ‚ท์— ์žˆ๋Š” ๋Œ€๋žต์ ์ธ ํ–‰ ์ˆ˜์ž…๋‹ˆ๋‹ค.

    Rows ํžˆํŠธ๋งต์€ ์ผ๋ฐ˜์ ์œผ๋กœ ๋…ธ๋ž€์ƒ‰์œผ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ์™ผ์ชฝ์—์„œ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ๋ฐ์•„์ง€๋Š”(์ง™์€ ์ƒ‰์—์„œ ๋ฐ์€ ์ƒ‰์œผ๋กœ ๋ณ€ํ•จ) ๊ฐ€๋กœ ์ค„๋ฌด๋Šฌ๋Š” ํ–‰ ์ถ”๊ฐ€๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ์™ผ์ชฝ์—์„œ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์–ด๋‘์›Œ์ง€๋Š” ์ค„๋ฌด๋Šฌ๋Š” ํ–‰ ์‚ญ์ œ๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

    Key Visualizer ๋ฒ„ํ‚ท์˜ ํ–‰ ์ˆ˜

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

๋‹ค์Œ ๋‹จ๊ณ„