분류 전체보기
-
OLAP 분석 데이터베이스 완전 비교 가이드공부/데이터 2026. 4. 29. 22:43
1. OLAP DB 분류 개요1.1 데이터 저장 방식에 따른 분류분류 설명 대표 제품자체 저장형 OLAP데이터를 직접 저장·관리, 전용 스토리지 엔진 보유Druid, Pinot, ClickHouse, StarRocks, DorisMPP 쿼리 엔진형데이터 비저장, 외부 스토리지(HDFS, S3 등)에 쿼리만 실행Trino, Presto, Spark SQL, Impala임베디드/경량형프로세스 내 실행, 서버리스DuckDB, chDB스트리밍 DB형실시간 스트림 처리 + OLAP 쿼리 통합RisingWave1.2 Apache Impala의 분류Apache Impala는 MPP 쿼리 엔진 계열에 속합니다.데이터를 직접 저장하지 않음 → HDFS, HBase, S3 등 외부 스토리지에 직접 쿼리Hadoop 에코시스..
-
SQL 안티패턴 감지DB 2026. 4. 28. 01:48
목표사용자의 SQL 쿼리를 실행 전/후로 분석하여 안티패턴을 감지하고 튜닝 포인트를 제공합니다.Dry-run — 실제 실행 없이 쿼리 구조를 정적 분석필수 규칙 강제 — Critical 안티패턴은 차단 또는 강한 경고실행 전 튜닝 포인트 — 정적 분석 / EXPLAIN 기반 개선 제안실행 후 튜닝 포인트 — 실행 통계 기반 병목 진단참고 도구 분석도구 안티패턴 수 플랫폼 접근 방식BigQuery Anti-Pattern Recognition11개BigQuery 전용AST 정적 분석 (ZetaSQL 파서)sqlcheck29개범용 RDBMSCLI 정적 분석 (C++)AltimateAI / altimate-code19개10개 웨어하우스 (Snowflake·BQ·Databricks 등)AI 기반 + 정적 분석sq..
-
레이크 하우스란공부/데이터 2026. 4. 27. 21:38
레이크하우스 오픈 테이블 포맷 완전 비교Delta Lake · Apache Iceberg · Apache Hudi · Apache Paimon · DuckLake(2026) 포맷의 메타데이터 구조, 카탈로그 아키텍처, 심화 기술 특징을 비교합니다. Apache XTable(상호운용 레이어)도 별도 정리합니다.레이크하우스란?레이크하우스(Lakehouse) = 데이터 레이크의 유연성·비용 효율성 + 데이터 웨어하우스의 ACID 트랜잭션·스키마 관리·거버넌스를 오픈 파일 포맷 위에서 직접 제공하는 통합 아키텍처전통 2계층 아키텍처의 문제구분 데이터 레이크 데이터 웨어하우스장점정형·비정형 대량 저장, 비용 효율적ACID 트랜잭션, 스키마 강제, 우수한 쿼리 성능단점품질·일관성·거버넌스 관리 어려움ETL 필수, ..
-
[Spark] 메모리 관리공부 2026. 4. 27. 21:21
💡Apache Spark의 메모리 관리는 UnifiedMemoryManager를 중심으로 Execution, Storage, User 영역이 동적으로 협력하는 구조입니다. 올바른 설정과 전략으로 OOM 에러를 방지하고 성능을 최대화할 수 있습니다.1. Unified Memory Manager 구조Spark 1.6부터 도입된 UnifiedMemoryManager는 Executor JVM 힙을 세 가지 영역으로 구분합니다.메모리 영역 구조┌──────────────────────────────────────────────────────────┐│ Executor JVM Heap (예: 20GB) │├───────────────────────────────..
-
LLM, RAG, LangChain, LangGraph, MCP 개념 및 예시공부 2026. 4. 27. 02:25
I. LLM (대규모 언어 모델)개념대규모 언어 모델(LLM)은 방대한 텍스트로 학습된 AI 시스템으로, 자연어를 이해하고 생성합니다. 핵심 원리는 다음 토큰 예측이며, 이를 통해 번역·요약·코드 생성 같은 다양한 작업을 수행합니다.LLM의 한계LLM에는 내재적 한계가 있으며, 이 때문에 RAG·MCP·LangChain 같은 기술이 등장했습니다.환각(Hallucination): 사실이 아닌 내용을 그럴듯하게 생성지식 단절(Knowledge Cutoff): 마지막 훈련 날짜 이후 정보 없음도메인 특수성 부족: 전문 분야 깊이 있는 지식 부족높은 컴퓨팅 비용: 대규모 자원 필요편향(Bias): 훈련 데이터의 편향을 학습·증폭산업별 응용고객 서비스: 자동화 챗봇 및 대화형 에이전트의료: 환자 보고서 분석 및 ..
-
[Spark] 카탈리스크 옵티마이저공부 2026. 4. 27. 02:09
1. 개요Apache Spark의 쿼리 실행 성능을 결정하는 핵심 엔진이 바로 카탈리스트 옵티마이저(Catalyst Optimizer)입니다. Spark SQL은 사용자가 작성한 SQL 쿼리나 DataFrame/Dataset API 코드를 내부적으로 최적의 실행 계획으로 변환하는데, 이 과정 전체를 카탈리스트 옵티마이저가 담당합니다.카탈리스트 옵티마이저는 Spark 1.3(2014년)에 처음 도입되었으며, Scala의 함수형 프로그래밍 특성을 적극 활용하여 확장 가능한 구조로 설계되었습니다. 규칙 기반(Rule-Based) 최적화와 비용 기반(Cost-Based) 최적화를 모두 지원하며, Parquet·Hive·JDBC 등 다양한 데이터 소스와의 통합도 지원합니다.사용자는 "무엇을(What)" 쿼리할지만..
-
[Spark] 파티션 전략과 성능 최적화공부 2026. 4. 27. 01:29
파티션 전략 개요Apache Spark에서 파티션(Partition)은 데이터를 분산 처리하는 기본 단위입니다. 파티션의 수와 크기, 분배 방식에 따라 성능이 크게 달라지므로 파티션 전략을 이해하고 올바르게 적용하는 것이 매우 중요합니다.1. 파티션이란?Spark는 데이터를 여러 파티션으로 나누어 각 Executor의 Task가 하나의 파티션을 담당하는 방식으로 동작합니다.파티션 수가 너무 적으면 병렬성이 낮아져 일부 Executor가 유휴 상태가 됩니다.파티션 수가 너무 많으면 Task 스케줄링 오버헤드가 증가하여 오히려 성능이 저하됩니다.따라서 데이터 크기와 클러스터 자원에 맞는 적정 파티션 수를 유지하는 것이 핵심입니다.2. repartition(100)은 어떻게 데이터를 나누는가?repartiti..
-
중앙 메타스토어란공부/데이터 2026. 4. 26. 23:58
1. 개요중앙 메타스토어(Central Metastore 또는 Data Catalog)는 데이터 레이크·레이크하우스 환경에서 테이블 스키마, 파티션 정보, 위치(Location), 통계, 직렬화 방식(SerDe) 등 데이터의 메타데이터를 통합 관리하는 핵심 인프라 컴포넌트입니다.Spark, Trino, Flink, Hive 등 다수의 처리 엔진이 동일한 데이터 자산에 접근할 때, 각 엔진이 개별적으로 스키마 정보를 관리하면 불일치와 중복이 발생합니다. 중앙 메타스토어는 이러한 문제를 해결하기 위해 단일 진실 공급원(Single Source of Truth) 역할을 수행합니다.초기에는 Apache Hive Metastore(HMS)가 사실상 표준으로 자리 잡았으나, 데이터 레이크하우스 시대에 접어들면서 트..
-
Apache XTable이란공부/데이터 2026. 4. 26. 23:44
개요Apache XTable™(Incubating)은 데이터 레이크하우스의 서로 다른 오픈 테이블 포맷 간 상호운용성을 제공하는 오픈소스 메타데이터 변환 도구입니다. Apache Iceberg, Apache Hudi, Delta Lake 세 가지 주요 포맷 사이에서 데이터를 복사하거나 이동하지 않고 메타데이터만 번역하여, 하나의 물리적 데이터 셋을 여러 포맷으로 동시에 읽을 수 있게 해줍니다.원래 OneTable이라는 이름으로 Microsoft, Google, Onehouse가 공동으로 오픈소스화하였으며, 이후 Apache Software Foundation에 기증되어 현재 Apache XTable™ (Incubating) 으로 불리고 있습니다.💡 핵심 포인트: XTable은 새로운 테이블 포맷이 아닙..
-
[Spark] 스파크 Structured Streaming 정리공부 2026. 4. 26. 23:37
1. 개요Spark Structured Streaming은 Apache Spark 2.0에서 도입되고 2.2에서 정식 안정화된 확장 가능한 스트림 처리 엔진입니다. 기존 배치 처리에서 사용하던 DataFrame/Dataset API를 그대로 스트리밍에 적용할 수 있어 "한 번 작성, 배치/스트리밍 모두 실행"이 가능합니다.핵심 설계 철학: Unbounded Table 모델스파크 Structured Streaming은 입력 데이터 스트림을 무한히 추가되는 테이블로 개념화합니다.새로 도착하는 레코드 = 테이블에 추가되는 새 행(row)이 입력 테이블에 대한 쿼리가 결과 테이블(Result Table) 을 생성결과 테이블은 주기적으로 싱크(Sink)에 기록됨이 추상화 덕분에 배치 쿼리와 완전히 동일한 로직으로..