๐Ÿป‍โ„๏ธ์ „๊ณต๊ณต๋ถ€

์ถœ๋ ฅprintf("์ •์ˆ˜: %d \n", 500);printf("์‹ค์ˆ˜: %f \n", 4.5);printf("๋ฌธ์ž: %c \n", 'B');๋ฌธ์ž์—ด ํ™”๋ฉด์— ์ถœ๋ ฅ#include #stdio: standard input outputint main(void){ printf("Hi"); return 0;}๋งจ๋‚  ํŒŒ์ด์ฌ, ์ž๋ฐ”๋งŒ ์“ฐ๋‹ค๋ณด๋‹ˆ ; ๋ถ™์ด๋Š”๊ฒŒ ๋„ˆ๋ฌด ์–ด์ƒ‰ํ•˜๋‹ค. ๊ทธ๋ฆฌ๊ณ  #include ์•ˆ ์“ฐ๊ณ  ์‹ถ๋‹ค...stdio.h -> ์ž…์ถœ๋ ฅํ•จ์ˆ˜ ํฌํ•จ๋จ ์ œ์–ด๋ฌธ์ž๊ฐœํ–‰: \nํƒญ: \t์บ๋ฆฌ์ง€ ๋ฆฌํ„ด(์ถœ๋ ฅ ์œ„์น˜ ์ค„ ๋งจ ์•ž์œผ๋กœ): \r๋ฐฑ์ŠคํŽ˜์ด์Šค: \b#include int main(void){ printf("Hi1\n"); //๊ฐœํ–‰ ์œ„ํ•ด์„  \nํ•„์š” printf("Hi\t2"); //8์นธ ๋„์–ด์“ฐ๊ธฐ ํ•ด์ค€๋‹ค. ..
4ํ•™๋…„ 2ํ•™๊ธฐ์ง€๋งŒ, ์กธ์—…์„ ์œ„ํ•œ ํ•„์ˆ˜ ๊ณผ๋ชฉ์œผ๋กœ C์–ธ์–ด ์ˆ˜์—…์„ ๋“ฃ๊ฒŒ ๋˜์—ˆ๋‹ค...6์‚ด์ด๋‚˜ ์–ด๋ฆฐ ์นœ๊ตฌ๋“ค๊ณผ ์ˆ˜์—…์„ ๋“ฃ๊ฒŒ ๋˜์—ˆ๋‹ค....๋‚ด๊ฐ€ 20์‚ด๋•Œ ์ดˆ๋“ฑํ•™์ƒ..???!!! ์ค‘์š” ์นดํ…Œ๊ณ ๋ฆฌ ์œ„์ฃผ๋กœ ์ •๋ฆฌํ•˜๋ ค ํ•œ๋‹ค.๋ฐ์ดํ„ฐ ์ž…์ถœ๋ ฅ: https://koreatstm.tistory.com/169๋ฐ์ดํ„ฐ ํ‘œํ˜„๋ณ€์ˆ˜์—ฐ์‚ฐ์ž์กฐ๊ฑด๋ฌธif๋ฌธswitch ~ case๋ฌธ๋ฐ˜๋ณต๋ฌธwhile๋ฌธfor๋ฌธdo ~ while๋ฌธ์ค‘์ฒฉ ๋ฐ˜๋ณต๋ฌธํ•จ์ˆ˜๋ฐฐ์—ดํฌ์ธํ„ฐ๋ฌธ์žํ˜•๋ฌธ์ž์—ด๋‹ค์ฐจ์› ๋ฐฐ์—ดํฌ์ธํ„ฐ ๋ฐฐ์—ด์ด์ค‘ ํฌ์ธํ„ฐ๋ฐฐ์—ด ํฌ์ธํ„ฐํ•จ์ˆ˜ ํฌ์ธํ„ฐvoid ํฌ์ธํ„ฐ๋™์  ํ• ๋‹น ํ•จ์ˆ˜๊ตฌ์กฐ์ฒด์—ด๊ฑฐํ˜•ํŒŒ์ผ ์ž…์ถœ๋ ฅ
0. ๋ฉด์ ‘ ์งˆ๋ฌธ์ด์ƒ ํ˜„์ƒ์ด ๋ญ˜๊นŒ์š”?์‚ฝ์ž… ์ด์ƒ(Insertion Anomaly)์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.๊ฐฑ์‹  ์ด์ƒ(Update Anomaly)์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.์‚ญ์ œ ์ด์ƒ(Deletion Anomaly)์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.ํ•จ์ˆ˜ ์ข…์†์„ฑ์ด ๋ฌด์—‡์ธ๊ฐ€์š”?์™„์ „ ํ•จ์ˆ˜์  ์ข…์†์€ ๋ญ”๊ฐ€์š”?๋ถ€๋ถ„ ํ•จ์ˆ˜์  ์ข…์†์€ ๋ญ”๊ฐ€์š”?์ดํ–‰์  ํ•จ์ˆ˜์  ์ข…์†์€ ๋ญ”๊ฐ€์š”?์ •๊ทœํ™”(Normalization)์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.์ œ 1 ์ •๊ทœํ˜•์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.์ œ 2 ์ •๊ทœํ˜•์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.์ œ 3 ์ •๊ทœํ˜•์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.BCNF ์ •๊ทœํ˜•์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.๋ฐ˜์ •๊ทœํ™”์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”. 1. ์ด์ƒ ํ˜„์ƒ๊ฐœ๋…: ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ค๊ณ„ ์‹œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋น„์ •์ƒ์ ์ธ ์ƒํ™ฉ์ฃผ๋กœ ๋น„์ •๊ทœํ™”๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋ฐœ์ƒํ•˜๋ฉฐ, ๋ฐ์ดํ„ฐ์˜ ์‚ฝ์ž…, ๊ฐฑ์‹ , ์‚ญ์ œ ๊ณผ..
ํ›„๊ธฐ: ์ธ๋ฑ์Šค๋Š” real mysql์ด ์ •์„์ด๋ผ๊ณ  ํ•˜์‹ ๋‹ค... ์ฑ… ์ฐธ๊ณ ํ•ด๋ณด์ž0. ๋ฉด์ ‘ ์งˆ๋ฌธ๋žœ๋ค I/O์™€ ์ˆœ์ฐจ I/O์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.์ธ๋ฑ์Šค์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.์ธ๋ฑ์Šค์˜ ๋™์ž‘ ๋ฐฉ์‹์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.์–ด๋–ค ๊ธฐ์ค€์œผ๋กœ ์ธ๋ฑ์Šค๋ฅผ ์„ค์ •ํ•ด์•ผํ• ๊นŒ์š”?ํ…Œ์ด๋ธ”์— ์ธ๋ฑ์Šค๋ฅผ ๋งŽ์ด ์„ค์ •ํ•˜๋ฉด ์ข‹์„๊นŒ์š”?์ปค๋ฒ„๋ง ์ธ๋ฑ์Šค(Covering index)์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.๋‹ค์ค‘ ์ปฌ๋Ÿผ ์ธ๋ฑ์Šค(Multi-column index, ๋ณตํ•ฉ ์ธ๋ฑ์Šค)์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.B-Tree ์ธ๋ฑ์Šค์™€ B+Tree ์ธ๋ฑ์Šค์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.Hash ์ธ๋ฑ์Šค์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.ํด๋Ÿฌ์Šคํ„ฐ๋ง ์ธ๋ฑ์Šค์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.์ธ๋ฑ์Šค ์Šค์บ” ๋ฐฉ์‹์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.์ฟผ๋ฆฌ ์‹คํ–‰ ๊ณ„ํš์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”. ์‹คํ–‰ ๊ณ„ํš์„ ํ™•์ธํ•ด๋ณธ์ ์ด ์žˆ๋‚˜์š”?ํžŒํŠธ์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”..
0. ๋ฉด์ ‘ ์งˆ๋ฌธSQL์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”. C์–ธ์–ด์™€ ๊ฐ™์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์™€ ์–ด๋–ค์ฐจ์ด๊ฐ€ ์žˆ๋‚˜์š”?๊ฐœ๋ฐœ์ž๊ฐ€ ์ž‘์„ฑํ•œ SQL์ด ์–ด๋–ค ๊ณผ์ •์„ ํ†ตํ•ด ์‹คํ–‰ ๋˜๋Š”์ง€ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.DML์€ ๋ฌด์—‡์ธ๊ฐ€์š”? ์–ด๋–ค ๊ตฌ๋ฌธ์ด ์žˆ๋Š”์ง€๋„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.DDL์€ ๋ฌด์—‡์ธ๊ฐ€์š”? ์–ด๋–ค ๊ตฌ๋ฌธ์ด ์žˆ๋Š”์ง€๋„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.DCL์€ ๋ฌด์—‡์ธ๊ฐ€์š”? ์–ด๋–ค ๊ตฌ๋ฌธ์ด ์žˆ๋Š”์ง€๋„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.์ฐธ์กฐ ๋ฌด๊ฒฐ์„ฑ์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.CASCADE ์„ค์ •์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.VIEW์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.SELECT ์ ˆ์˜ ์ฒ˜๋ฆฌ์ˆœ์„œ์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.SELECT ~ FOR UPDATE ๊ตฌ๋ฌธ์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.GROUP BY์ ˆ์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.ORDER BY์ ˆ์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.INNER JOIN๊ณผ OUTER JOIN์˜ ์ฐจ์ด์ ์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.LEFT OUTE..
0. ๋ฉด์ ‘ ์งˆ๋ฌธํŒŒ์ผ์‹œ์Šคํ…œ๊ณผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ฐจ์ด์ ์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ํŠน์ง•์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.DBMS๋Š” ๋ญ˜๊นŒ์š”? ํŠน์ง•์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.์Šคํ‚ค๋งˆ๊ฐ€ ๋ญ˜๊นŒ์š”? 3๋‹จ๊ณ„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ตฌ์กฐ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.๋ฐ์ดํ„ฐ ๋…๋ฆฝ์„ฑ์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.RDBMS(๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ์‹œ์Šคํ…œ)๋Š” ๋ญ˜๊นŒ์š”?๋ฆด๋ ˆ์ด์…˜ ์Šคํ‚ค๋งˆ์™€ ๋ฆด๋ ˆ์ด์…˜ ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.๋ฆด๋ ˆ์ด์…˜์˜ ์ฐจ์ˆ˜์™€ ์นด๋””๋„๋ฆฌํ‹ฐ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.ํ‚ค(Key)์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”. (์Šˆํผํ‚ค, ํ›„๋ณดํ‚ค, ๊ธฐ๋ณธํ‚ค, ๋Œ€๋ฆฌํ‚ค, ์™ธ๋ž˜ํ‚ค)๋ฌด๊ฒฐ์„ฑ ์ œ์•ฝ์กฐ๊ฑด์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”. (๋„๋ฉ”์ธ ๋ฌด๊ฒฐ์„ฑ, ๊ฐœ์ฒด ๋ฌด๊ฒฐ์„ฑ, ์ฐธ์กฐ ๋ฌด๊ฒฐ์„ฑ)์‚ฌ์šฉํ–ˆ๋˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”. (์˜ค๋ผํดDB, MySQL, MariaDB, MongoDB ๋“ฑ) 1. ํŒŒ์ผ์‹œ์Šคํ…œ๊ณผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜..
1. ๋™๊ธฐํ™”(Synchronization)๋ž€ํ˜‘๋ ฅํ•˜์—ฌ ์‹คํ–‰๋˜๋Š” ํ”„๋กœ์„ธ์Šค๋“ค์€ ์‹คํ–‰ ์ˆœ์„œ์™€ ์ž์›์˜ ์ผ๊ด€์„ฑ์„ ๋ณด์žฅํ•ด์•ผ ํ•˜๊ธฐ์— ๋ฐ˜๋“œ์‹œ ๋™๊ธฐํ™” ๋˜์–ด์•ผ ํ•œ๋‹ค.์ฆ‰, ํ”„๋กœ์„ธ์Šค ๋™๊ธฐํ™”๋ž€ ํ”„๋กœ์„ธ์Šค๋“ค ์‚ฌ์ด์˜ ์ˆ˜ํ–‰ ์‹œ๊ธฐ๋ฅผ ๋งž์ถ”๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค.์‹คํ–‰ ์ˆœ์„œ ์ œ์–ด: ํ”„๋กœ์„ธ์Šค๋ฅผ ์˜ฌ๋ฐ”๋ฅธ ์ˆœ์„œ๋Œ€๋กœ ์‹คํ–‰ํ•˜๊ธฐ์ƒํ˜ธ ๋ฐฐ์ œ: ๋™์‹œ์— ์ ‘๊ทผํ•ด์„œ๋Š” ์•ˆ ๋˜๋Š” ์ž์›์— ํ•˜๋‚˜์˜ ํ”„๋กœ์„ธ์Šค๋งŒ ์ ‘๊ทผํ•˜๊ฒŒ ํ•˜๊ธฐ+) ์Šค๋ ˆ๋“œ๋„ ๋™๊ธฐํ™” ๋Œ€์ƒ์ด๋‹ค. 1) ์‹คํ–‰ ์ˆœ์„œ ์ œ์–ด๋ฅผ ์œ„ํ•œ ๋™๊ธฐํ™”๋™์‹œ์— ์‹คํ–‰๋˜๋Š” ํ”„๋กœ์„ธ์Šค๋ฅผ ์˜ฌ๋ฐ”๋ฅธ ์ˆœ์„œ๋Œ€๋กœ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ2) ์ƒํ˜ธ ๋ฐฐ์ œ๋ฅผ ์œ„ํ•œ ๋™๊ธฐํ™”์ƒํ˜ธ๋ฐฐ์ œ๋Š” ๊ณต์œ  ๋ถˆ๊ฐ€๋Šฅํ•œ ์ž์›์˜ ๋™์‹œ ์‚ฌ์šฉ์„ ํ”ผํ•˜๊ธฐ ์œ„ํ•œ ๊ฒƒ. e.g. ์ƒ์‚ฐ์ž-์†Œ๋น„์ž ๋ฌธ์ œ  2. ๋ฐฐ๊ฒฝ์ƒ์‚ฐ์ž-์†Œ๋น„์ž ๋ฌธ์ œ์—์„œ ์ƒ์‚ฐ์ž์™€ ์†Œ๋น„์ž ํ”„๋กœ์„ธ์Šค๋Š” ๊ณต์œ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ด์šฉํ•˜์—ฌ ๊ณตํ†ต๋œ ๋ณ€์ˆ˜์™€ ๋ฒ„ํผ๋ฅผ ๊ณต์œ ํ•œ๋‹ค. ๊ฐ๊ฐ์˜ ํ”„..
1. ์Šค์ผ€์ค„๋ง ๊ฐœ๋…: ๋‹ค์ค‘ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ๋ชฉ์ ์€ ํ•ญ์ƒ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ์„ธ์Šค๊ฐ€ ์žˆ๋„๋ก ํ•˜์—ฌ CPU ์‚ฌ์šฉ ํšจ์œจ์„ ๊ทน๋Œ€ํ™” ํ•˜๋Š”๋ฐ ์žˆ๋‹ค. CPU - I/O ๋ฒ„์ŠคํŠธ ์ฃผ๊ธฐํ”„๋กœ์„ธ์Šค๋Š” ์‹คํ–‰๋˜๋Š” ๋™์•ˆ CPU ์‹คํ–‰๊ณผ ์ž…์ถœ๋ ฅ ๋Œ€๊ธฐ๋ผ๋Š” ๋‘ ์ฃผ๊ธฐ๋ฅผ ๋ฐ˜๋ณตํ•œ๋‹ค.๊ณ„์‚ฐ ์ค‘์‹ฌ ํ”„๋กœ์„ธ์Šค์˜ ๊ฒฝ์šฐ ์ ์€ ์ˆ˜์˜ ๋งค์šฐ ๊ธด CPU ๋ฒ„์ŠคํŠธ๋ฅผ ๊ฐ€์ง€๋ฉฐ, ์ž…์ถœ๋ ฅ ์ค‘์‹ฌ ํ”„๋กœ์„ธ์Šค๋Š” ๋งŽ์€ ์ˆ˜์˜ ์งง์€ CPU ๋ฒ„์ŠคํŠธ๋ฅผ ๊ฐ€์ง„๋‹ค. CPU ์Šค์ผ€์ค„๋ŸฌCPU๊ฐ€ ์œ ํœด ์ƒํƒœ๊ฐ€ ๋˜๋ฉด ์ค€๋น„์™„๋ฃŒ ํ์— ์žˆ๋Š” ํ”„๋กœ์„ธ์Šค๋ฅผ ํ•˜๋‚˜ ์„ ํƒํ•ด์„œ ์‹คํ–‰ํ•œ๋‹ค. ์ด ์„ ํƒ์€ ๋‹จ๊ธฐ ์Šค์ผ€์ค„๋Ÿฌ๊ฐ€ ํ•œ๋‹ค.CPU ์Šค์ผ€์ค„๋ง์— ๋Œ€ํ•œ ๊ฒฐ์ •์€ 4๊ฐ€์ง€ ์ƒํ™ฉ์—์„œ ์ผ์–ด๋‚œ๋‹ค. 1. ํ•œ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‹คํ–‰ ์ƒํƒœ์—์„œ ๋Œ€๊ธฐ ์ƒํƒœ๋กœ ์ „ํ™˜๋  ๋•Œ(์ž…์ถœ๋ ฅ ์š”์ฒญ, ์ž์‹ ํ”„๋กœ์„ธ์Šค๋“ค ์ค‘ ํ•˜๋‚˜๊ฐ€ ์ข…๋ฃŒ๋˜๋Š”๊ฒƒ์„ ๊ธฐ๋‹ค๋ฆฌ๊ธฐ ์œ„ํ•ด wait๋ฅผ ํ˜ธ์ถœํ•  ๋•Œ)2. ํ”„..
๊ณ„๋ž€์†Œ๋…„
'๐Ÿป‍โ„๏ธ์ „๊ณต๊ณต๋ถ€' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก (2 Page)