일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- PYTHON
- HADOOP
- 데이터베이스
- http
- dockerfile
- 정리
- AWS
- 데브코스
- 자료구조
- 컴퓨터 네트워크
- 운영체제
- 컴퓨터네트워크
- Docker
- 가상환경
- 데이터엔지니어링
- airflow
- sql
- airflow.cfg
- 파이썬
- redshift
- linux
- 데이터 웨어하우스
- Go
- Django
- TIL
- S3
- 데이터 엔지니어링
- 데이터 파이프라인
- TCP
- 종류
- Today
- Total
목록데이터베이스 (10)
홍카나의 공부방
데이터베이스 삭제 명령어 DELETE, DROP, TRUNCATE 모두 DB에서 객체를 삭제하는 데 사용하는 명령어다. 하지만 각각의 명령어는 세세한 차이점을 가지고 있다. DELETE DELETE 문은 테이블에서 특정 레코드를 삭제하는 데 사용하는 구문이다. WHERE 절을 사용하여 특정 조건의 레코드를 삭제할 수도 있고, 모든 레코드를 삭제할 수도 있다. DELETE된 데이터는 COMMIT(END) 명령어를 실행하기 이전에 ROLLBACK 명령어를 이용하여 복구할 수 있다. 위 사진에서 보는 것처럼, DELETE 이후 테이블 구조(필드의 정의, 도메인, 제약 조건 등)는 그대로 유지된다. 처리 속도는 TRUNCATE나 DROP문 보다 느리다. DELETE FROM ex_table; DELETE FRO..
해싱 방법 해시 함수를 이용해서 키 값 input에 대한 목표 레코드의 주소로 한 번에 찾아가는 방법이다. 직접 탐색에는 힙이나 B+tree에 비해서 훨씬 빠를 것이다. 여러 해싱 방법 중에서 버킷 해싱이라는 방법이 있다. 여기서 버킷은 하나의 주소를 가지면서 하나 이상의 레코드를 저장할 수 있는 파일의 한 구역을 지칭한다. 각 버킷은 연결 리스트와 같은 자료 구조로 구현된다. 버킷 해싱은 키를 넣으면 해시 함수를 거쳐서 버킷 주소를 알려주는 구조다. 만약 해시 함수가 출력 값을 고르게 분포하지 않을 경우, 서로 다른 데이터가 같은 버킷에 할당되는 충돌 현상이 발생한다. 해시 충돌은 어쩔 수 없이 벌어지는 현상이다. 해시 함수의 출력 값이 무한하지 않기 때문이다. 이러면 특정 버킷이 오버플로우 될 수 있..
B+ 트리 MySQL은 B+트리로 인덱스가 구현되어 있다. B+ 트리는 인덱스 세트와 순차 세트라는 2가지 세트를 만든다. 인덱스 세트는 내부 노드로, 리프에 있는 키들에 대한 경로만 제공한다. 모든 키 값은 순차 세트(리프 노드)에 있다. 인덱스 세트는 직접 탐색을 지원하며, 순차 세트는 순차 탐색을 지원한다. B+ 트리는 B트리와 다르게 Best도 없고 Worst도 없다. 탐색은 무조건 O(log N)이다. B+ 트리의 루트 및 내부 노드 구조에는 레코드에 대한 포인터 값이 제외되어 있다. 반대로 리프 노드는 루트 및 내부 노드와 다르게 서브트리에 대한 포인터가 없다. 대신 레코드에 대한 포인터 값이 있고, 다음 리프노드에 대한 포인터가 존재한다. 순차 세트의 모든 리프 노드는 링크드 리스트 형태로 ..
임시 저장해 둔 글이 3번이나 날라갔다...... 의도치 않게 이 내용을 3번 이상 작성했다. 저장 잘하자. 데이터베이스의 저장 구조 데이터베이스 데이터의 용도에 맞게 적절하게 디스크에 저장할 필요가 있다. 그래서 가장 효율적인 저장구조를 선택하는 과정을 살펴본다. 이 과정은 DB의 쿼리 및 트랜잭션을 분석하여 데이터에 대한 접근 방식과 빈도를 고려하는 DB의 물리적 설계와 같다. 물리적 저장 장치에 데이터를 배치하고 접근하는 방법을 파일의 조직 방법이라고 한다. 파일 조직의 유형에는 순차 방법, 인덱스 방법, 해시 방법이 있는데 전부 살펴본다. 순차 방법 순차 방법의 대표적인 파일 유형으로는 힙 파일(heap file)이 있다. 레코드들이 삽입된 순서대로 파일에 저장된다. 힙 파일은 쉽다. 새로운 레코..