[DB] 인덱스, 트랜잭션이란?
학부시절 데이터베이스 수업때 잠깐 배웠던 개념 중 인덱스, 트랜잭션이라는 개념이 있었습니다.
하지만 최근 본 면접에서 관련 질문을 받았는데 대답을 하지 못했습니다...ㅜㅜ
그래서 오늘은 인덱스와 트랜잭션에 대해 간략하게 설명(기록?)해 보도록 하겠습니다.
인덱스에 대한 자료를 찾아본 결과 db에서의 인덱스는 os에서 페이징테이블을 연상시키게 했습니다. 인덱스란 많은 양의 데이터베이스를 순회할 경우, 비용을 최소화시키기 위해 책으로 비유하자면 특정 부분에 책갈피처럼 끼워놓은 부분들의 페이지 번호를 따로 테이블로 정의하는 것이라고 할 수 있을 것 같습니다. RDBMS에서 주로 사용하는 기술로 검색 속도를 높여준다는 장점이 있지만, 인덱스를 저장할 또 다른 파일이 필요하기 때문에 용량이 커진다는 단점이 있습니다.
인덱스 개념 및 장단점 요약
https://lalwr.blogspot.com/2016/02/db-index.html
DB Index 란?
1) INDEX의 의미 RDBMS에서 검색속도를 높이기 사용하는 하나의 기술입니다. INDEX는 색인입니다. 해당 TABLE의 컬럼을 색인화(따로 파일로 저장)하여 검색시 해당 TABLE의 레코드를 full scan 하는게 아니라 색인화 되어있는...
lalwr.blogspot.com
인덱스 사용예시
https://itholic.github.io/database-index/
[database] DB 인덱스(INDEX)란?
인덱스
itholic.github.io
인덱스에 관해서는 실습을 하면서 배워야할 것 같아서 spring boot를 활용한 rest api 만들기의 후속편으로 준비하는 aws를 사용하여 개인 서버 데이터베이스 만들기 실습을 통해 준비해보도록 하겠습니다.
다음으로 트랜잭션입니다.
트랜잭션은 데이터베이스의 상태를 변화시키기 위해서 일관적으로 실행되는 연산들을 묶어 하나의 단위로 만든 것입니다. 트랜잭션은 하나의 큰 연산으로 보기 때문에 모든 연산이 실행되거나 실행되지 않아야만 합니다. 예를 들어 4줄의 쿼리 연산을 하나의 트랜잭션으로 실행했을 경우 앞의 두 쿼리는 성공했지만 세번째 쿼리가 실패한다면, 실행했던 두 쿼리도 rollback을 통하여 이전의 상태로 돌려놓아야 합니다. 트랜잭션을 사용함으로써, 관련있는 여러 쿼리가 함께 실행될 수 있고, 잘못된 실행을 바로잡을 수 있기 때문에 더욱 신뢰성있고 안정적인 데이터베이스를 유지할 수 있을 것이라는 생각이 드네요..! 이외에도 트랜젝션에는 여러가지 특징이 존재합니다.
db 트랜젝션과 그 특징
https://coding-factory.tistory.com/226
[DB기초] 트랜잭션이란 무엇인가?
▶ 트랜잭션의 정의 트랜잭션(Transaction)은 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들을 의미한다. 트랜잭션의 특징..
coding-factory.tistory.com
제가 정리한 글은 제가 공부하고 찾아본 내용을 바탕으로 작성되었습니다. 혹시나 정리한 부분에 오류가 있거나 추가가 필요한 부분이 있다면 댓글로 알려주시기를 간곡히 부탁드립니다...!!
부족한 글 읽어주셔서 감사드립니다.