본문 바로가기
반응형

데이터베이스6

[쉽게 설명한] 데이터 웨어하우스 데이터 웨어하우스(data warehouse)란 영어 그대로 데이터 창고를 말한다. 그러면 데이터 창고가 왜 필요할까? 창고는 대량의 물건을 쌓아두고 사용하기 위한 장소이다. 데이터 웨어하우스도 똑같다. 대규모의 데이터를 처리(사용)할 때 단일(작은) 데이터베이스로는 충분하지 않아 데이터 창고를 사용한다. 데이터를 쌓아두고 사용하는 장소는 데이터 웨어하우스 말고 데이터 레이크, 데이터 마트도 있지만 모두 사용목적이 다르다. 이 챕터에서는 데이터 웨어하우스를 알아보자! 데이터 웨어하우스의 가장 큰 사용목적은 비즈니스 관점에서 사용자(고객, 직원 등) 또는 부서(마케팅, HR 등)에 의사결정을 지원하기 위해 방대한 데이터를 효율적으로 통합하여 분석 및 보고하는 것이다. 무슨 말인지 아래 그림을 보면서 이해하.. 2020. 6. 15.
[쉽게 설명한] 데이터베이스 정규화 정규화, 비정규화는 데이터베이스 설계에 사용되는 프로세스이다. 쉽게 말하면 정규화는 여러 규칙(제약조건)을 사용해 데이터베이스를 완벽하게(이상현상 없게) 설계하는 방법이고 이를 통해 데이터베이스에 저장된 데이터의 무결성을 향상시킨다. 비정규화는 데이터베이스의 완벽한 구조설계를 포기하고 데이터의 무결성을 떨어트리는 대신 데이터베이스의 읽기(Read)성능 향상을 위한 설계 방법이다. (정규화 비정규화에 대한 정의는 조금씩 다르지만 내용은 같으니 걱정하지 말자.) 이 챕터에서는 정규화(Normalization)를 살펴보자(비정규화 링크는 여기) 정규화 방법은 문제가 생길 수 있는 커다란 테이블을 문제가 없도록 작은 테이블로 나누는 것이다. 하지만 나누는 정도에 따라 규칙(제약조건)이 있고 그 정도를 정규형(N.. 2020. 6. 11.
[쉽게 설명한] 데이터베이스 비정규화, 역정규화 이 챕터에서는 비정규화를 살펴보자(정규화 링크는 여기) 사실 역정규화와 비정규화가 같은 의미로 쓰이는 것 같지만 엄연히 말하면 다르다. 비정규화(Unnormalized form)는 정규화된 테이블(릴레이션)을 읽기성능 향상을 위해 테이블을 다시 합치는 방법을 말하고 역정규화(Denormalization)는 정규화된 테이블을 비정규화 상태로 만들기 위한 방법 중 하나이다(비정규화가 더 포괄적임). (※역정규화, Entity합체, Entity분해 등 여러 방법이 있지만 역정규화가 일반적이다) 하지만 여러군데 자료들을 찾아보니 비정규화하고 역정규화를 같은 의미(여러 비정규화 방법 중 역정규화 의미 쪽으로)로 사용하는 곳이 많았다. (※혹시나 해서 용어 구분을 했지만 너무 신경 쓰지 말자. 어차피 역정규화 내용.. 2020. 6. 10.
[쉽게 설명한] OLTP, OLAP OLTP, OLAP는 약자가 비슷해 보이지만 사용 용도가 전혀 다른 정보시스템 용어이다. 먼저 OLTP는 온라인 트랜잭션 처리(Online transaction processing)의 약자로 여기서 트랜잭션은 관계형 데이터베이스 때 공부했던 트랜잭션과 같은 말이다. OLTP의 가장 큰 목적은 간단한 쿼리를 이용해 빠르게 데이터를 처리(INSERT, UPDATE, DELETE)하는 것이다. 온라인 서점을 예로 든다면 새로운 책이 나왔다 → 목록에 책이름, 가격, 수량 추가(INSERT) 기존 베스트셀러 책이 추가 입고되었다 → 책 수량 변경(UPDATE) 책 판매가 중단됐다 → 목록에서 책 정보 삭제(DELETE) 이렇게 OLTP는 데이터베이스를 편리하게 관리(운영)하도록 도와준다. 쇼핑몰 같이 OLTP를.. 2020. 6. 9.
[쉽게 설명한] 정형, 비정형, 반정형 데이터 데이터베이스라는 말은 누구나 들어봤을 것이다. 데이터를 저장하는 장소? 맞다. 그럼 데이터베이스에는 어떤 데이터를 저장할 수 있을까? 숫자? 텍스트(글자)? 그림(이미지)? 음성(소리)? 영상? 파일? 이렇게 데이터의 종류는 너무나도 많다. 위 그림에서 숫자, 글자와 같이 미리 만들어진 형식 또는 틀에 저장되는 데이터를 정형 데이터라고 한다. 그냥 행과 열로 이루어진 표에 저장할 수 있는 데이터를 정형 데이터라 보면 된다. 엑셀, 구글 스프레드시트, 워드에 저장하는 데이터라고 생각하자. 그리고 그림, 음성과 같이 데이터 하나하나가 데이터 뭉치(객체)로 되어있는 데이터를 비정형 데이터라고 한다. 무슨 말이냐면 우리가 보기에는 그림, 음성 데이터도 표에 삽입할 수 있는 하나의 데이터처럼 보이지만 분석하기 위.. 2020. 6. 3.
[쉽게 설명한] 데이터 모델링 데이터모델링은 아주 기초적인 내용이지만 개념을 전혀 모르면 쓸모없는(효율적이지 않은) 데이터베이스를 만들어 버릴 수도 있기 때문에... 반드시 공부하고 넘어가자. 하지만 내용이 어렵지 않고 데이터베이스를 만들면서 자연스럽게 익숙해지니 걱정 안 해도 된다! 먼저, 모델링이란 말이 뭘까? 많이 사용하는 단어지만 뭔가 추상적인 단어라 감이 안 올 수 있다. 예전에 수강했던 머신러닝 수업에서 강사님은 모델링을 [옷의 사이즈를 찾는 과정]에 비유하셨다. (※TIP - 머신러닝 모델링의 결과는 함수이고, 데이터 모델링의 결과는 데이터베이스다) 나에게 딱 맞는 옷을 사면 좋겠지만 의류회사는 나 혼자만을 위해서 딱 맞는 옷을 만들어 줄 수 없다. 최대한 많은 사람들에게 팔 수 있도록 여러 체형을 측정해서 일정 범위별 .. 2020. 6. 2.
반응형