๋น ๋ฐ์ดํฐ ์ ์ฅ ๋ฐ ๋ถ์์ ์ํ NoSQL&Redis4 [๋น ๋ฐ์ดํฐ ์ ์ฅ ๋ฐ ๋ถ์์ ์ํ NoSQL & Redis] Chapter 5 - Redis ์ํคํ ์ฒ 5.1 Redis ์ํคํ ์ฒ 1. ๋ฉ๋ชจ๋ฆฌ ์์ญ Resident Area ์ฌ์ฉ์์ ์์ ์ด ๋จผ์ ์ ์ฅ๋๋ ์์ญ ์ค์ ์์ ์ํ ๊ณต๊ฐ "WorkingSet" ์์ญ์ผ๋ก๋ ํํ Data Structure ์ํ ์ ๋ณด ์ ์ฅ์ ์ํ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ Redis Server ์ด์ ๋ฐ ๋ชจ๋ํฐ๋ง์ ํ์ 2. ํ์ผ ์์ญ AOF ํ์ผ ์ค์ํ ๋ฐ์ดํฐ ์ง์ ์ ์ฅ ์ค๋ ์ท ๋ฐ์ดํฐ DUMP ํ์ผ ์๋ ๋ฐ์ดํฐ ์ผ์์ ์ ์ฅ 3. ํ๋ก์ธ์ค ์์ญ Server Process Redis ์ธ์คํด์ค ๊ด๋ฆฌ ๋ฐ ์ฌ์ฉ์ ์์ ์ํ 4๊ฐ์ ๋ฉํฐ ์ฐ๋ ๋๋ก ๊ตฌ์ฑ Main thread, Sub thread 1(BIO-Close-File), Sub thread 2(BIO-AOF-Resync), Sub thread 3(BIO-Lazy-Free) Client Process .. 2023. 8. 20. [๋น ๋ฐ์ดํฐ ์ ์ฅ ๋ฐ ๋ถ์์ ์ํ NoSQL & Redis] Chapter 4 - Redis Data Modeling 4.1 ํค-๋ฐธ๋ฅ(Key-Value) ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง ๊ฐ๋ 4.1.1 ์ฉ์ด ์ค๋ช ํ ์ด๋ธ(Table): ๊ด๊ณํ DB์์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๋ ผ๋ฆฌ์ ๊ตฌ์กฐ๋ฅผ ํ ์ด๋ธ(table)์ด๋ผ๊ณ ํํํ๋ ๊ฒ์ฒ๋ผ Key-Value DB์์๋ ํ ์ด๋ธ(Table)์ด๋ผ๊ณ ํจ. ํ๋(Field) ๋๋ ์๋ฆฌ๋จผํธ(Element): ํ๋์ ํ ์ด๋ธ์ ๊ตฌ์ฑํ๊ณ ์๋ ์์๋ค์ ๊ด๊ณํ DB์์๋ ์ปฌ๋ผ(column)์ด๋ผ๊ณ ํ๋๋ฐ Key-Value DB์์๋ ํ๋(Field) ๋๋ ์๋ฆฌ๋จผํธ(Element)๋ผ๊ณ ๋งํจ. Key-Value DB์์๋ ํ๋์ Key์ ํ๋ ์ด์์ ํ๋ ๋๋ ์๋ฆฌ๋จผํธ๋ก ๊ตฌ์ฑ๋จ. Key-Value DB์์๋ ์ ์ฝ ์กฐ๊ฑด ๊ธฐ๋ฅ์ด ์ ๊ณต๋์ง ์์ง๋ง, HyperLogLogs ๋ฐ์ดํฐ ์์ฑ์ ํตํด ์ํ๋ ์กฐ๊ฑด์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅ, ๊ด๋ฆฌํ ์ ์.. 2023. 8. 20. [๋น ๋ฐ์ดํฐ ์ ์ฅ ๋ฐ ๋ถ์์ ์ํ NoSQL & Redis] Chapter 3 - ํธ๋์ญ์ ์ ์ด & ์ฌ์ฉ์ ๊ด๋ฆฌ 3.1 Isolation & Lock ๋ชจ๋ NoSQL ์ ํ์ด ํธ๋์ญ์ ์ ์ ์ดํ์ง๋ ์์ง๋ง, Redis๋ ํธ๋์ญ์ ์ ์ด ๊ฐ๋ฅ. Redis๋ Read Commited ํ์ ์ ํธ๋์ญ์ ์ ์ด๋ ๊ฐ๋ฅํจ. Redis 4.0 ๋ฒ์ ์์ Data Sets ๋ฝ ๋งค์ปค๋์ฆ ์ ๊ณต. 3.2 CAS (Check and Set) CAS๋ ๋ฐ์ดํฐ ์ผ๊ด์ฑ ๊ณต์ ๋ฅผ ์ํ ๊ธฐ์ ๋ก ๋์ ์ฒ๋ฆฌ ์ ์ถฉ๋์ ํผํจ. Watch ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ถฉ๋ ๊ฐ์ง ๊ฐ๋ฅ. 3.3 commit & rollback EXEC: ๋ณ๊ฒฝํ ๋ฐ์ดํฐ ์ต์ข ์ ์ฅ์ ์ฌ์ฉ. DISCARD: ๋ณ๊ฒฝํ ๋ฐ์ดํฐ ์ต์ข ์ ์ฅํ์ง ์๊ณ ์ทจ์. 3.4 Index ์ ํ ๋ฐ ์์ฑ Redis๋ Primary Key Index์ Secondary Key Index๋ฅผ ์ ๊ณต. Exact Match์ Ra.. 2023. 8. 20. [๋น ๋ฐ์ดํฐ ์ ์ฅ ๋ฐ ๋ถ์์ ์ํ NoSQL & Redis] Chapter 2 - Redis ์ค์น ๋ฐ ๋ฐ์ดํฐ ์ฒ๋ฆฌ Redis์ ์ฃผ์ ํน์ง Redis๋ NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ๋ถ๋ฅ๋๋ฉฐ Key-Value ํํ๋ก ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํฉ๋๋ค. Key-Value DB์ธ ๋์์ In-Memory ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ ์ฅ ๊ธฐ์ ์ ์ ๊ณตํ๋ฏ๋ก ๋น ๋ฅธ Read/Write ์ฑ๋ฅ์ ๊ฐ์ง๊ณ ์์ต๋๋ค. ๋ค์ํ ๋ฐ์ดํฐ ์ ํ์ ์ง์ํ๋ฉฐ String, Set, Sorted Set, Hash, List, HyperLogLogs ๋ฑ์ ์ ์ฅํ ์ ์์ต๋๋ค. ๋ฉ๋ชจ๋ฆฌ ์์ ๋ฐ์ดํฐ๋ฅผ Dump ํ์ผ๊ณผ AOF(Append Of File) ๋ฐฉ์์ผ๋ก ๋์คํฌ์ ์ ์ฅํ ์ ์์ต๋๋ค. Master/Slave Replication์ ํตํด ๋ฐ์ดํฐ์ ๋ถ์ฐ ๋ณต์ ๋ฅผ ์ง์ํ๋ฉฐ Query Off Loading์ ํตํด Master๋ Read/Write ์์ , Slave๋ Read ์์ ์ ์ํํ .. 2023. 8. 20. ์ด์ 1 ๋ค์ ๋ฐ์ํ