Home
MXXI.kr
Cancel

MySQL 트랜잭션 격리 수준과 다른 DBMS와의 차이점

개요 트랜잭션 격리 수준은 데이터베이스에서 여러 트랜잭션이 동시에 실행될 때 서로의 데이터 변경을 어느 정도까지 볼 수 있도록 허용할지를 결정하는 기준임 MySQL은 다른 주요 데이터베이스와 달리 REPEATABLE READ를 기본 격리 수준으로 사용하며 이는 MySQL의 MVCC(Multi-Version Concurrency Control...

[컴퓨터과학 개론] 5강 - 알고리즘

💡해당 게시글은 방송통신대학교 이관용, 정광식 교수님의 '컴퓨터과학 개론' 강의를 개인 공부 목적으로 메모하였습니다. 학습 개요 알고리즘의 필요성과 정의에서부터 시작해서 알고리즘의 대표적인 설계 기법, 그리고 성능 분석 방법 등 알고리즘 전반에 걸친 주요 개념들에 대해서 살펴 봄 정렬 문제를 해결하는 가장 기본적인 형태의 알고리즘...

도메인 주도 설계(DDD)란?

개요 이 포스팅은 DDD 시리즈의 두 번째 글입니다. 도메인 스토리텔링(DST)이란?을 먼저 읽는 것을 권장합니다. 이전 포스팅에서 도메인 스토리텔링(DST)을 통해 비즈니스 프로세스를 시각화하는 방법을 다룸 DST는 DDD를 시작하기 위한 도구 중 하나지만, DDD 자체에 대한 이해가 필요 이번 포스팅에서는 DDD의 개념, 전...

DDD와 마이크로서비스 아키텍처

개요 이 포스팅은 DDD 시리즈의 세 번째 글입니다. 도메인 스토리텔링(DST)이란?과 도메인 주도 설계(DDD)란?을 먼저 읽는 것을 권장합니다. 이전 포스팅에서 도메인 주도 설계(DDD)의 개념과 전략적/전술적 설계를 다룸 DDD의 바운디드 컨텍스트는 마이크로서비스 아키텍처의 경계 설정 시 참고할 수 있는 논리적 단위 이번 ...

[컴퓨터과학 개론] 4강 - 자료 구조

💡해당 게시글은 방송통신대학교 이관용, 정광식 교수님의 '컴퓨터과학 개론' 강의를 개인 공부 목적으로 메모하였습니다. 학습 개요 컴퓨터 프로그래밍을 시작하면서 가장 기본이 되는 내용인 자료 구조를 살펴봄 비선형 자료 구조인 트리와 그래프에 대해 알아보고, 그래프와 트리의 순회 방법과 표현 방법에 대해서 학습함 트리는 계층 구조...

데이터베이스 파티셔닝

개요 대용량 테이블을 더 작고 관리 가능한 단위로 분할하는 기법으로 쿼리 성능 향상과 데이터 관리 효율성을 제공함 중요 이 글은 단일 DB 인스턴스 내에서의 논리적 분할(파티셔닝)을 다루며 서버를 물리적으로 나누는 샤딩(Sharding)과는 구별됨 파티셔닝 하나의 DB 서버 내...

데이터베이스 스캔 방식

개요 데이터베이스에서 쿼리를 실행할 때 데이터를 읽는 다양한 방식을 이해하는 것이 성능 최적화에 중요함 쿼리 옵티마이저가 쿼리 조건과 인덱스 상태를 분석하여 최적의 스캔 방식을 선택함 참고 이 포스팅의 용어는 엔터프라이즈 DB(Oracle)에서 주로 사용되는 표준 용어를 기준으로 설명하지만 개념은 대부분의 RDBMS에...

데이터베이스 인덱스

개요 데이터베이스 인덱스는 테이블의 데이터 검색 속도를 향상시키기 위한 자료 구조임 책의 색인과 유사하게 특정 데이터를 빠르게 찾을 수 있도록 정렬된 구조를 제공함 인덱스는 읽기 성능을 향상시키지만 쓰기 성능에는 오버헤드를 발생시킴 인덱스의 기본 원리 인덱스가 필요한 이유 테이블 전체 스캔은 데이터가 많아질수록 비효율적임...

도메인 스토리텔링(DST)이란?

개요 이 포스팅은 DDD 시리즈의 첫 번째 글입니다. 도메인 스토리텔링(DST)이란? → 도메인 주도 설계(DDD)란? → DDD와 마이크로서비스 아키텍처 순서로 읽는 것을 권장합니다. 최근 팀이 더 나은 설계를 위해 도메인 주도 설계(DDD) 도입을 결정하고 R&D를 진행함 DDD 이론을 학습하면서 유비쿼터스 언어, 바운디...

데이터베이스 정규화

개요 데이터베이스 정규화는 데이터 중복을 최소화하고 무결성을 보장하기 위해 테이블을 체계적으로 구조화하는 과정임 정규화를 통해 데이터 이상 현상을 방지하고 데이터 일관성을 유지함 데이터 이상 현상 삽입 이상(Insertion Anomaly) 불필요한 데이터를 함께 삽입해야 하는 경우 ex) ...