๐Ÿ–ฅ๏ธSW Engineer/Distributed System

    [ADV_db]Chap 3. Indexing

    # Basic Concept Index File(Index entries) ์ด๋Ÿฐ Index File์€ ๋” ๋น ๋ฅธ ๊ฒ€์ƒ‰์„ ์œ„ํ•ด ์‚ฌ์šฉ๋œ๋‹ค. ๋”ฐ๋ผ์„œ ๊ฒ€์ƒ‰ ํ‚ค์™€ ํฌ์ธํ„ฐ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , ์›๋ณธ ํŒŒ์ผ๋ณด๋‹ค๋Š” ์šฉ๋Ÿ‰์ด ์ž‘๋‹ค. ๋˜ํ•œ, ์—ฌ๋Ÿฌ ๊ฒ€์ƒ‰ ํ‚ค๋งˆ๋‹ค ์—ฌ๋Ÿฌ ์ธ๋ฑ์Šค๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค. Search Key ์—ฌ๊ธฐ์„œ ๋งํ•˜๋Š” Search Key๋Š” ๊ทธ๋™์•ˆ ๋ฐฐ์› ๋˜ primary key,Candidate key,super key์™€๋Š” ๋‹ค๋ฅธ ๊ฐœ๋…์ด๋‹ค. ํ•˜๋‚˜ ์ด์ƒ์˜ ์†์„ฑ์œผ๋กœ ๊ตฌ์„ฑ๋  ์ˆ˜ ์žˆ๋‹ค. ์ธ๋ฑ์Šค ํŒŒ์ผ์—๋Š” ์—ฌ๋Ÿฌ ์ข…๋ฅ˜์˜ ๊ฒ€์ƒ‰ ํ‚ค์— ๋Œ€ํ•œ ์ธ๋ฑ์Šค๊ฐ€ ์กด์žฌํ•  ์ˆ˜ ์žˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ฑ…์„ ๊ณ ๋ฅผ ๋•Œ ์ž‘๊ฐ€,์ถœํŒ์‚ฌ,์ฃผ์ œ,์ œ๋ชฉ ๋“ฑ์œผ๋กœ ์ธ๋ฑ์Šค๋ฅผ ๋‘˜ ์ˆ˜ ์žˆ๋Š” ๊ฑฐ์ฒ˜๋Ÿผ ๋ง์ด๋‹ค. Index์˜ ๊ธฐ๋ณธ์ ์ธ ์ข…๋ฅ˜ Ordered Indices Search Key์— ๋”ฐ๋ผ ์ •๋ ฌ๋œ..

    [ADV_db]Chap 2. ๋ฐ์ดํ„ฐ ์ €์žฅ ์žฅ์น˜ ๊ตฌ์กฐ-2

    # ๋ ˆ์ฝ”๋“œ ์ €์žฅ ๋ฐฉ๋ฒ• Heap File Organization ๋นˆ ๊ณต๊ฐ„์— ์–ด๋””๋“  ์ €์žฅํ•˜๋Š” ๋ฐฉ์‹ ํ•œ๋ฒˆ ํ• ๋‹น๋ฐ›์•„์„œ ์ €์žฅ๋œ ๋ ˆ์ฝ”๋“œ๋“ค์€ ์›€์ง์ด์ง€ ์•Š๋Š”๋‹ค. ์ค‘์š”ํ•œ ๋ฌธ์ œ๋Š” Free Space๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์ฐพ๋Š” ๋ฐฉ๋ฒ• Free-Space Map ํŒŒ์ผ์˜ ๋ธ”๋ก ์ค‘์— ๋นˆ๊ณณ์„ ํ‘œ์‹œํ•ด์ฃผ๋Š” ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ ๋งŒ์•ฝ ํ•˜๋‚˜์˜ ๋ธ”๋ก์ด 3bit๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค๊ณ  ํ•œ๋‹ค๋ฉด, ๊ฐ ๋ธ”๋ก์„ 8๋กœ ๋‚˜๋ˆ„๋ฉด ๋น„์–ด์žˆ๋Š” ๊ณณ์ด ์–ผ๋งˆ๋‚˜ ์žˆ๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ๋‹ค. Second-Level Free Space Map ๊ฐ ์—”ํŠธ๋ฆฌ๊ฐ€ First-level Space Map์˜ 4๊ฐœ์”ฉ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค๋ฉด ๊ทธ ์ค‘ ์ตœ๋Œ€๊ฐ’๋งŒ์„ ์ด์šฉํ•˜์—ฌ ๋นˆ๊ณณ์„ ํƒ์ƒ‰ํ•˜๋Š” ์‹œ๊ฐ„์„ ๋”์šฑ ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค. Sequential File Organization Search-Key๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ •๋ ฌํ•˜์—ฌ ํŒŒ์ผ์— ๋ ˆ์ฝ”๋“œ๋ฅผ ์ €์žฅํ•œ๋‹ค...

    [ADV_db]Chap 2. ๋ฐ์ดํ„ฐ ์ €์žฅ ์žฅ์น˜ ๊ตฌ์กฐ

    # ํŒŒ์ผ ๊ตฌ์„ฑ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ํŒŒ์ผ๋“ค๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , ๊ฐ ํŒŒ์ผ๋“ค์„ ์—ฌ๋Ÿฌ ๋ ˆ์ฝ”๋“œ๋“ค๋กœ ๊ตฌ์„ฑ๋œ๋‹ค. ๋ ˆ์ฝ”๋“œ๋Š” ์—ฌ๋Ÿฌ ์—ฐ์†์ ์ธ ํ•„๋“œ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค. ์ด ๋•Œ, ํŒŒ์ผ์˜ ๋ ˆ์ฝ”๋“œ์˜ ์‚ฌ์ด์ฆˆ๋Š” ๊ณ ์ •๋˜์–ด ์žˆ๊ณ , ๋ ˆ์ฝ”๋“œ๋Š” ๋””์Šคํฌ ๋ธ”๋ก๋ณด๋‹ค ์ž‘๋‹ค๊ณ  ๊ฐ€์ •ํ•ด๋ณด์ž. ERROR 1 ๊ทธ๋ ‡๋‹ค๋ฉด ์ด๋Ÿฐ์‹์œผ๋กœ ํŒŒ์ผ์ด ์ด๋ฃจ์–ด์ ธ์žˆ์„ ๊ฒƒ์ด๋‹ค. ์ด ๋•Œ ๊ฐ ๋ ˆ์ฝ”๋“œ์˜ ํฌ๊ธฐ๋ฅผ 170kb๋ผ๊ณ  ํ•˜๊ณ  ๋ธ”๋ก์˜ ํฌ๊ธฐ๋ฅผ 512kb๋ผ๊ณ  ํ•˜๋ฉด,ํ•œ ๋ธ”๋ก ๋‹จ์œ„๋กœ ์ €์žฅํ•  ๋•Œ 2kB์”ฉ "Cross Block Boundaries"์ฆ‰ ๋ ˆ์ฝ”๋“œ์˜ ์ผ๋ถ€๋ถ„์„ ์ž˜๋ผ์•ผ ํ•˜๋Š” ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธด๋‹ค. ์ด๋Ÿฐ ๊ฒฝ์šฐ ๋ธ”๋ก ์‚ฌ์ด์ฆˆ๋ฅผ ๋ชจ๋‘ ์ฑ„์šฐ์ง€ ์•Š๊ณ , ์˜จ์ „ํ•œ ์ƒํƒœ์˜ ๋ ˆ์ฝ”๋“œ๋“ค๋กœ ์ฑ„์šด ํ›„ ์ง„ํ–‰ํ•ด์•ผ ํ•œ๋‹ค. ERROR 2 ์ค‘๊ฐ„์˜ ๋ ˆ์ฝ”๋“œ๊ฐ€ ์‚ญ์ œ๋œ ๊ฒฝ์šฐ, ์ € ๋ถ€๋ถ„์„ ์ฑ„์šฐ๊ธฐ ์œ„ํ•ด ๋’ค์— ์žˆ๋Š” ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ์นธ์”ฉ ์ด๋™ํ•œ๋‹ค๋ฉด,..

    [ADV_db]Chap 1. ๋ฌผ๋ฆฌ์  ์ €์žฅ ์žฅ์น˜ ์‹œ์Šคํ…œ-2

    # ํ”Œ๋ž˜์‹œ ๋ฉ”๋ชจ๋ฆฌ NOR Flash NAND Flash ์ฃผ๋กœ ์ €์žฅ์žฅ์น˜๋กœ ์‚ฌ์šฉ๋œ๋‹ค NOR Flash ๋ณด๋‹ค ์‹ธ๋‹ค Read ํ•œ ๋ฒˆ ์‹คํ–‰๋  ๊ฒฝ์šฐ Page(๋ณดํ†ต 4kb)๋งŒํผ ์ฝ์–ด์˜จ๋‹ค. ์“ฐ๊ธฐ๋ณด๋‹ค ๋น ๋ฅด๋‹ค. ์ˆœ์ฐจ์  ์ ‘๊ทผ๊ณผ ์ž„์˜ ์ ‘๊ทผ์˜ ํฐ ์ฐจ์ด๊ฐ€ ์—†๋‹ค. ๋””์Šคํฌ๋ณด๋‹ค ํ›จ์”ฌ ๋น ๋ฅด๊ณ , Write๋‚˜ Erase๋ณด๋‹ค๋„ ๋น ๋ฅด๋‹ค. Write ํ•œ๋ฒˆ ์“ฐ์—ฌ์ง„ ๊ณณ์€ ๋ฎ์–ด์“ฐ์ง€ ๋ชปํ•˜๊ธฐ ๋•Œ๋ฌธ์— Erase๊ฐ€ ์‹คํ–‰๋œ ํ›„ ๋‹ค์‹œ ์“ธ ์ˆ˜ ์žˆ๋‹ค. Erase ์ฝ๊ณ  ์“ฐ๋Š” ๊ณผ์ •์€ ๋ชจ๋‘ Page๋‹จ์œ„๋กœ ์ด๋ฃจ์–ด ์ง€์ง€๋งŒ, ์ง€์šฐ๋Š” ๊ณผ์ •์€ 128-256๊ฐœ ์ •๋„์˜ Page๋กœ ์ด๋ฃจ์–ด์ง„ Block ๋‹จ์œ„๋กœ ์ง„ํ–‰๋œ๋‹ค. ์ง€์šฐ๋Š” ํšŸ์ˆ˜๋Š” ์ œํ•œ๋˜์–ด ์žˆ์–ด ์ด๋ฅผ ๋„˜์œผ๋ฉด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค. ํŠน์ • ๋ธ”๋ก๋งŒ Erase๊ฐ€ ๋งŽ์ด ์ผ์–ด๋‚˜์ง€ ์•Š๋„๋ก Wear-Leveling์ด๋ผ๋Š” ํ‰๋“ฑํ™” ์ž‘์—…์„ ํ•œ๋‹ค. ์ฝ..

    [ADV_db]Chap 1. ๋ฌผ๋ฆฌ์  ์ €์žฅ ์žฅ์น˜ ์‹œ์Šคํ…œ

    # ์ €์žฅ ์žฅ์น˜ ๊ฐœ์š” Volatile Primary storage ๋ฐ”์ดํŠธ ๋‹จ์œ„์˜ ๋žœ๋ค ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ์บ์‹œ ๋ฉ”๋ชจ๋ฆฌ ๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ Non-Volatile ๋ธ”๋ก ๋‹จ์œ„์˜ ์—ฐ์†์ ์ธ ์ ‘๊ทผ๋งŒ ๊ฐ€๋Šฅํ•˜๋‹ค. Secondary storage(on-line storage) ํ”Œ๋ž˜์‹œ ๋ฉ”๋ชจ๋ฆฌ Magnetic-disk Tertiary storage(off-line storage) Optical storage Tape storage ์ €์žฅ์žฅ์น˜๋ฅผ ๊ณ ๋ฅด๋Š” ์š”์†Œ ์Šคํ”ผ๋“œ ๊ฐ€๊ฒฉ Reliability(์ €์žฅ ์‹ ๋ขฐ์„ฑ) # ์ €์žฅ ์ธํ„ฐํŽ˜์ด์Šค ํ‘œ์ค€ ๋””์Šคํฌ ์ธํ„ฐํŽ˜์ด์Šค SATA SAS NVme SAN NAS # ํ•˜๋“œ ๋””์Šคํฌ ๋งค์ปค๋‹ˆ์ฆ˜ Platter๋ณ„๋กœ 50K-100K๊ฐœ ์ •๋„์˜ Track์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  Track๋ณ„๋กœ ์ฝ๊ณ  ์“ธ ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ์ž‘์€ ๋‹จ์œ„์ธ ..