Introduction to Databases
database는 많은 양의 데이터를 저장, 불러오기 위한 consistent, organized 구조를 제공한다.
Flat File Approach
- CSV file로 db 저장하고 사용자가 app code에서 관리
- 읽거나 업데이트하려면 각 파일을 매번 파싱해야 함
Nonrelational Databases
- table format 대신 storage model(key-value pairs/documents/graphs)을 사용
- Schemas are dynamic: 각 row별로 다른 schema 사용 가능(table model 쓰지 않기 때문)
* schema: attribute 리스트
* Relational database에서는 table을 사용하므로 각 행이 똑같은 schema 사용해야 했음
- Scale out horizontally 가능(개수 늘리기 가능)
- structured 말고도 unstructured, semi-structured data와 같은 다양한 데이터들 다룰 수 있음
Benefits
- 특정한 data model이 결정됐으면 purpose-built 가능
- flexible schemas(dynamic)
- scalability
- highly functional APIs(여러 가지 API 추가 가능)
Database Deployments and Management
- On-premises database(회사/학교/기관 내 별도로 존재)
* 서버 안에 존재하기 때문 !!
* 모든 stack들을 사용자가 관리한다. database system 구축, 보안 등을 위해 정기적 업데이트
- Hosted on Amazon EC2 => 저번에 EC2 에서 설정 리스트에 있었다.
* AWS EC2 내부에 존재
* Application optimization~OS installation: 사용자 관리
그 밑에는 AWS가 유지보수(하드웨어 !!)
- AWS managed
* RDS instance 사용해 안에 넣음
* RDS는 database-dedicated instance임.
* 모든 stack AWS가 관리. 사용자는 business logic, database logic에만 집중하면 됨.
'클라우드 > AWS' 카테고리의 다른 글
Virtualization 2 (0) | 2024.12.22 |
---|---|
Networking (1) (0) | 2024.12.22 |
Security(1) (1) | 2024.11.22 |
AWS S3(1) (0) | 2024.11.07 |
AWS EC2(2) (4) | 2024.11.07 |