일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- mutable
- RDBMS
- binarySearch
- 불변객체
- 방어적복사
- index
- Database
- 얕은복사
- 자료구조
- proxy
- forward프록시
- 데이터베이스
- 깊은복사
- ERD
- immutable
- 프록시서버
- NoSQL
- 정규화
- 조인
- reverse프록시
- 알고리즘
- transaction
- java
- acid
- 인덱스
- 이진탐색
- Today
- Total
목록데이터베이스 (5)
jacketList

인덱스(index)란? 데이터베이스 인덱스(index)는 추가적인 쓰기 작업과 저장 공간을 활용하여 데이터베이스 테이블의 검색 속도를 향상시키기 위한 자료구조이다. 데이터 = 책의 내용, 인덱스 = 책의 목차, 물리적 주소 = 페이지 번호 라고 생각하면 된다. index를 사용하는 이유? 만일 위와같은 테이블에서 AIRPORT 컬럼에서 값이 LCY인 것을 조회한다고 가정해보자. 그렇다면 select문은 모든 테이블에 있는 데이터를 조회 후 최종적으로 LCY가 포함된 모든 값들을 반환하는 동작을 수행한다. 데이터가 수십만 개가 들어있는 테이블에서 위와같은 작업이 자주 실행된다면 Full Scan을 하기 때문에 트래픽에 따라 성능이 저하될 수 밖에 없다. 따라서! index를 활용해 자주 조회되는 Coulm..
👀 트랜잭션(Transaction)이란? 하나의 논리적 기능을 수행하기 위한 작업의 단위 - > 여러 개의 쿼리들을 하나로 묶는 단위 트랜잭션은 데이터의 정합성을 보장하기 위한 기능이다. Commit 지금까지 작업한 내용을 DB에 영구적으로 저장 transaction을 종료 RollBack 지금까지 작업한 내용들을 전부 취소하고 transaction 이전 상태로 되돌린다. transaction 종료 AutoCommit 각각의 쿼리에 자동으로 transaction 처리를 해주는 개념 쿼리가 성공하면 자동으로 commit한다. 실행 중에 문제가 생기면 rollback한다. MySQL은 default로 autocommit이 활성화 되어있다. MySQL에서 Start Transaction을 실행하면 활성화 되어..

Join 이란? RDB에서 기본키-외래키로 연관된 두 테이블을 묶어 하나의 테이블로 만드는 방법으로 RDB를 사용함에 있어 중요한 역할을 한다. Join이 왜 필요할까? 관게형 데이터베이스 특성상 정규화를 수행하면 각 속성이 최소성과 유일성을 만족하는 데이터의 집합으로 테이블이 구성되고 테이블간 관계(Relationship)을 갖게 된다. 이렇게 서로 관계있는 데이터가 여러 테이블로 나뉘어 저장되므로 연관있는 데이터를 효율적으로 검색하고 처리하기 위해 조인이 필요하다. Join의 종류 INNER JOIN 두 테이블에서 '공통된 값' 만을 가진 행을 출력해준다. 다시말해 테이블 데이터 간 교집합을 의미한다. 보통 INNER JOIN이 기본적인 JOIN 방법이다. 위와같은 정규화된 2개의 상품 Table이 ..

RDBMS와 NoSQL의 개념과 각각의 차이점 RDB란? RDB는 키(key)와 값(value)들의 간단한 관계를 테이블화 시킨 매우 간단한 원칙의 전산 정보 데이터베이스이다. RDB의 장점? 정형화된 데이터를 저장하기 때문에 데이터의 형태와 크기를 미리 정하고 테이블 단위로 구분하여 데이터를 저장 트랜잭션을 통해 ACID(원자성, 일관성, 격리성, 지속성)를 보증하기 때문에 안정적인 데이터 관리가 가능하다. 조인을 포함해 복잡한 조건을 포함하는 데이터 검색이 가능하다.(복잡한 질의 처리 가능) 정규화를 통해 데이터 중복성을 줄이고 데이터 무결성을 개선하는 설계 기법을 사용한다. RDBMS 란? DBMS 앞에 R(Relational) 이 추가되어 관계형 데이터베이스 관리 시스템이라고 한다. RDB는 관계..

ERD가 뭐죠? ERD는 Entity Relationship Diagram의 약자로 요구 분석 사항에서 얻은 엔티티와 속성들의 관계를 그림으로 나타낸 개체-관계 모델이다. 프로젝트에서 사용하는 데이터베이스 구조를 한눈에 파악할 수 있고 서비스 구축 시 제일 먼저 신경써야 하는 부분이다. ERD 구성요소와 표기법 기본 요소로 Entity, Attribute, Relationship등이 있고 구체적으로 weak Entity, Multivalued Attribute, Weak Realationship 이 있다. 먼저 엔티티에 대해서 보자면 엔티티(Entity) 정의 가능한 사물 또는 개념 사람도 될 수 있고 도서정보와 같은 무형의 정보도 데이터화가 가능하다. 데이터베이스의 테이블이 엔티티라고 생각하면 된다 예..