[기술 면접] 10. JDBC가 무엇인가요?

JDBC

저번 시간에 이어, 이번엔 JDBC에 관련된 면접 질문들을 알아보겠습니다. 출제 빈도가 높진 않았지만, 중요한 개념이니 숙지하시길 권해드립니다. 이번 질문도 서비스 플랫폼 기업 K사와 L사에서 마주한 경험이 있습니다. Q: JDBC가 무엇인가요? Java Database Connectivity로 자바에서 DB에 접속할 수 있도록 하는 자바 API입니다. JDBC는 DB에서 자료를 쿼리하거나 업데이트하는 방법을 표준으로 제공하여 애플리케이션 서버의 사용 코드를 그대로 유지할 … Read more

[기술 면접] 9. Database Replication이 무엇인가요?

Replication이 무엇인가요?

저번 시간에 이어, 이번엔 Database Replication에 관련된 질문을 알아보겠습니다. 이번 시간은 이전 시간보다 조금 어려울 수 있습니다. 심화부분이라고 생각하고 숙지하시길 권해드립니다. 해당 면접 질문은 서비스 플랫폼 기업 K사와 L사에서 출제된 적이 있습니다. Q: Database Replication이 무엇인가요? DB 복제를 의미하며 보통 Master 1개와 Slave N개의 형태로 구성합니다. Master, Slave DB 간에 데이터는 비동기로 동기화하는 특징이 있습니다. … Read more

[기술 면접] 8. Index는 왜 필요한가요?

Index는 왜 필요한가요?

저번 시간에 이어서, 이번엔 Index에 대한 다양한 질문들을 알아보겠습니다. Index는 굉장히 자주 등장하는 면접 질문입니다. 다방면으로 준비하시길 권해드립니다. 서비스 플랫폼 기업 N, K, L, T사에서 마주한 경험이 있습니다. Q: Index는 왜 필요한가요? TABLE의 검색 성능을 높여주기 위해 필요합니다. 일반적인 RDBMS에서는 B+Tree구조로 된 index를 사용하여 검색 속도를 향상시킵니다. index는 책마다 마지막 페이지에 있는 색인과 같은 역할을 … Read more

[기술 면접] 7. DB에서 DeadLock(데드락)은 무엇을 의미하나요?

DB에서 DeadLock(데드락)은 무엇을 의미하나요?

저번 시간에 이어, 이번엔 DB에서 DeadLock(데드락)이 무엇을 의미하는지 알아보도록 하겠습니다. 운영체제 카테고리의 Deadlock을 보고 오셨다면, 익숙한 내용일 것으로 생각됩니다. Q: DB에서 DeadLock(데드락)은 무엇을 의미하나요? 여러 Transaction들이 각각 자신의 데이터에 대하여 lock을 획득한 상태에서 상대방 데이터에 접근하고자 대기를 할 때 교차 대기를 하게 되며 서로 영원히 기다리는 상태를 말합니다. Q: DB의 DeadLock을 해결하려면 어떻게 해야하나요? 3가지 … Read more

[기술 면접] 6. VIEW가 무엇인가요?

VIEW가 무엇인가요?

저번 시간에 이어, 이번엔 뷰(VIEW)가 무엇인지 간단하게 알아보겠습니다. View는 실제 현업에서도 자주 사용하며, DB 면접 질문으로 빈번히 등장하곤 합니다. 저도 서비스 플랫폼 회사인 L사와 T사에서 받았던 것으로 기억되네요. Q: VIEW가 무엇인가요? 원하는 데이터들만을 보여주기 위해 기존 테이블에서 유도된 가상 테이블입니다. Q: 사용하는 이유가 무엇인가요? 대표적으로 2가지가 있습니다. 첫째로, CLIENT는 숨겨진 데이터의 존재 자체를 모르기 때문에 … Read more

[기술 면접] 5. 정규화(Normalization)에 대해서 설명해보세요.

정규화(Normalization)에 대해서 설명해보세요.

저번 시간에 이어서, 이번엔 정규화(Normalization)에 대해 알아보겠습니다. 정규화는 Data를 효율적으로 구조화하여 사용하기 위한 과정으로, 중복 데이터를 최소화하고 일관성, 유지보수성, 효율성 등을 높이기 위해 사용됩니다. 이번 시간을 통해 정규화 과정에 대해 깊게 공부할 수 있으시길 바랍니다. Q: 정규화에 대해서 설명해보세요. 이상 현상이 발생하는 릴레이션을 분해하여, 이상 현상을 없애는 과정입니다. 함수 종속성의 유형에 따라 등급을 구분하고 정규형이 … Read more

[기술 면접] 4. 트랜잭션(Transaction)을 설명해주세요.

제목을 입력해주세요 복사본 9 001 1 e1691810308600

지난 시간에 이어서, 이번엔 트랜잭션(Transaction)에 대해 알아보겠습니다. Transaction은 Database의 작업 단위로, 기초이면서도 필수인 개념이라고 할 수 있습니다. Transaction의 특징과 관련 개념, 그리고 제어 방법들에 대해 알아보는 시간을 갖겠습니다. Q: 트랜잭션(Transaction)을 설명해주세요. DB 내에서 수행되는 작업의 최소 단위로, DB의 무결성을 유지하며 DB의 상태를 변화시키는 기능을 수행합니다. 하나 이상의 Query를 포함해야 하고, ACID라고 칭해지는 원자성, 일관성, 고립성, … Read more

[기술 면접] 3. RDB와 NoSQL을 비교해서 설명해주세요.

RDB NoSQL

지난 시간에 이어서, 이번엔 RDB(Relation DataBase)와 NoSQL(Not Only SQL)에 대해 알아보겠습니다. 자주 등장하는 내용이며, 프로젝트 기획 시에 DB를 선택할 수 있는 기본 지식이니 꼼꼼하게 알아보도록 합니다. Q: RDB와 NoSQL을 비교해서 설명해주세요. RDB는 사전에 엄격하게 정의된 Schema를 기반으로 정형 데이터만 저장할 수 있으며, NoSQL은 Schema 없이 비정형 데이터를 저장할 수 있도록 지원합니다. RDB는 중복을 허용하지 않기 … Read more

[기술 면접] 2. DDL/DML/DCL/TCL 은 무엇인가요?

DDL/DML/DCL/TCL은 무엇인가요?

DB SQL로 프로시저 등의 쿼리를 작성할 때, 어떤 명령어가 어디에 속하는지 인지하고 있진 않습니다. 하지만, 간혹 특정 명령어가 어디에 속했는지, 혹은 특정 종류에 대해 어떠한 명령어들이 속해있는지 질문을 받기도 합니다. 기초 명령어가 어디에 속했는지와 DDL, DML, 그리고 DCL에 대해 간단하게 짚고 넘어가겠습니다.

[기술 면접] 1. Primary Key 가 무엇인가요?

[기술 면접] 1. Primary Key가 무엇인가요?

Primary Key는 레코드를 식별하고 관계를 설정하는 핵심 개념으로, 데이터의 일관성과 정확성을 유지하는데 중요한 역할을 하기 때문에 면접에서 자주 다루어집니다. 또한, Primary Key의 유형과 사용법에 대한 이해는 데이터베이스 설계와 쿼리 최적화에 대한 기본 지식을 확인하는데 도움이 됩니다.