๋ถ์ฐ KVS
Amazon DynamoDB
์์ด๋ ์ปฌ๋ผ ์คํ ์ด
row key์ column์ ์กฐํฉ์ ์ ์ฅํ๋ ๋ฐฉ์์ผ๋ก dynamic columns๋ฅผ ์ ์ฅํ๋ NoSQL ๋ฐ์ดํฐ ์ ์ฅ์
dynamic columns๋ ๊ฐ์ ํ ์ด๋ธ์ด๋ผ๋ row ๋ณ๋ก column ์ด๋ฆ๊ณผ ํฌ๋งท์ด ๋ค๋ฅผ ์ ์์์ ์๋ฏธํจ
column์ ๊ทธ๋ฃนํํ column family ๊ฐ๋ ์ ์ ๊ณตํ๊ธฐ๋ ํ๋๋ฐ, ํจ๊ป ์ ์ฅ๋๋ฏ๋ก ํจ๊ป ๋ง์ด ์ฌ์ฉ๋๋ column์ ๊ทธ๋ฃนํํด์ผ ํจ
Apache Cassandra
๋ถ์ฐํ ์์ด๋ ์ปฌ๋ผ ์คํ ์ด (์คํ์์ค)
TBD
๋ํ๋จผํธ ์คํ ์ด
JSON ๊ฐ์ ๋ณต์กํ ์คํค๋ง๋ฆฌ์ค ๋ฐ์ดํฐ๋ฅผ ๊ทธ๋๋ก ์ ์ฅํ๊ณ ์ฟผ๋ฆฌํ ์ ์๋ NoSQL ๋ฐ์ดํฐ ์ ์ฅ์
RDBMS์ฒ๋ผ ๋น ๋ฅธ ๊ฒ์์ ์ํ ์ธ๋ฑ์ค๋ ์์ผ๋ฉฐ,
๋น์ทํ ๋ํ๋จผํธ๋ฅผ ํจ๊ป ์ ์ฅํ๊ฑฐ๋ (Embedding) ๋ ํผ๋ฐ์ค ํด๋์ด (Linking) Join์ ์ค์ผ ์ ์์
(+) ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ ์ฐ์ฑ
MongoDB
๋ถ์ฐํ ๋ํ๋จผํธ ์คํ ์ด (์คํ์์ค)
BSON (Binary JSON) ํ์์ผ๋ก JSON ๊ฐ์ ์คํค๋ง๋ฆฌ์ค ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํจ
# JSON
{
"name": "John",
"age": 30,
"city": "New York"
}
# BSON
\x16\x00\x00\x00 // BSON ๋ฌธ์์ ์ ์ฒด ๊ธธ์ด
\x02 // ๋ฌธ์์ด ๋ฐ์ดํฐ ํ์
name\x00 // ํ๋ ์ด๋ฆ ("name")
\x05\x00\x00\x00John\x00 // ๋ฌธ์์ด ๊ฐ ("John")
\x10\x00\x00\x00 // 32-bit ์ ์ ๋ฐ์ดํฐ ํ์
age\x00 // ํ๋ ์ด๋ฆ ("age")
\x1e\x00\x00\x00 // ์ ์ ๊ฐ (30)
\x02 // ๋ฌธ์์ด ๋ฐ์ดํฐ ํ์
city\x00 // ํ๋ ์ด๋ฆ ("city")
\x08\x00\x00\x00New York\x00 // ๋ฌธ์์ด ๊ฐ ("New York")
\x00 // BSON ๋ฌธ์์ ์ข
๋ฃ๋ฅผ ๋ํ๋ด๋ ๋ง์ง๋ง ๋ฐ์ดํธ
'Data Engineering' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Windows 11์์ Docker Desktop์ผ๋ก pyspark-notebook ์ธํ ํ๊ธฐ (3) | 2024.10.01 |
---|---|
Greenplum Database์ Architecture (0) | 2023.11.10 |
๋ฐ์ ๊ทํ (์๋ฏธ, ๋ชฉ์ , ๋์, ๋ฐฉ๋ฒ) (0) | 2023.11.10 |
๋ฐ์ดํฐ ์์ง๋์ด๋ง (0) | 2021.12.20 |
GPDB (vs. PostgreSQL, Architecture, Query) (0) | 2021.05.16 |
๋๊ธ