Maximize Your Potential

CS 4

기술 면접 준비 가이드: 자주 묻는 질문 및 답변

기술 면접 준비 가이드: 자주 묻는 질문 및 답변개발자라면 누구나 경험하는 중요한 순간, 바로 기술 면접입니다. 이 과정은 코딩 실력뿐 아니라 컴퓨터 공학 기초, 데이터베이스, 네트워크, 시스템 구조 등에 대한 깊이 있는 이해가 요구됩니다. 이번 포스팅에서는 기술 면접에서 자주 묻는 질문들과 그에 대한 답변을 정리해보았습니다. 이 글을 통해 면접 준비에 도움이 되길 바랍니다.1. 데이터베이스(DB) 관련 질문Q. 데이터베이스의 종류에는 어떤 것들이 있나요?A. 데이터베이스는 정보를 저장하고 관리하는 시스템으로, 크게 관계형 데이터베이스(RDBMS)와 비관계형 데이터베이스(NoSQL)로 나눌 수 있습니다.관계형 데이터베이스(RDBMS): 데이터를 테이블 형태로 저장하고, 이를 관계(키)로 관리합니다. 예:..

Developer Study 2024.09.22

[CS지식 공부하기] 데이터베이스 - InnoDB vs MyIsam

InnoDB의 주요 특징과 장점 트랜잭션 지원InnoDB는 완벽한 ACID(Atomicity, Consistency, Isolation, Durability) 모델을 지원하는 트랜잭션을 제공합니다. 이는 데이터의 정합성과 안정성을 보장하며, 여러 작업을 그룹화하여 하나의 작업으로 관리할 수 있습니다. 외래키 지원데이터베이스 설계에서 중요한 요소인 외래키를 지원합니다. 이를 통해 데이터 간의 일관성을 유지하고 복잡한 쿼리와 관계를 효율적으로 관리할 수 있습니다. MVCC (Multi-Version Concurrency Control)동시성을 높이기 위해 여러 버전의 데이터를 관리할 수 있는 기능을 제공합니다. 이는 읽기 작업 중에 발생할 수 있는 락 경쟁을 최소화하여 성능을 향상시킵니다. Locking L..

CSKnowledge 2024.08.15

[CS지식 공부하기] 데이터베이스 MySQL 엔진 처리 동작 과정

쿼리파서쿼리파서는 쿼리를 요청 받았을 때 가장 먼저 작동하는 구간입니다. 사용자의 요청으로 들어온 SQL구문을 토큰으로 분리해 트리형태의 구조로 변경합니다. 쿼리파서는 쿼리를 파싱한후 SQL 구문의 문법오류 여부 확인합니다. 이후 전처리기로 보내게 됩니다. 전처리기전처리기는 SQL 쿼리의 유효성을 검증하는 중요한 단계입니다. 먼저, Parser가 만든 트리를 기반으로 SQL 구문의 유효성을 검사합니다. 각 토큰을 테이블이나 컬럼명, 내장 함수 등의 개체와 매핑하여 해당 객체의 존재 여부와 접근 권한을 확인합니다. 이 과정에서 권한이 없는 개체의 토큰은 걸러지게 됩니다. 옵티마이저옵티마이저는 SIUD와 같은 쿼리를 최적으로 실행하기 위한 실행 계획을 수립하는 프로세스입니다. 이때 비용 기반 최적화와 규칙 ..

CSKnowledge 2024.08.14

[CS지식 공부하기] 알고리즘 - 그래프: 이해와 활용하는 자료구조

그래프는 현대의 정보 시대에서 다양한 분야에서 활발히 사용되는 중요한 자료구조입니다. 이 글에서는 그래프의 기본 개념과 그래프를 활용하는 방법에 대해 알아보겠습니다. 또한, 이를 통해 다양한 분야에서 그래프가 어떻게 활용되는지에 대해 살펴보겠습니다.그래프의 기본 개념그래프는 노드(정점)와 간선(엣지)으로 이루어진 자료구조입니다. 이 노드들은 서로 연결되어 있으며, 이 연결 관계가 그래프의 핵심입니다. 무방향 그래프는 간선에 방향이 없는 경우이며, 양쪽으로 이동할 수 있습니다. 반면에 유향 그래프는 간선에 방향이 있는 경우로, 한 방향으로만 이동할 수 있습니다.Adjacency정점을 연결하는 모서리가 있는 경우 정점이 다른정점과 인접하다고 함Path(경로)정점 A에서 정점 B로 이동할 수 있는 일련의 가장..

CSKnowledge 2024.08.12