Database 트랜잭션 개념과 4가지 특징 ACID
·
[Database]
📌 개요Database를 공부하다보면, 필연적으로 트랜잭션이라는 용어를 접하게 됩니다. ( 동시성은 덤.. ) 그동안 대충 느낌적인 느낌으로만 알고있었지, 자세하게는 설명할 수 없을 것 같아서 이번 기회에 트랜잭션을 한 번 제대로 알아보고자 합니다!  ❓ 트랜잭션이란?트랜잭션(Transaction)이란, Database의 상태를 변환시키는 더이상 분할이 불가능한 하나의  논리적인 단위 뜻합니다. 분할이 불가능한, 논리적인 단위.. 사실 처음 들었을 땐 다소 난해한 정의라고 받아들일 수 있을 것 같습니다. 하나하나 풀어서 좀 더 쉽게 설명 드리겠습니다! 흔히 "은행 송금"이라는 대표적인 예시가 있지만, 다르게 표현해보겠습니다. 트랜잭션이란? (쉬운 예시) A와 B는 현재 결투중에 있습니다.A 와 B의 체..
[Database] CDC (Change Data Capture) 란 무엇일까?
·
[Database]
📌 개요개인적으로 연습삼아 MySql DB에서 Oracle DB로 마이그레이션을 진행한 적이 있습니다. 이때, 기존 MySql 로 서비스를 운영중일 때, 데이터는 계속 바뀔텐데 해당 데이터들은 어떻게 데이터를 옮기지?라는 고민을 하게 되었는데요!  해당 고민을 만족시키는 개념이 바로 CDC 입니다.이번 포스팅에서는 CDC 라는 개념에 대해 살펴보고자 합니다! ❓ CDC (Change Data Capture) 란? CDC는 쉽게 말해, INSERT, UPDATE, DELETE 등 DB 데이터에 대해서 변경사항을 실시간/준실시간으로 추적하고 캡처하는 기술입니다!  ❓ 왜 사용하는걸까? CDC 의 사용이유로는 크게 3가지로 꼽을 수 있을 것 같습니다. 1. 실시간 데이터 동기화가 가능하다 : DB to DB..
[Database] Index란?
·
[Database]
📌 개요데이터베이스를 사용한다면 반드시 알아야 할 개념 중 하나인 인덱스(Index) 에 대해서 알아보고자 합니다! 조회 성능 개선을 위해선 인덱스를 잘 써야한다고 하던데.. 과연 인덱스란 무엇일까요?   ❓ 인덱스란?  인덱스는 쉽게 말해, RDB안에서 조회할 때 결과를 빠르게 추출할 수 있도록 만들어진 '데이터베이스 객체' 라고 생각하시면 됩니다. 즉, INDEX 라는 객체 테이블을 따로 생성하여, 조회할 때 해당 테이블 내에서 찾게하라! 라고 생각하시면 좋을 것 같습니다.  그럼 인덱스를 한번 직접 생성해볼까요?    ⭐ 인덱스 생성인덱스 생성 방법은 아래와 같은 명령어로 아주 간단하게 생성할 수 있습니다.CREATE INDEX {원하는 인덱스 이름} ON {테이블 명(컬럼 명)}  ⭐ 인덱스 확..
Database - NoSQL 에 대해서 알아보자!
·
[Database]
개요추후, Elastic Search를 들어가기에 앞서, NoSQL의 개념부터 다잡고자 해당 포스팅을 하게 되었습니다.Not Only SQL을 뜻한다는 NoSQL.. 그렇다면 과연 무엇일까요?  ❓ NoSQL 이란?결론부터 말씀드리자면, NoSQL 은 Database 의 개념입니다. NoSQL 이란, No! SQL! 이 아니라  Not Only SQL ! 를 뜻합니다.이는 의미의 차이로써도 반드시 착각하면 안된다는 점으로 강조를 드렸는데요. SQL을 사용하지 않겠다! 가 아닌, SQL만으로는 부족하니까 이뿐만 아니라 이것도 써야지~ 라는 의미가 내포되며 탄생되었습니다. NoSQL은, 규칙성을 준수하는 RDBMS 와 다르게, 다양한 형태로 데이터가 저장되는 저장소 입니다.즉, NoSQL은 "DB(DBMS)..