Data Modeling
- 데이터가 어떻게 저장되고 하는지에 대해 [생각 -> 논리 -> 구현] 순으로 따져봐야함
- 하지만 반복하여 위 프로세스를 진행해야하며 구현 다음에 다시 생각을 해서 구현을 고칠줄도 알아야함
- 중요성: 데이터 분석가/과학자가 데이터를 편하고 잘 뽑아서 분석할 수 있게 데이터를 잘 '적재'해 놓을 필요가 있음
- 데이터를 쓰는 모든 작업에 데이터 모델링이 얼마나 잘 됐는지 영향이 감
Relational Database
- MySQL, Oracle, MariaDB 등이 속함
장점
- 매우 유명한 SQL 사용
- JOIN 문 사용가능
- Aggregations and analytics 사용 가능
- 소규모 데이터를 상대로 좋음
- ACID Transactions: ACID (transaction, primary key check)등을 통해 데이터베이스 안의 데이터들의 validity/integrity 보장
- Easier to change to business requirements
단점
- Have large amounts of data: distributed database를 지원하지 않기 때문에 대용량 데이터에 부적합
- Need to be able to store different data type formats: Relational databases are not designed to handle unstructured data.
- Need high throughput -- fast reads: ACID transaction이 전체 프로세스의 slow down을 불러일으킴
- Need a flexible schema: 메모리 낭비로 이어질 수 있음
- Need high availability: 분산시스템을 지원하지 않아서 database하나가 망가지면, 바로 백업시도를 함
- Need horizontal scalability: 분산시스템 지원 X -> 싱글 노드(컴퓨터)로 관리해야함. 따라서 노드를 늘려서 얻는 성능 기대가 불가능
NoSQL Database
- Not Only SQL, Apache Cassandra, MongoDB가 여기에 해당
장점
- 다양한 데이터 포맷 지원가능 (로그같이)
- 대용량 데이터 핸들 가능
- RDBMS와 다르게 horizontal scale up이 가능 (node 추가)
- ACID가 없어서 빠른 읽기/쓰기 보장
- Need a flexible schema: Flexible schema can allow for columns to be added that do not have to be used by every row, saving disk space.
- Need high availability: Relational databases have a single point of failure. When that database goes down, a failover to a backup system must happen and takes time.
단점
- 소규모 데이터에는 부적합
- 빠른 읽기/쓰기를 보장하는대신 ACID (data integrity) 등등은 부족
- JOIN을 미지원
- Aggregation 미지원
- 예상한 쿼리를 기준으로 데이터 모델링을 하므로, 미래에도 계속해서 db를 바꾸는데 제한이 있음
- 예상한 쿼리에서 벗어난 쿼리는 동작이 어렵다. flexible한 쿼리를 날리려면 RDBMS를 써야함
'데엔- Udacity' 카테고리의 다른 글
Udacity - Data Lakes w/ Spark - Intro to Spark (0) | 2022.01.26 |
---|---|
Udacity - Cloud Data Warehouse - Implementing DWH (0) | 2022.01.07 |
Udacity - Cloud Data Warehouse - Intro to Data Warehouse (0) | 2021.12.08 |
Udacity - Data Modeling - NoSQL Data Models (0) | 2021.12.07 |
Udacity - Data Modeling - Relational Data Models (0) | 2021.11.13 |