user-img
Computer Science/๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค 12
thumbnail
[DB] ์ธ๋ฑ์Šค ๋จธ์ง€ (Index Merge)
0. ํ•™์Šต ๋ชฉ์ ์ธ๋ฑ์Šค ๋จธ์ง€๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์ดํ•ดํ•œ๋‹ค.์ธ๋ฑ์Šค ๋จธ์ง€์˜ ์ข…๋ฅ˜์ธ ๊ต์ง‘ํ•ฉ, ํ•ฉ์ง‘ํ•ฉ, ์ •๋ ฌ ํ›„ ํ•ฉ์ง‘ํ•ฉ์„ ์ดํ•ดํ•œ๋‹ค.1. ์ธ๋ฑ์Šค ๋จธ์ง€๋ž€?Index Merge ๋ž€ ํ•˜๋‚˜์˜ ํ…Œ์ด๋ธ”์—์„œ ๋‘ ๊ฐœ ์ด์ƒ์˜ ์ธ๋ฑ์Šค๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์„ ๋ณ„ํ•˜๊ณ  ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๋ณ‘ํ•ฉํ•˜์—ฌ ์ฟผ๋ฆฌ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ์ตœ์ ํ™” ์ „๋žต์ด๋‹ค.๋งŒ์•ฝ ํ•ด๋‹น ์˜ต์…˜์„ ์ผœ๋‘์ง€ ์•Š์•˜๋‹ค๋ฉด, ์˜ตํ‹ฐ๋งˆ์ด์ €๋Š” ์ฟผ๋ฆฌ๋ฅผ ์ฒ˜๋ฆฌํ•  ๋•Œ, ํ•˜๋‚˜์˜ ํ…Œ์ด๋ธ”์—์„œ๋Š” ์˜ค๋กœ์ง€ ํ•˜๋‚˜์˜ ์ธ๋ฑ์Šค๋ฅผ ํ™œ์šฉํ•œ๋‹ค.2. ์‚ฌ์šฉ๋˜๋Š” ์กฐ๊ฑด์ฟผ๋ฆฌ์— ์‚ฌ์šฉ๋œ ๊ฐ๊ฐ์˜ ์กฐ๊ฑด์ด ํ•˜๋‚˜์˜ ํ…Œ์ด๋ธ” ๋‚ด์˜ ์„œ๋กœ ๋‹ค๋ฅธ ์ธ๋ฑ์Šค๋ฅผ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.ํ•˜๋‚˜์˜ ์ธ๋ฑ์Šค๋กœ๋งŒ ์ฒ˜๋ฆฌํ–ˆ์„ ๊ฒฝ์šฐ ๋ฒ”์œ„ ํ•„ํ„ฐ๋ง ํšจ๊ณผ๊ฐ€ ๋ฏธ๋ฏธํ•˜๋‹ค.3. ์ข…๋ฅ˜intersection: ๊ฐ๊ธฐ ๋‹ค๋ฅธ ์ธ๋ฑ์Šค๋กœ ํ•„ํ„ฐ๋งํ•œ ๋ฐ์ดํ„ฐ๋“ค ์‚ฌ์ด์˜ ๊ต์ง‘ํ•ฉ๋งŒ ๋ฐ˜ํ™˜union: ๊ฐ๊ธฐ ๋‹ค๋ฅธ ์ธ๋ฑ์Šค๋กœ ํ•„ํ„ฐ๋งํ•œ ๋ฐ์ดํ„ฐ๋“ค ์‚ฌ์ด์— ํ•ฉ์ง‘..
2025.07.24
Computer Science/๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
thumbnail
[DB] ์ธ๋ฑ์Šค ํ™•์žฅ (Index Extension)
0. ํ•™์Šต ๋ชฉ์ ์ธ๋ฑ์Šค ํ™•์žฅ์ด ๋ฌด์—‡์ธ์ง€ ์ดํ•ดํ•œ๋‹ค.์ธ๋ฑ์Šค ํ™•์žฅ ์ „๋žต์˜ ์žฅ์ ์„ ์ดํ•ดํ•œ๋‹ค.1. ์ธ๋ฑ์Šค ํ™•์žฅ ์ด๋ž€?Index Extension์€ InnoDB๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ํ…Œ์ด๋ธ”์—์„œ ๋ณด์กฐ ์ธ๋ฑ์Šค๋ฅผ ํ™œ์šฉํ•  ๋•Œ, ๊ทธ ๋ณด์กฐ ์ธ๋ฑ์Šค์— ์ž๋™ ์ถ”๊ฐ€๋œ PK๋„ ํ•จ๊ป˜ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ• ์ง€ ๋ง์ง€๋ฅผ ์ •ํ•˜๋Š” ์˜ต์…˜์ด๋‹ค. ํ•ด๋‹น ์˜ต์…˜์„ ํ™œ์„ฑํ™”ํ•˜๋ฉด, ๋ณด์กฐ์ธ๋ฑ์Šค๋ฅผ (๋ณด์กฐ ์ธ๋ฑ์Šค, PK) ๋กœ ๋œ ๋ณตํ•ฉ ์ธ๋ฑ์Šค๋ฅผ ํ™œ์šฉํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ…Œ์ด๋ธ”์ด ์žˆ๋‹ค๊ณ  ํ•ด๋ณด์ž.-- ํ…Œ์ด๋ธ” ์ƒ์„ฑCREATE TABLE dept_emp ( dept_no INT NOT NULL, emp_no CHAR(4) NOT NULL, salary INT, from_date DATE NOT NULL, PRIMARY KEY (dept_no, ..
2025.07.24
Computer Science/๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
thumbnail
[๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค] Multi Range Read
0. ํ•™์Šต ๋ชฉ์ MRR ์˜ต์…˜์ด ๋ฌด์—‡์ธ์ง€, ์ž‘๋™ ์›๋ฆฌ๊ฐ€ ์–ด๋–ป๊ฒŒ ๋˜๋Š”์ง€ ์ดํ•ดํ•œ๋‹ค.MRR๊ณผ BKA์˜ ๊ด€๊ณ„๋ฅผ ์ดํ•ดํ•œ๋‹ค.BKA์˜ ์ž‘๋™ ์›๋ฆฌ์— ๋Œ€ํ•ด ์ดํ•ดํ•œ๋‹ค. 1. MRR (Multi-Range-Read) ์ด๋ž€?๋žœ๋ค I/O ์ ‘๊ทผ์„ ์ˆœ์ฐจ I/O ์ ‘๊ทผ์œผ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ์ฝ๊ธฐ ์†๋„๋ฅผ ์ตœ์ ํ™”ํ•˜๋Š” ์ „๋žต์ด๋‹ค. 2. MRR ์ž‘๋™ ์›๋ฆฌ-- ํ…Œ์ด๋ธ” ์ƒ์„ฑCREATE TABLE employees ( emp_no INT PRIMARY KEY, last_name VARCHAR(50), department VARCHAR(50), salary INT, hire_date DATE, INDEX idx_hire_date (hire_date))engine='innodb';-- ์‹คํ–‰ํ•  ์ฟผ๋ฆฌSELECT * FROM employ..
2025.07.17
Computer Science/๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
thumbnail
[๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค] BNL ์กฐ์ธ์˜ ์ •์˜์™€ ์ž‘๋™ ๋ฐฉ์‹
0. ํ•™์Šต ๋ชฉ์ BNL ์กฐ์ธ์˜ ๋™์ž‘ ๊ณผ์ •์— ๋Œ€ํ•ด ์ดํ•ดํ•œ๋‹ค.BNL ์กฐ์ธ์ด ์™œ ํ•ด์‹œ ์กฐ์ธ์ด๋‚˜ ๋จธ์ง€ ์†ŒํŠธ ์กฐ์ธ์— ์˜ํ•ด ๋ฐ€๋ ค๋‚ฌ๋Š”์ง€ ์ดํ•ดํ•œ๋‹ค.BNL ์กฐ์ธ๊ณผ BKA ์กฐ์ธ์˜ ์ฐจ์ด์ ์— ๋Œ€ํ•ด ์ดํ•ดํ•œ๋‹ค.1. BNL ์กฐ์ธ์ด๋ž€?์กฐ์ธ ๋ฒ„ํผ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋“œ๋ฆฌ๋ธ ํ…Œ์ด๋ธ” ์Šค์บ” ํšŸ์ˆ˜๋ฅผ ์ค„์ด๋Š” ์กฐ์ธ ๋ฐฉ์‹.๋“œ๋ผ์ด๋น™ ํ…Œ์ด๋ธ”์˜ ์œ ํšจํ•œ ๋ ˆ์ฝ”๋“œ ํ•˜๋‚˜ ๋‹น, ๋“œ๋ฆฌ๋ธ ํ…Œ์ด๋ธ” ์ „์ฒด๋ฅผ ์Šค์บ”ํ•ด์•ผ ํ•˜๋Š” NL ์กฐ์ธ์˜ ์žฆ์€ ์Šค์บ” ํšŸ์ˆ˜๋ฅผ ์ค„์ด๊ณ ์ž ๋‚˜์˜จ ๋ฐฉ์‹์ด๋‹ค.2. BNL ์กฐ์ธ์˜ ๋™์ž‘ ๊ณผ์ •๋“œ๋ผ์ด๋น™ ํ…Œ์ด๋ธ”์—์„œ ์œ ํšจํ•œ ๋ ˆ์ฝ”๋“œ๋ฅผ ๋ฐœ๊ฒฌํ•˜๋ฉด, '์กฐ์ธ์— ํ•„์š”ํ•œ ์ปฌ๋Ÿผ๋งŒ' ์กฐ์ธ ๋ฒ„ํผ์— ์ €์žฅ์กฐ์ธ ๋ฒ„ํผ๊ฐ€ ๊ฐ€๋“์ฐจ๊ฑฐ๋‚˜, ๋“œ๋ผ์ด๋น™ ํ…Œ์ด๋ธ” ์ฝ๊ธฐ๊ฐ€ ๋๋‚˜๋ฉด ๋‹ค์Œ ๊ณผ์ •์„ ์ง„ํ–‰๋“œ๋ฆฌ๋ธ ํ…Œ์ด๋ธ”์˜ ๋ ˆ์ฝ”๋“œ๋ฅผ ์ˆœํšŒํ•˜๋ฉฐ ์œ ํšจํ•œ ๋ ˆ์ฝ”๋“œ๋ฅผ ๋งŒ๋‚ฌ์„ ๊ฒฝ์šฐ, ์กฐ์ธ ๋ฒ„ํผ๋ฅผ ์ „์ฒด ์ˆœํšŒํ•œ๋‹ค.ํ˜„์žฌ์˜ ๋“œ๋ฆฌ๋ธ ๋ ˆ์ฝ”๋“œ์™€ ๋งค์นญ๋˜๋Š”..
2025.07.17
Computer Science/๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
thumbnail
[๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค] BKA ์กฐ์ธ์˜ ์ •์˜์™€ ์ž‘๋™๋ฐฉ์‹๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค] BKA ์กฐ์ธ์˜ ์ •์˜์™€ ์ž‘๋™๋ฐฉ์‹
0. ํ•™์Šต ๋ชฉ์ BKA ์กฐ์ธ์˜ ์ž‘๋™ ์›๋ฆฌ๋ฅผ ์ดํ•ดํ•œ๋‹ค. BNL ์กฐ์ธ๊ณผ์˜ ์ฐจ์ด์ ์„ ์ดํ•ดํ•œ๋‹ค. 1. BKA (Batch-Key-Access) ์กฐ์ธ์ด๋ž€?์กฐ์ธ ๋ฒ„ํผ์™€ MRR ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ™œ์šฉํ•˜์—ฌ, Nested Loop Join์—์„œ ๋ฌธ์ œ๊ฐ€ ๋˜๋˜ ๋„ˆ๋ฌด ๋งŽ์€ ๋žœ๋ค I/O ์ ‘๊ทผ์„ ํ•œ ๋ฒˆ์˜ ์ˆœ์ฐจ I/O๋กœ ์ „ํ™˜ํ•˜์—ฌ ์ตœ์ ํ™”ํ•˜๋Š” ์กฐ์ธ์ „๋žต์„ ๋งํ•œ๋‹ค.2. BKA ์กฐ์ธ์˜ ๊ณผ์ •๋“œ๋ผ์ด๋น™ ํ…Œ์ด๋ธ” ์Šค์บ” ํ›„ ์กฐ์ธ ๋ฒ„ํผ ์ ์žฌKey Build (์กฐ์ธ๋ฒ„ํผ ๊ฐ ํ–‰์˜ (์กฐ์ธ ์ปฌ๋Ÿผ, ์กฐ์ธ ๋ฒ„ํผ ์† ์œ„์น˜ offset) ํŠœํ”Œ์„ ์ถ”์ถœํ•ด ๋žœ๋ค ๋ฒ„ํผ์— ์ ์žฌ) MRR ์ธํ„ฐํŽ˜์ด์Šค ํ˜ธ์ถœ (๋“œ๋ฆฌ๋ธ ํ…Œ์ด๋ธ”์˜ ์กฐ์ธ ์ปฌ๋Ÿผ์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ๋ณด์กฐ ์ธ๋ฑ์Šค ํ™œ์šฉํ•˜์—ฌ PK ๊ฐ’ ์ถ”์ถœ ๋ฐ ์ •๋ ฌ) MRR ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ๋“œ๋ฆฌ๋ธ ๋ณธ ํ…Œ์ด๋ธ” (ํด๋Ÿฌ์Šคํ„ฐ๋ง ํ…Œ์ด๋ธ”)์„ 3๋ฒˆ์—์„œ ์ •๋ ฌํ•œ PK ๊ฐ’ ์ˆœ์œผ๋กœ ์ˆœ..
2025.07.17
Computer Science/๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
thumbnail
[DB] My.ini์˜ ์œ„์น˜ ์ฐพ์•„์„œ ์„ค์ • ๊ฐ’ ๋ฐ”๊พธ๊ธฐ (innodb_ft_min_token_size)
0. ์ž‘์„ฑ ์ด์œ innodb_ft_min_token_size๋Š” read-only variable์ด๋ผ์„œ mysql ide์—์„œ ๋ฐ”๋กœ ๋ชป ๊ณ ์นœ๋‹ค. ๋”ฐ๋ผ์„œ ์ด๊ฒƒ์„ ๊ณ ์น˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•œ๋‹ค.1. my.ini ์œ„์น˜ ์ฐพ๊ธฐmy.ini๋Š” ๋ณดํ†ต MySQL์˜ basedir ํ•˜์œ„์— ์žˆ๋‹ค. show variables like %dir;๋งŒ์•ฝ .msi๋กœ ์„ค์น˜ํ–ˆ๋‹ค๋ฉด, %PROGRAMDATA% ๋””๋ ‰ํ† ๋ฆฌ ํ•˜์œ„์— ์œ„์น˜ํ•œ๋‹ค. ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ์—์„œ ๋‹ค์Œ ๋ช…๋ น์–ด๋ฅผ ์ณ์„œ %PROGRAMDATA% ์˜ ์œ„์น˜๋ฅผ ํ™•์ธํ•œ๋‹ค.echo %PROGRAMDATA%๋งŒ์•ฝ %PROGRAMDATA%์— my.ini์ด ์žˆ๋‹ค๋ฉด ์ด ์„ค์ • ํŒŒ์ผ์ด ์ •๋ง ์šฐ๋ฆฌ๊ฐ€ ์“ฐ๋Š” mySQL์— ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋Š”์ง€ ํ™•์ธํ•ด์•ผ ํ•œ๋‹ค. ๋‹ค์Œ ๋ช…๋ น์–ด๋ฅผ ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ์—์„œ ์ฒ˜๋ณธ๋‹ค.mysql --help์ดํ›„Defaul..
2025.06.07
Computer Science/๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
thumbnail
[DB] ์ „๋ฌธ ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค์˜ ๋ถˆ์šฉ์–ด ์ œ์™ธ ๊ธฐ์ค€
0. ํ•™์Šต ๋ชฉ์ '๋ถˆ์šฉ์–ด์™€ ์ผ์น˜ํ•˜๊ฑฐ๋‚˜, ๋ถˆ์šฉ์–ด๋ฅผ ํฌํ•จํ•˜๋Š” ํ† ํฐ์€ ์ธ๋ฑ์Šค ๋“ฑ๋ก์—์„œ ์ œ์™ธ' ๋ผ๋Š” ๋œป์˜ ์˜๋ฏธ๊ฐ€ ๋ช…ํ™•ํžˆ ์ดํ•ด๋˜์ง€ ์•Š์•„ ์‹ค์Šตํ•จ.์‹ค์Šต์„ ํ†ตํ•ด ์ž…์ฒด์ ์ธ ์ดํ•ด๋ฅผ ํ•œ๋‹ค.1. ๊ฒฐ๋ก n-gram์œผ๋กœ ๋ถ„ํ•  ํ–ˆ์„ ์‹œ ๋ถ„ํ• ๋œ ํ† ํฐ์ด ๋‘˜ ์ค‘ ํ•˜๋‚˜๋ผ๋„ ์ถฉ์กฑํ•˜๋ฉด (๋ถˆ์šฉ์–ด์™€ ์ผ์น˜ ํ˜น์€ ๋ถˆ์šฉ์–ด๋ฅผ ํฌํ•จ) ์ธ๋ฑ์Šค ๋“ฑ๋ก์—์„œ ์ œ์™ธ๋ฉ๋‹ˆ๋‹ค.๋”ฐ๋ผ์„œ n-gram์˜ n์ด ํด์ˆ˜๋ก ์ „๋ฌธ ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค์˜ ์„ฑ๋Šฅ์ด ์ €ํ•˜๋ฉ๋‹ˆ๋‹ค. 2. ์‹ค์Šตํ•˜๊ธฐ1. innodb ์ „์ฒด ํ† ํฐ ์„ค์ •์„ 2-gram์— ๋งž์ถค์„ธ๋ถ€ ๊ณผ์ •: [[MySQL์—์„œ innodb_ft_min_token_size ๋ฐ”๊พธ๊ธฐ]]2. docs ํ…Œ์ด๋ธ” ์ƒ์„ฑcreate table docs ( id int auto_increment primary key, content text, fulltext..
2025.06.07
Computer Science/๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
thumbnail
[DB] Hash Index ์ž‘๋™์›๋ฆฌ, ์™œ ์•ˆ ์“ฐ์ด๋Š”์ง€
0. ํ•™์Šต ๋ชฉ์ Hash Index์˜ ์ž‘๋™์›๋ฆฌ๋ฅผ ์ˆ˜๋ฐ• ๊ฒ‰ํ•ฅ๊ธฐ์‹์œผ๋กœ ์•ˆ๋‹ค.Hash Index์˜ ์žฅ์ ๊ณผ ๋‹จ์ ์„ ์•ˆ๋‹ค.1. ๋™์ž‘ ์›๋ฆฌ(1) ์ „๊ฐœ๋„์ถœ์ฒ˜: https://codingsight.com/hash-index-understanding-hash-indexes/๊ตฌ์„ฑ์š”์†ŒHash Function:์‹๋ณ„ ์ปฌ๋Ÿผ๊ฐ’์„ ํ•ด์‹œ๊ฐ’์œผ๋กœ ๋ฐ˜ํ™˜ํ•˜์—ฌ ํ•ด๋‹น ์ธ๋ฑ์Šค ๋ ˆ์ฝ”๋“œ๊ฐ€ ์ €์žฅ๋  ๋ฒ„ํ‚ท ์œ„์น˜๋ฅผ ํŠน์ •ํ•œ๋‹ค.Bucket:๊ตฌํ˜„์€ ๋ฐฐ์—ด๋กœ ๋˜์–ด ์žˆ๋‹ค. CREATE INDEX idx_name ON members USING hash (name);(2) ๋ฐ์ดํ„ฐ ์ €์žฅ ์‹œInsert๊ฐ€ ๋“ค์–ด์˜จ๋‹ค.Insert into members (name, ...) VALUES ( "John doe", ...)'John doe'๋ž€ ์ด๋ฆ„์˜ ์ผ๋ถ€ (ex - 'john')์„ H..
2025.05.11
Computer Science/๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
thumbnail
[DB] ์ธ๋ฑ์Šค์— ๋Œ€ํ•œ ๊ฐœ๊ด„์ ์ธ ์ดํ•ด
0. ํ•™์Šต๋ชฉ์ ์ธ๋ฑ์Šค์— ๋Œ€ํ•œ ๊ฐœ๊ด„์ ์ธ ์ดํ•ด ( ์•„ ์ด๋Ÿฐ ๊ฑฐ๊ตฌ๋‚˜~ ์ •๋„๋งŒ ์–ป์œผ๋ฉด OK)1. ์ธ๋ฑ์Šค๋ž€?์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ”๋กœ ์ฐพ์•„๋ณด๊ธฐ ์œ„ํ•œ ์ƒ‰์ธ์„ ๋งํ•œ๋‹ค.์ฑ…์˜ ๋ชฉ์ฐจ๋‚˜ ์ฑ… ๋ง๋ฏธ์— ์กด์žฌํ•˜๋Š” ์›ํ•˜๋Š” ๊ธ€ ์ฐพ์•„๋ณด๊ธฐ์™€ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ํ•œ๋‹ค.2. ์ธ๋ฑ์Šค์˜ ๊ตฌ์กฐ์ถœ์ฒ˜: ํ†ต๊ณ„ํ•™ ์„ธ์ƒ - 489๋ฒˆ์งธ ํฌ์ŠคํŒ… ๊ธ€์—์„œ๊ณ„์† ์ฑ…์˜ ๊ด€์ ๊ณผ ๋น„๊ตํ•ด์„œ ์„ค๋ช…ํ•˜๊ฒ ๋‹ค.์œ„์˜ ๊ทธ๋ฆผ์€ ๊ตญ์–ด ์‚ฌ์ „์˜ ๋งจ ๋์— ์žˆ๋Š” ์›ํ•˜๋Š” ๋‹จ์–ด์˜ ๋œป ์ฐพ์•„๋ณด๊ธฐ์ด๋‹ค. (์ดํ•˜ ์ƒ‰์ธ์ด๋ผ ๋ถ€๋ฅด๊ฒ ๋‹ค.)ํ•ด๋‹น ์ƒ‰์ธ์—์„œ๋Š” a. ์›ํ•˜๋Š” ๋‹จ์–ด ์ด๋ฆ„์„ ์ฐพ์€ ๋’ค, b. ๊ทธ๊ฒƒ์ด ๊ฐ€๋ฆฌํ‚ค๋Š” ํŽ˜์ด์ง€๋กœ ๊ฐ€์„œ c. ์ฑ…์˜ ๋‚ด์šฉ์„ ๋ณธ๋‹ค.DB์˜ INDEX ๋˜ํ•œ ํ•ด๋‹น ์›๋ฆฌ๋ฅผ ๊ทธ๋Œ€๋กœ ์ด์–ด ๋‚˜๊ฐ„๋‹ค. ๊ตญ์–ด์‚ฌ์ „์—์„œ ์›ํ•˜๋Š” ๋‹จ์–ด ์ด๋ฆ„๊ณผ ๊ฐ™์ด ๊ฐœ๋ณ„ ์ธ๋ฑ์Šค๋“ค์„ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ๋Š” a. ์‹๋ณ„ ์ปฌ๋Ÿผ ๊ฐ’์ด ์กด์žฌ ํ•˜๋ฉฐ, ๊ทธ๊ฒƒ๋งˆ๋‹ค Pair ๊ฐ’..
2025.05.10
Computer Science/๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
thumbnail
[DB] ๋žœ๋ค I/O๋Š” ์™œ ์ˆœ์ฐจ I/O๋ณด๋‹ค ๋А๋ฆด ์ˆ˜ ๋ฐ–์— ์—†๋Š”๊ฐ€? (HDD, SSD, DB ์„œ๋ฒ„ ๊ด€์ ์—์„œ ๋ถ„์„)
Relevance Framing ๐Ÿงฉ๋ชฉ์ : ์ฟผ๋ฆฌํŠœ๋‹์˜ ๋ชฉํ‘œ๋ฅผ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด์„œ์ฟผ๋ฆฌ์™€ Disk I/O์™€์˜ ๊ด€๊ณ„์ฟผ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํ•„์—ฐ์ ์œผ๋กœ ๋””์Šคํฌ I/O ์ž‘์—…์„ ๊ฑฐ์ณ์•ผ ํ•œ๋‹ค.ํ•ด๋‹น Disk I/O ์ž‘์—…์€ ๋‹ค์‹œ ๋žœ๋ค I/O์™€ ์ˆœ์ฐจ I/O๋กœ ๋‚˜๋‰˜๋Š”๋ฐ, ์ด๋Š” ๋””์Šคํฌ์— ์ ‘๊ทผ์„ ๋ช‡ ๋ฒˆ ํ•˜๋А๋ƒ์— ๋”ฐ๋ผ ์ข…๋ฅ˜๊ฐ€ ๋‚˜๋‰œ๋‹ค.์ฟผ๋ฆฌํŠœ๋‹์€,๊ธฐ์กด ์ฟผ๋ฆฌ์™€ ๋™์ผํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋” ๋น ๋ฅธ ์‹œ๊ฐ„์•ˆ์— ์‚ฌ์šฉ์ž์—๊ฒŒ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ๋„๋ก ์ฟผ๋ฆฌ๋ฅผ ๊ฐœ์„ ํ•˜๋Š” ์ž‘์—…์„ ๋งํ•œ๋‹ค.๋””์Šคํฌ์— ์ ‘๊ทผํ•˜๋Š” ํšŸ์ˆ˜๊ฐ€ ์ ์„์ˆ˜๋ก ์†๋„๊ฐ€ ๊ฐœ์„ ๋จ์€ ๋‹น์—ฐํ•œ ์ด์•ผ๊ธฐ ์ด๋ฏ€๋กœ,**์ฟผ๋ฆฌ ํŠœ๋‹์˜ ๋ชฉํ‘œ๋Š” ์ตœ๋Œ€ํ•œ Disk I/O๋ฅผ ์ ๊ฒŒ ํ•˜๋Š” ๊ฒƒ์— ์žˆ๋‹ค. 0. ์ „์ œ ์ƒํ™ฉ๋””์Šคํฌ I/O์— ๋Œ€ํ•œ ๊ฐœ๋…์„ ๋ช…ํ™•ํžˆ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด, OS ํŽ˜์ด์ง€ ์บ์‹œ์™€ InnoDB ๋ฒ„ํผ ํ’€์— ์ฐพ์œผ๋ ค๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ 100% ์—†๋Š” ์ƒํ™ฉ์ด๋ผ๊ณ  ๊ฐ€..
2025.05.09
Computer Science/๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
thumbnail
[DB] ์™œ HDD์™€ SSD์˜ ์„ฑ๋Šฅ ์ฐจ์ด๊ฐ€ ์ˆœ์ฐจ I/O์—์„œ๋Š” ํฌ์ง€ ์•Š์„๊นŒ?
1. CPU, D-ram, SSD, HDD์˜ ์ดˆ๋‹น ์—ฐ์‚ฐ ์ฒ˜๋ฆฌ ์†๋„ ์ฐจ์ด ๋น„๊ต์„ธ๋กœ์ถ•์ธ OPS๋Š” ์ดˆ๋‹น ์ฒ˜๋ฆฌ ์†๋„์ด๋‹ค.๋ฉ”๋ชจ๋ฆฌ(D-RAM)์™€ HDD๋Š” 10๋งŒ ๋ฐฐ ์ด์ƒ์˜ ์ฒ˜๋ฆฌ์†๋„ ์ฐจ์ด๋ฅผ ๋ณด์ธ๋‹ค.๋ฉ”๋ชจ๋ฆฌ์™€ SSD๋Š” 1000๋ฐฐ์˜ ์ฒ˜๋ฆฌ์†๋„ ์ฐจ์ด๋ฅผ ๋ณด์ธ๋‹ค.2. SSD์™€ HDD์˜ ์ˆœ์ฐจ I/O, ๋žœ๋ค I/O ์„ฑ๋Šฅ ๋น„๊ต(1) ์ˆœ์ฐจ I/O ์—์„œ๋Š” ์„ฑ๋Šฅ์  ์ฐจ์ด๊ฐ€ ํฌ๊ฒŒ ์—†๋‹ค.์ˆœ์ฐจ ์ฝ๊ธฐ๋Š” ํ•œ ๋ฒˆ์— ์—ฐ์†๋œ ๋งŽ์€ ๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ผ๊ด„์ ์œผ๋กœ ์ฝ๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค.A. ์ˆœ์ฐจ I/O์—์„œ๋Š” HDD์˜ ๋ฌผ๋ฆฌ์ ์ธ ์ ‘๊ทผ ์†๋„๊ฐ€ SSD์˜ ์ „๊ธฐ์  ์ ‘๊ทผ ๋ณด๋‹ค '์›”๋“ฑํžˆ' ๋А๋ฆฌ์ง„ ์•Š๋‹ค.HDD์—์„œ ์ˆœ์ฐจ I/O๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค๋ฉด ์ ˆ์ฐจ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. (1)ํ—ค๋“œ๋ฅผ ์ฝ์–ด์•ผ ํ•˜๋Š” ๋ฐ์ดํ„ฐ ์‹œ์ž‘์ ์— ์œ„์น˜์‹œํ‚ค๊ณ , (2) ๋””์Šคํฌ๋ฅผ ํšŒ์ „์‹œ์ผœ์„œ ๊ทธ๋ƒฅ ์ญ‰ ์ฝ์œผ๋ฉด ๋œ๋‹ค. ์ฆ‰ SEEK TIME๊ณผ..
2025.05.04
Computer Science/๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
thumbnail
[DB] HDD์™€ SSD์˜ ๊ตฌ์„ฑ์š”์†Œ ๋ฐ ์ž‘๋™์›๋ฆฌ
0. ํ•™์Šต์˜๋„HDD์™€ SSD์˜ ์ˆœ์ฐจ I/O ์‹œ๊ฐ„์€ ๊ฑฐ์˜ ๋น„์Šทํ•˜๋‹ค๋Š” ๋ง ์ž์ฒด๊ฐ€ ์ดํ•ด๊ฐ€ ๋˜์ง€ ์•Š์•˜๋‹ค. ์ „๊ธฐ์  ์ ‘๊ทผ์ด ์ด๋ฃจ์–ด์ง€๋Š” SSD๊ฐ€ HDD๋ณด๋‹ค ๋‹น์—ฐํžˆ ๋ชจ๋“  ๋ฉด์—์„œ ์›”๋“ฑํ•ด์•ผ ํ•˜๋Š” ๊ฒƒ ์•„๋‹Œ๊ฐ€?? ํ•ด๋‹น ๋ฌผ์Œ์— ๋‹ตํ•˜๊ธฐ ์œ„ํ•ด ๋จผ์ € HDD์™€ SSD์˜ ์ž‘๋™์›๋ฆฌ์— ๋Œ€ํ•˜์—ฌ ์‚ดํŽด๋ณด์•˜๋‹ค.1. HDD์— ๋Œ€ํ•˜์—ฌ(1) ๊ตฌ์„ฑ์š”์†ŒPlatter(ํ”Œ๋ ˆํ„ฐ)๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ์›ํ˜• ์ž๊ธฐ(magnetic) ๋””์Šคํฌ์‹ค์ œ ๋ฐ์ดํ„ฐ๋ฅผ ๋œปํ•˜๋Š” ์ž์„ฑ๋ฌผ์งˆ๋“ค๋กœ ์™ธ๋ถ€๊ฐ€ ์ฝ”ํŒ…๋˜์–ด ์žˆ์Œ.Spindle(์Šคํ•€๋“ค)๋ชจ๋“  ํ”Œ๋ ˆํ„ฐ๋ฅผ ๊ด€ํ†ต ๋ฐ ๊ณ ์ •ํ•˜๊ณ  ํšŒ์ „์‹œํ‚ค๋Š” ์ถ•ํ”Œ๋ ˆํ„ฐ๋ฅผ ํšŒ์ „์‹œ์ผœ์„œ arm์ด ์‚ฌ์šฉ์ž๊ฐ€ ์›ํ–ˆ๋˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋Š” ์„นํ„ฐ๋ฅผ ์ฝ์„ ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ์—ญํ• Track(ํŠธ๋ž™)ํ”Œ๋ž˜ํ„ฐ ์œ„์— ๋™์‹ฌ์› ๋ชจ์–‘์œผ๋กœ ๋ฐฐ์—ด๋œ ๋ฐ์ดํ„ฐ์˜ ์ €์žฅ ๋‹จ์œ„ํ•˜๋‚˜์˜ ํ”Œ๋ž˜ํ„ฐ์— ์ˆ˜์ฒœ ~ ์ˆ˜๋งŒ ๊ฐœ์˜ ํŠธ๋ž™์ด ์กด์žฌSect..
2025.05.04
Computer Science/๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค