β¨ Row vs Column Oriented DB
λ§ κ·Έλλ‘ ν μ€μ¬ DB μ μ΄ μ€μ¬ DB μ μ°¨μ΄λ₯Ό λ Όνλ μ£Όμ μ΄λ€.
μΈλ» 보기μλ λ³ μ°¨μ΄κ° μμ΄ λ³΄μΌ μ μμΌλ©°, ν μ΄λΈλ‘ ꡬμ±λ DB μ€ν€λ§λ₯Ό λ μ¬λ¦΄ μ μλ€λ μ μμ μ€νλ € κ°μ 보μ΄κΈ°λ νλ€. κ·Έλ¬λ λ°μ΄ν°μ μ΄μ κ΄λ¦¬ λ¨μλ₯Ό νμΌλ‘ λλμ§ μ΄λ‘ λλμ§μ λ°λΌ μꡬλλ μλ²μ μ±λ₯ λλ λμμ μ°¨μ΄κ° λ§μ΄ λκΈ°λ νλ€. κ·Έλ κΈ° λλ¬Έμ μ΄ λμ λͺ νν ꡬλΆλμ΄μΌ νλ κ°λ μ΄λ€.
Row-oriented DB μ Column-oriented DB (λλ Columnar, C-Store DB)λ RDBMS (κ΄κ³ν λ°μ΄ν°λ² μ΄μ€) λ₯Ό κ΄λ¦¬νλ λ κ°μ§ λ°©λ²μ΄λ€. μ½κ² νννμλ©΄ μ μλ λ μ½λ (ν) μΌλ‘ κ΄λ¦¬λλ λ°μ΄ν°λ² μ΄μ€μ΄λ©°, νμλ μ΄λ‘ κ΄λ¦¬λλ λ°μ΄ν°λ² μ΄μ€μ΄λ€.
μ΄ λμ ꡬλΆνλ μ£Όμ νΉμ±μ λ°μ΄ν° μ μ₯ λ°©μμ μλ€.
β¨ Row Oriented DB
Row-oriented DB μμ κ° λ°μ΄ν°λ λ μ½λ λ¨μλ‘ κΈ°λ‘λλ©°, λ©λͺ¨λ¦¬ μ λ μ½λλΌλ¦¬ μνμ μΌλ‘ μ μ₯λλ€.
κ°λ Ή, μ΄λ° λ°μ΄ν°κ° μλ€κ³ νμ:
μ μ μ μΆμ λμμ λμ΄λ₯Ό λ΄μ ν μ΄λΈμ΄λ€.
κ°λ³ μ μ κ° λ³ΈμΈμ μ 보λ₯Ό λ±λ‘νμ¬ μλ‘μ΄ λ μ½λκ° μμ±λ λλ§λ€, λ°μ΄ν°λ κΈ°μ‘΄ λ°μ΄ν°μ 맨 λμ μΆκ°λλ λ°©μμ΄λ€.
μ΄λ¬ν λ°©μμΌλ‘ λ°μ΄ν°λ₯Ό μ μ₯νλ DB λ λνμ μΌλ‘ Postgres, MySQL λ±μ΄λ©°,
μ΄λ¬ν DBMS λ μ ν΅μ μΈ λ°©λ²μ΄κΈ°λ νμ§λ§ ν λ¨μμ λ°μ΄ν°λ₯Ό μ½λ λ° μ΅μ ν λμ΄ μλ€.
β¨ Row Oriented DB : μ₯μ
λ°μ΄ν°μ λμ νμ μΆκ°νκΈ°λ§ νλ©΄ λκΈ° λλ¬Έμ μ μ₯ μλκ° λΉ λ₯΄λ€.
λν, OLTP (Online transactional Processing) μ€νμΌ μ ν리μΌμ΄μ μ μ΅μ ν λμ΄ μλ€.
β¨ Row Oriented DB : λ¨μ
ν λ¨μ λ°μ΄ν°λ₯Ό λΆλ¬μ€λ μλλ λΉ λ₯΄λ, λ°μ΄ν° κ°μ μ§ν©μ λ§λλ κ²½μ° (aggregation) μλ μ ν νμμ΄ λ°μνλ€. νμν κ² μ΄μμ λ°μ΄ν°λ₯Ό λΆλ¬μ€κΈ° λλ¬Έμ΄λ€. κ°λ Ή, μμ μμμμ μ μ μ νκ· λμ΄λ₯Ό ꡬνκ³ μ ν κ²½μ°, λ°μ΄ν° μ‘°κ° 9κ°λ₯Ό μ λΆ λΆλ¬λ€μΈ λ€ νκ· ν¨μ μ μ©μ νκ² λλ€. μ΄λ λΆνμν μ°μ° μκ°μ μ΄λνλ©°, κ°νΈν μ λ ₯μ λΉν΄ μΆλ ₯νλ κ³Όμ μ΄ νμ μ΄μμ λ©λͺ¨λ¦¬ μλͺ¨λ₯Ό μ λ°νλ€.
β¨ Column Oriented DB
Column-oriented DB μμ κ° λ°μ΄ν°λ νλ λ¨μλ‘ κΈ°λ‘λλ©°, λ©λͺ¨λ¦¬ μ νλλΌλ¦¬ μνμ μΌλ‘ μ μ₯λλ€.
κ°λ Ή, μμ μμμ κ²½μ°, λ°μ΄ν°λ μ΄λ° λ°©μμΌλ‘ μ μ₯λλ€ :
μ΄λ¬ν λ°©μμΌλ‘ λ°μ΄ν°λ₯Ό μ μ₯νλ DB λ λνμ μΌλ‘ Redshift, BigQuery, Snowflake λ±μ΄λ€.
β¨ Column Oriented DB : μ₯μ
λ°μ΄ν° 쿼리λ₯Ό ν λ μ±λ₯μ΄ λ μ’μ κ²½μ°κ° μλ€.
OLAP (Online Analytical Processing) μ€νμΌ μ©λμ μ΅μ ν λμ΄ μλ€.
λ°μ΄ν° μ§ν©μ λ§λλ κ²½μ° μΆκ° λ©λͺ¨λ¦¬ μλͺ¨ μμ΄ νμν κ²°κ³Όλ₯Ό μΆλ ₯ν μ μμΌλ©°, μ΄μ λ°λΌ μ±λ₯μ΄ ν¬κ² ν₯μλλ€.
β¨ Column Oriented DB : λ¨μ
λͺ¨λ λ°μ΄ν°κ° κ°μ λ©λͺ¨λ¦¬ 곡κ°μ μ μ₯λ κ²½μ°, κ° μ΄μ λ§μ§λ§ λ°μ΄ν°μ μμΉλ₯Ό μ‘°ννμ¬ μμ μΆκ°ν΄μΌ νκΈ° λλ¬Έμ λ©λͺ¨λ¦¬ μ 체λ₯Ό μ‘°νν΄μΌ νλ€. κ·Έλ¬λ μ΄ λΆλΆμ μ΄λ§λ€ μ μ₯λλ λ©λͺ¨λ¦¬ 곡κ°μ λΆλ¦¬ν¨μΌλ‘μ¨ ν΄κ²° κ°λ₯νλ€.
β¨λ§λ¬΄λ¦¬
λ°μ΄ν° λͺ¨λΈλ§μ ν λ λ¨μν SQL/NoSQL μ€μμ μμνμΌ ν κ²μ΄ μλλΌ, μλΉμ€μ μΈλΆμ μΈ νμμ μꡬμ¬νμ λ°λΌ ꡬ체μ μΈ μ€κ³λ₯Ό ν μ μλ€. κ΄κ³ν λ°μ΄ν°λ² μ΄μ€μ κ²½μ°, κ·Έ 첫 κ±Έμμ΄ row/column oriented db κ° λ μ μμ κ²μ΄λ€.
β¨μ°Έκ³ μλ£
'π» DEV > Database' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Database] Redis Vs Memcached (0) | 2021.08.10 |
---|---|
[Database] Express/NodeJS μμ Redis μ¬μ©νκΈ° (0) | 2021.07.18 |
[Database] μ€λ©(Sharding) μ΄λ? (0) | 2021.07.14 |
[Database] DB ν¨λ¬λ€μ (Paradigm) μ΄λ? (0) | 2021.07.08 |
[Database] κ΄κ³ν λ°μ΄ν°λ² μ΄μ€(RDBMS) μ SQL (0) | 2021.01.05 |
λκΈ