[면접대비] 데이터베이스
댓글 0
댓글을 작성하려면 로그인이 필요합니다.
아직 댓글이 없습니다. 첫 번째 댓글을 작성해보세요.
사용자가 공유할 수 있도록 관련된 데이터를 체계적으로 저장하고 관리하는 데이터의 집합입니다
데이터 베이스를 생성하고 조회, 수정, 삭제할 수 있도록 관리하는 소프트웨어입니다
데이터를 행과 열로 구성된 테이블 형태로 저장하고 테이블 간의 관계를 통해 데이터를 관리하는 DBMS입니다
데이터 베이스의 구조와 제약 조건을 정의한 설계도입니다
SQL은 관계형 데이터베이스에서 데이터를 정의하고 조회, 삽입, 수정, 삭제하기 위해 사용하는 언어입니다
DDL은 데이터베이스 구조를 정의하는 명령어로 create, alter, drop 등이 있습니다
DML은 데이터를 조회하거나 변경하는 명령어로 select, insert, update, delete가 있습니다
DCL은 권한을 관리하는 명령어로 grand, revoke 등이 있습니다
Primary Key는 테이블에서 각 행을 유일하게 식별하기 위한 키이며 중복되거나 NULL일 수 없습니다
Foreign Key는 다른 테이블의 키를 참조하여 테이블 간의 관계와 참조 무결성을 유지하는 키입니다
JOIN은 두 개 이상의 테이블을 관련된 컬럼을 기준으로 결합하여 조회하는 방법입니다
정규화로 분리된 여러 테이블의 데이터를 함께 조회할 때 주로 사용합니다
INNER JOIN은 두 테이블에서 조건이 일치하는 데이터만 반환합니다
OUTER JOIN은 일치하는 데이터뿐만 아니라 한쪽 또는 양쪽의 일치하지 않는 데이터도 함께 반환됩니다
데이터의 중복을 최소화하고 데이터의 무결성을 높이기 위해 테이블을 적절하게 분리하는 과정입니다. 이를 통해 이상 현상을 줄일 수 있습니다
데이터가 불필요하게 중복되어 있을 때 데이터 삽입, 삭제, 수정 과정에서 데이터의 불일치나 손실이 발생하는 문제입니다
성능 향상을 위해 의도적으로 테이블을 합치거나 중복 데이터를 허용하는 방법입니다. JOIN 횟수를 줄여 조회 성능을 높일 수 있지만 데이터 중복과 무결성 관리 비용이 증가할 수 있습니다
데이터베이스에서 하나의 논리적인 작업 단위로 처리되는 연산들의 집합입니다
모든 작업이 성공하면 반영하고 하나라도 실패하면 이전 상태로 되돌릴 수 있습니다
Atomicity(원자성)는 모두 수행되거나 모두 취소되어야 한다는 것이고
Consistency(일관성)는 트랜잭션 전후에 데이터베이스의 규칙과 제약 조건이 유지되야 한다는 것이고
Isolation(격리성)은 동시에 실행되는 트랜잭션들이 서로 간섭하지 않도록 하는 것이며
Durability(지속성)는 완료된 트랜잭션의 결과가 영구적으로 보존되어야 한다는 것입니다
Lock은 여러 트랜잭션이 동시에 같은 데이터에 접근할 때 데이터의 일관성이 깨지는 것을 방지하기 위해 접근을 제어하는 방법입니다
Index는 데이터베이스에서 원하는 데이터를 빠르게 찾을 수 있도록 만들어 놓은 별도의 자료구조입니다.
전체 테이블을 탐색하지 않고 필요한 데이터를 빠르게 찾을 수 있어 조회 성능을 높일 수 있습니다
검색과 정렬 등의 조회 성능을 향상 시킬 수 있지만 별도의 저장 공간이 필요하고 데이터 변경 시 Index도 함께 갱신해야 하기 때문에 INSERT, UPDATE, DELETE 성능이 저하될 수 있습니다
B-Tree 계열은 트리의 높이를 낮게 유지하면서 균형을 유지하기 때문에 검색, 삽입, 삭제를 O(log N)에 수행할 수 있습니다. 특히 B+Tree는 실제 데이터에 대한 키를 리프 노드에 정렬해 저장하고 리프 노드가 연결되어 있어 범위 검색에도 효율적입니다
RDB는 데이터를 정해진 스키마와 테이블 간 관계를 기반으로 관리하며 데이터의 일관성과 관계 표현에 강점이 있습니다. NoSQL은 비교적 유연한 데이터 구조를 사용하며 대규모 분산 처리와 확장성이 중요한 환경에서 많이 사용됩니다.
객체지향 면접대비
그래픽스 면접 대비
네트워크 면접 대비