본문 바로가기

컴퓨터 지식/데이터베이스5

[DB] Hadoop 과 Spark 요약정리 / 3️⃣ - RDD란? 목차 RDD (Resilient Distributed Dataset) Why RDD? 주요 특징 작동방식 RDD 의 생성 RDD 연산 연산 예시 계보 (Lineage) 예시 Lazy Execution 작업 스케쥴링 참고 RDD (Resilient Distributed Dataset) 💡 여러 분산 노드에 걸쳐서 탄력적으로 저장되는 변경이 불가능한 데이터 구조 Spark 의 핵심 데이터 모델 병렬처리 가능 에러 시에도 스스로 복구가 가능 Why RDD? 인메모리 데이터 처리를 위한 데이터 셋 데이터 분산 저장을 위해 데이터에 Fault Tolerance 적용 가능 주요 특징 여러 분산 노드에 나누어짐 매우 효율적인 분산처리 다수의 파티션으로 관리됨 하나의 RDD 는 여러 파티션으로 나뉜다. 파티션의 개수,.. 2021. 3. 7.
[DB] Hadoop 과 Spark 요약정리 / 1️⃣ - 하둡(Hadoop), MapReduce 목차 하둡(Hadoop) 하둡이란? MapReduce 왜 Map-Reduce인가?? MapReduce 의 용어 정리 MapReduce 진행과정 MapReduce Architecture HDFS 주요 특징들 아키텍쳐 참고 하둡(Hadoop) 하둡이란? 데이터 병렬분산처리를 위한 오픈소스 프레임워크 장점 오픈소스로 라이선스에 대한 비용 부담이 적음 시스템을 중단하지 않고, 장비의 추가가 용이(Scale Out) 일부 장비에 장애가 발생하더라도 전체 시스템 사용성에 영향이 적음(Fault tolerance) 저렴한 구축 비용과 비용대비 빠른 데이터 처리 오프라인 배치 프로세싱에 최적화 단점 HDFS에 저장된 데이터를 변경 불가 실시간 데이터 분석 같이 신속하게 처리해야 하는 작업에는 부적합 너무 많은 버전과 .. 2021. 3. 7.
[DB] 데이터베이스 Evaluation / PipeLining 과 Materialization 쿼리 실행의 단계 1. Parsing and Translation 2. Optimization 3. Evaluation Evaluation - 엔진이 1,2 단계를 거친 쿼리를 보고 어떻게 실행할건지 실행 계획을 세우고 행하는 것. 대표적으로 Pipelining 방식과 Materialization 방식이 있다. Pipelining 한 연산의 실행이 끝나서 결과 값을 내기 전에, 다른 연산도 실행하는 방법 ( 동시에 계산 이라 생각해도 됨) - Materialization 보다 저렴하다. (따로 릴레이션을 메모리에 저장할 필요가 없음) - 정렬이나 해쉬 조인에는 적용 불가. - demand driven 과 producer driven 으로 나뉜다. demand driven(lazy driven) : 현재 .. 2019. 11. 30.
[DB] 비트리와 비트맵 인덱스의 장단점 키의 갱신 비용 B-Tree 인덱스구조 : 데이터를 삽입, 삭제할 때 키를 알맞는 곳에 끼워 넣어주면 되기 때문에 비교적 간편하다. Bitmap 인덱스구조 : 모든 비트맵 인덱스들에 갱신작업을 해주어야 하므로 힘들다. 사용하기 좋은곳 B-Tree 인덱스구조 : 컬럼의 값 종류가 다양한 곳에 좋다. Bitmap 인덱스구조 : 컬럼의 값 종류가 적은 곳에 좋다. ( Ex. 성별 : 남/여 , 국가 : 국민 / 외국인 ) - 값 종류가 다양해지면 그에 따른 bitmap 이 무수히 늘어나게된다. 다중 쿼리문 B-Tree 인덱스구조 : 다양한 컬럼이 이용되는 쿼리문에는 비효율적이다. Bitmap 인덱스구조 : 다양한 컬럼이 이용되는 쿼리문에 좋다. - 그저 비트맵끼리 OR / AND 이런거 해버리면 되기 때문이다. 2019. 11. 15.
[DB] DB / DBMS / DBS / DB Application 의 차이 / 개념 DB (DataBase) 데이터들의 집합, 모음 자체를 뜻한다. 단순한 모음이 아니라 일반적으로 잘 정리되어 표준화된 모음을 의미한다. DBMS (DataBase Management System) 사용자들이 데이터베이스에 있는 데이터들을 접근하고 사용하기 위해 쓰이는 시스템이다. DB 자체만을 가지고 데이터를 이용하려면 무척이나 불편하고 힘들것이다. DBMS 에 내장된 질의어들을 통해 사용자들은 DB에 접근할 수 있다. 예) Oracle, Mysql ... 등등 DB Application 데이터베이스가 사용되고 적용되는 것을 의미한다. 생산분야에서는 재고, 주문, 생산 부분에서 DB가 이용될 것이고, 대학교에서는 대학 등록, 학생 관리, 성적들에 DB가 사용된다. 이처럼 데이터베이스가 적용되는 시스템을 .. 2019. 10. 25.