개인 공부😊/Database 5

[데이터베이스] 4.5 인덱스

1. 인덱스의 필요성 데이터를 빠르게 찾을 수 있는 하나의 장치! 인덱스 생성의 장단점 장점 검색 속도가 빨라 질수 있다. 시스템의 부하를 줄여 전체 시스템의 성능을 향상 시킨다. 단점 인덱스는 Database 공간을 차지 한다 .- 인덱스 생성 시 많은 시간이 소요 될 수 있다. 데이터 변경 작업 시(Insert, Update, Delete) 성능이 나빠질 수 있다(빈번할 경우) 2. B-트리 B트리는 이진트리에서 발전되어 모든 리프 노드들이 같은 레벨을 가질 수 있도록 자동으로 밸런스를 맞추는 트리. 정렬된 순서를 보장하고, 멀티레벨 인덱싱을 통한 빠른 검색을 할 수 있어 DB에서 사용하는 자료구조 중 한 종류 자식 node의 개수가 2개 이상이며, node 내의 key가 1개 이상일 수 있다. 루트..

[데이터베이스] 4.4 데이터베이스의 종류

1. 관계형 데이터베이스 → 관계형 데이터베이스란 행과 열을 가지는 표 형식 데이터를 저장하는 형태의 데이터베이스를 가리키며 SQL이라는 언어를 써서 조작! 참고! 관계형 데이터베이스의 경우 표준 SQL은 지키기는 하지만, 각각의 제품에 특화시킨 SQL을 사용 예를 들어 오라클의 경우 PL/SQL 이라고 하며, SQL Server 에서는 T-SQL. MySQL 은 SQL 사용 1) MySQL 대부분 운영체제와 호환되며 현재 가장 많이 사용하는 데이터베이스 C, C++ 로 만들어졌으며 매우 빠른 조인, 스레드 기반의 메모리 할당 시스템, 최대 64개의 인덱스를 제공 - 롤백 , 커밋, 이중 암호 지원 보안 등의 기능 제공 2) PsetgreSQL 디스크 조각이 차지하는 영역을 회수할 수 있는 장치인 VAC..

[데이터베이스] 4.3 트랜잭션과 무결성

1. 트랜잭션이란? 데이터베이스에서 하나의 논리적 기능을 수행하기 위한 작업의 단위 즉 여러개의 쿼리들을 하나로 묶는 단위! _트랜잭션이 보장해야 하는 ACID 원자성, 일관성, 격리성, 지속성 Atomicity(원자성) - all or nothing → 트랜잭션과 관련된 일이 모두 수행되었거나 되지 않았거나를 보장하는 특징 한 트랜잭션 내에서 실행한 작업들은 하나의 작업으로 간주. 모두 성공 또는 실패되어야 한다. Consistency(일관성) → ‘허용된 방식’으로만 데이터를 변경해야 하는 것(통장에 500원있는데 500만원 출금 X) Isolation(격리성) : →동시에 실행되는 트랜잭션들이 서로 영향을 미치지 않도록 격리 트랜잭션 수행 시 서로 끼어들지 못함! _격리성 관련 문제점 1**) No..

[데이터베이스] 4.2 ERD와 정규화 과정

ERD란? → 데이터베이스 구축할 때 가장 기초적인 뼈대 역할을 하며, 릴레이션 간 관계들을 정의한 것. 시스템의 요구 사항 기반으로 작성되며 ERD를 기반으로 데이터베이스를 구축한다. 서비스를 구축한다면 가장 먼저 신경써야할 부분이다!!!! ERD 단점 → 관계형 구조는 유용 BUT 비정형 데이터를 충분히 표현할 수 없다. 비정형 데이터 : 비구조화 데이터, 미리 정의된 데이터 모델이 없거나 미리 정의된 방식으로 정리되지 않은 정보 정규화 과정 정규형 원칙 자료의 중복성 감소 독립적인 관계는 별개의 릴레이션으로 표현 각가의 릴레이션은 독립적인 표현이 가능해야 함 데이터베이스 이상 현상 : 삭제할 때 필요한 데이터가 같이 삭제되고, 데이터 삽입을 해야하는데 하나의 필드가 NULL이되면서 삽입하기 어려운 ..

[데이터베이스] 4.1 데이터베이스의 기본

데이터베이스란? → 일정한 규칙 혹은 규약을 통해 구조화되어 저장되는 데이터의 모음. 데이터베이스 안에 있는 데이터들은 특정 DBMS마다 정의된 쿼리 언어를 통해 삽입, 삭제, 수정, 조회 등을 수행할 수 있다. 또한 데이터베이스는 실시간 접근과 동시 공유가 가능합니다. DBMS → 해당 데이터베이스를 제어, 관리하는 통합시스템을 DBMS라고 한다. 엔터티 → 엔터티는 사람, 장소, 물건, 사건, 개념 등 여러 개의 속성을 지닌 명사를 의미 언테터티는 약한 엔터티와 강한 엔터티로 나뉜다. 예를 들어 A가 혼자서 존재하지 못하고 B의 존재 여부에 따라 종속적이라면 A : 약한 엔터티 B : 강한 엔터티 예) 방은 건물 안에만 존재함 방 : 약한 엔터티 건물 : 강한 엔터티 릴레이션 → 릴레이션은 데이터베이..