- 본 게시물은 O'REILLY의 SQL로 시작하는 데이터 분석을 읽고 재구성한 자료입니다. 내용 참고 시 출처 기입을 해주시고, 무단으로 도용 및 배포는 되도록 삼가하여 주시기 바랍니다.
데이터 분석은 마케터, 프로덕트 매니저, 비즈니스 분석가 등 여러 분야의 사람들이 활용
⇒ 더 나은 의사결정을 목적으로 하며, 갈수록 자동화된 분석이 증가하는 추세임.
⇒ 마케팅, 영업, 유통, 제품개발, 사용자 경험 설계, 지원센터, 인적관리 등 다양한 목적으로 사용됨.
BI 도구 => 보고서나 대시보드 작성을 위한 소프트웨어
분석이란 호기심을 가지고 '왜' 그 숫자, 결과가 나왔는지 질문을 던지는 일이며, 다양한 패턴과 현상들, 비즈니스, 인간 행동에 대해 이해하기 위한 단서를 찾고 해석하는 일
데이터베이스와 대화하기 위한 언어
데이터베이스에 접근하고 데이터를 가져와서 처리하는 데 사용함.
데이터베이스 설명
- 스키마 : 데이터베이스의 구성요소이자 다른 오브젝트를 포함하는 하나 이상의 스키마가 있음. (스키마의 오브젝트는 테이블, 뷰, 함수)
- 테이블 : 데이터를 저장하는 필드와 하나 이상의 인덱스가 있으며, 인덱스는 데이터를 효율적으로 가져오도록 하는 특수한 데이터 구조
- 인덱스 : 주로 데이터베이스 관리자가 지정
- 뷰 : 테이블과 동일하게 참조할 수 있도록 저장된 쿼리이며, 함수에서 자주사용하는 계산이나 절차를 미리 저장해두고 필요할 때 쿼리에서 쉽게 호출해 사용함.
데이터베이스와 통신하기 위한 각 다른 용도의 언어
DQL : 주로 다루는 SQL 서브언어로, 데이터 베이스에서 원하는 데이터를 가져오기 위한 '쿼리'를 작성하는데 사용
DDL : 데이터베이스에서 테이블, 뷰, 사용자 및 기타 오브젝트를 생성하고 수정하는데 사용(내용이 아닌 구조를 생성하거나 수정함)
DCL : 접근 제어에 사용
DML : 데이터 자체를 다루는 데 사용하며, 임시 테이블이나 샌드박스 테이블을 다루거나 데이터베이스 소유자로서 직접 관리하는 테이블을 다룰 때 사용
뛰어난 연산처리 능력, 많이 사용되고 있으며, 유연하게 사용 가능한 데이터 분석 도구
데이터베이스와 인터랙션하고 데이터를 불러오는 작업을 가능하게 함.
스프레드시트, BI 도구 및 시각화 도구 등 소프트웨어 및 파이썬, R 같은 코딩 언어에서도 데이터베이스와 연동하기 위해 SQL 사용
데이터변환, 연산 수행 가능
코딩언어
- R : 통계 및 그래프를 위한 언어
- 파이썬 : 데이터를 다ㅇ루는 데 강점 있는 범용 프로그래밍 언어
차이점
1) 코드가 실행되는 장소와 요구되는 컴퓨팅 성능
- SQL : 데이터베시으 서버에서 실행되며 모든 컴퓨팅 자원의 이점을 활용
- 코딩언어 : 로컬에서 실행되므로 컴퓨팅 자원이 해당 로컬의 성능에 좌우되어 한정적
2) 데이터가 저장되고 구성되는 방식
- SQL : 관계형 데이터베이스는 데이터를 테이블에 행과 열로 구분해 저장하므로 SQL 쿼리를 작성할 때 모든 데이터 구조가 맞게 저장되어있다고 가정함.
- 코딩언어 : 변수, 리스트, 딕셔너리 등 다양한 방법으로 데이터를 저장함 -> 사용법을 학습하는데 어려움
3) 반복의 유무, 특정 조건을 만족할 때까지 지정된 명령을 계속해서 ㅌ되풀이 하는 것
- SQL : 반복을 위한 코드가 따로 없어도 내부적으로 데이터 셋을 반복함.
단점
- 코딩언어 : 파일에서 데이터를 읽어와 로컬에 저장하거나 서버나 웹사이트에 저장된 파일에 쉽게 접근하능하며, 일회성 프로젝트에 사용하기 편리함
- SQL : 데이터가 데이터베이스에 저장되어 있어야 함.
자원시스템 -> 데이터 웨어하우스 -> 쿼리와 분석 -> 발표(시각화, 보고서, 대시보드, 논문)
1) 자원시스템 : 데이터 생성
2) 데이터웨어하우스 : 분석을 위해 데이터를 데이터베이스로 옮기는 단계
데이터 웨어하우스데이터 스토어데이터 마트데이터 레이크 3) 쿼리와 분석