DB/DB Basic
-
[DB] DB Lock & 2PL ProtocolDB/DB Basic 2024. 3. 31. 21:37
DB Lock : Machanisms used in database management systems to control concurrent access to shared resources such as database tables, rows, or even specific data items. - Ensure data consistency and integrity by preventing conflicts between concurrent transactions Types 1. Shared Lock (S-Lock) - Allows multiple transactions to read a resource simultaneously - Prevents write operations by other tran..
-
[DB] Concurrency Control (2) Concurrency Problem and Isolation LevelDB/DB Basic 2024. 2. 27. 00:11
Concurrency Problem and Isolation Level Concurrency Problem Concurrency problems occur when multiple transactions are being executed on the same database in unrestricted problems. Concurrency Problem Description Lost Update Occurs when two transactions try to update the same data concurrently, pontentially resulting in one transaction's changes being overwritten by the other Dirty Read Happens w..
-
[DB] Concurrency Control (1) Schedule, Serializability, RecoverabilityDB/DB Basic 2024. 2. 25. 22:56
Concurrency Control When multiple transactions are processed simultaneously in a single DBMS, the utilization of processors and disks increases, leading to an increase in throughput (the number of transactions processed per unit time), and there is a benefit of reduced response time as shorter transactions do not need to wait for other transactions. However, because multiple transactions are exe..
-
[DB] TransactionDB/DB Basic 2024. 2. 24. 16:53
Transaction : A logical unit of work in a database that consists of one or more operations performed on the database ACID 1. Atomicity - Transactions are all-or-nothing - Ensures that all operations within a transaction are completed successfully, or none of them are - If any part fails, the entire transaction is rolled back 2. Consistency - Maintains the database in a valid state before and aft..
-
[DB] Stored Procedure in 3-tier architecture : pros and consDB/DB Basic 2024. 1. 22. 23:33
3-Tier Architecture 1. Presentation Layer (User Interface) - Topmost layer that is responsible for interacting with end-users (e.g. web pages, mobile apps, etc.) - To present information to users and gather user input(forwards user requests to the next layer) 2. Business Logic Layer (Application Layer) - Processes the user input received from the presentation layer and coordinates the applicatio..
-
[DB] 저장 프로시저 (Stored Procedure)의 개념과 예시DB/DB Basic 2023. 6. 12. 17:11
저장 프로시저 (SP, Stored Procedure)란? : 준비된 SQL문으로, 재사용이 가능하도록 저장한 SQL문을 의미 - 매개변수를 설정할 경우, 매개변수의 값에 따라 SQL문을 실행시킬 수 있음 사용 이유 1. 성능 향상 - SP 생성 이후, 첫 실행을 하게 되면 최적화, 컴파일 단계를 거쳐 그 결과를 캐시(메모리)에 저장 - 이 후 해당 SP 실행시 캐시(메모리)에 있는 결과를 가져와 사용하므로 실행 속도가 향상됨 - 실행 계획이 이미 최적화되어 있기 때문에, SQL문을 매번 구문 분석하고 최적화하는 오버헤드를 줄일 수 있음 2. 유지보수 및 재사용성 향상 - SP 사용시 복잡한 로직과 비즈니스 규칙을 DB내에 캡슐화 할 수 있음 - 여러 어플리케이션이나 스크립트에서 동일한 SP 호출할 수 ..
-
[DB] 스키마(Schema) 개념 및 계층DB/DB Basic 2023. 5. 18. 11:45
스키마(Schema)란? : 데이터베이스의 구조(개체, 속성, 관계)화되는 방식을 정의 - DBMS이 주어진 설정에 따라 Schema를 생성하고 사용자가 자료를 저장, 조회, 삭제, 변경할 때 DBMS는 자신이 생성한 데이터 스키마를 참조하여 명령을 수행 - 테이블 이름, 필드, 데이터 유형, 엔티티 간의 관계 등 논리적 제약조건이 포함됨 스키마의 3계층 외부(서브) 스키마 (External Schema) = 사용자 뷰 - 개인의 입장에서 필요로 하는 데이터베이스의 논리적 구조 정의 - 하나의 데이터베이스 시스템에는 여러개의 외부 스키마가 존재할 수 있으며 하나의 외부 스크미라를 여러 개의 응용 프로그램이나 사용자가 공용 가능 - DML을 사용해 데이터 이용 개념 스키마 (Conceptual Schema..
-
[DB] 데이터 모델의 종류와 구성 요소 (엔티티, 속성, 관계)DB/DB Basic 2023. 5. 17. 16:25
데이터 모델이란? : 현실 세계 정보들을 컴퓨터에 표현하기 위해 단순화, 추상화하여 체계적으로 표현한 개념적 모형 - 데이터 모델은 데이터 구조를 결정 - 데이터, 데이터의 관계, 데이터의 의미 및 일관성, 제약 조건 등을 기술하기 위한 개념적 도구 데이터 모델의 유형 1. 개념적 데이터 모델 - 현실 세계에 존재하는 개체를 인간이 이해할 수 있는 정보 구조로 표현 - 구축하고자 하는 업무 모델의 핵심 데이터 구조를 큰 그림으로 구성하는 것 - "빅 픽쳐" 모델이라고도 불리며 전반적인 구조와 콘텐츠를 나타내지만 데이터 계획의 세부사항은 표시하지 않음 - 데이터 모델링의 시작점으로 다양한 데이터세트와 조직 전체의 데이터 흐름을 식별 - 논리 및 물리 모델 개발에 대한 상위 레벨의 청사진 2. 논리적 데이터..