본문 바로가기

학습장/Data Engineering26

[DW] OLAP 정의와 목적 OLAP 정의와 목적 최종 사용자가 다차원 정보에 직접 접근하여 대화식으로 정보를 분석하여 의사결정에 활용하는 과정 일반적으로 운영 데이터는 수집과 갱신에 초점을 맞추어 설계되어 최종 사용자(비즈니스유저)가 직접 사용하기는 불편 반면, OLAP 환경에서는 사용자가 쉽게 이해할 수 있고 조작하기 쉬운 형태로 존재 DW는 어떻게 데이터를 구축할 것인가에 초점, OLAP은 DW를 어떻게 활용할 것인가에 초점 DW는 OLAP을 위한 주요 데이터 원천 OLTP는 트랜잭션 단위로 처리하는 것에 중점이라면, OLAP은 최적화된 조회에 목적 CUBE 선계산 값을 미리 산출하여 저장하는 연산 차원 테이블들과 팩트 테이블을 활용하여 분석을 위해 집계된 데이터 구조 다차원 데이터셋 (임의의 수의 차원을 가질 수 있다) 차원.. 2022. 11. 18.
[DB] index 등 기본개념 정리 index 컬럼(또는 컬럼들)의 값과 해당 레코드가 저장된 주소를 키와 값의 쌍으로 갖고 있음 컬럼 값을 주어진 순서로 미리 정렬해서 보관 SortedList - 인덱스 / ArrayList - 데이터파일 SortedList 자료구조는 데이터가 저장될 때마다 항상 값을 정렬해야 하므로 저장하는 과정이 복잡하고 느리지만, 이미 정렬되어 있어서 아주 빨리 원하는 값을 찾아올 수 있다. 레코드 주소를 갖고 있는, 테이블과 매핑되어있는 오브젝트 "레코드 주소"는 DBMS 종류나 MySQL의 스토리지 엔진에 따라 의미가 다르다. 물리적인 레코드 주소 : 오라클 rowid : 데이터를 삽입할 때 DB 내부에서 자동적으로 생성하는 값, 해당 row의 고유한 주소 값 (MyISAM) 주의사항 DML시 인덱스도 수정되어.. 2022. 11. 8.
spark 실행구조 Spark 대용량 데이터를 빠르게 처리하기 위한 인메모리 기반의 분산 데이터 처리 엔진 클러스터 환경에서 데이터를 병렬 처리하는 라이브러리 집합 spark 등장 배경은 MapReduce 단점 보완하기 위해 ?? 등장배경 "왜 갑자기 병렬 데이터 처리에 열광하게 되었을까" 와 같음 예전엔 CPU등 하드웨어 성능이 해마다 눈에 띄게 발전함 → 2005년쯤 부터는 물리적인 한계로 성능향상이 점점 둔화됨 (단일 프로세서의 성능이 급격하게 상승하다 2005년 이후 둔화) 이는 멀티 코어 프로세서가 탄생하는 계기가 됨, 하드웨어 엔지니어들은 병렬 CPU 코어를 추가하는 방향으로 선회 반면, 데이터를 저장하는 하드웨어의 가격은 저렴해짐 → 데이터 저장비용이 저렴해지며 저장할 데이터가 대용량화 됨 새로운 처리엔진과 프.. 2022. 10. 31.
[spark] RDD란? RDD (Resilient Distributed Dataset) 스파크의 데이터 처리 모델 RDD는 대량의 데이터를 요소로 가지는 분산 컬렉션 클러스터 환경에서 분산처리를 전제로 설계 되었음 내부는 파티션이라는 단위로 나뉨 스파크에서는 '파티션'이 분산처리 단위 RDD가 데이터를 처리하는 방식 변환 (Transformation) ( ex. Filter, groupBy, map, ..) RDD를 가공하여 새로운 RDD를 얻는 처리 데이터가 이미 키값으로 파티셔닝 되어 있거나,, 하나의 노드 내에서 모두 처리할 수 있는 작업 .. 데이터 양이 적은 경우?, 변환 전의 RDD가 가지는 요소를 같은 RDD의 다른 요소와 함께 처리하는 변환 키와 밸류의 쌍을 요소로 갖는 RDD 같은 키를 갖는 요소를 한데 모아 .. 2022. 10. 24.
728x90