728x90
Chapter05 시간 데이터 저장
들어가며
- 시계열 스토리지
- 크기에 따른 성능 확장 방법에 대한 중요성
- 데이터 접근에 대한 무작위적인 방식 대 순차적 방식의 중요성
- 자동화 스트립트의 중요성
- 현재 가용 기술
- SQL 데이터베이스
- NoSQL 데이터베이스
- 단층 파일 형식
5.1 요구 사항 정의
5.1.1 실시간 데이터와 저장된 데이터
- 정보의 유실 없이 데이터를 줄일 수 있는 경우
- 천천히 변하는 변수
- 상태 변수를 저장한다면 값이 변한 데이터만 기록한다.
- 노이즈가 낀 높은 빈도의 데이터
- 높은 수준의 노이즈는 각 개별 측정의 가치를 떨어뜨린다.
- 사전에 데이터의 종합 집계를 고려해야 한다.
- 오래된 데이터
- 오래된 데이터일수록 활용가능성이 줄어든다.
- 천천히 변하는 변수
5.2 데이터베이스 솔루션
5.2.1 SQL과 NoSQL
- 원래의 SQL 데이터베이스로부터 영향을 받은 데이터의 특성
- 이미 존재하는 데이터의 업데이트가 번번히 발생한다.
- 기본적인 데이터가 정렬되지 않아서 다소 무작위적인 접근이 이루어진다.
- 시계열 데이터의 특성
- 읽기 작업보다 쓰기 작업이 지배적으로 발생한다.
- 데이터의 쓰기, 읽기, 업데이트 작업은 임의의 순서가 아닌 일련의 사건이 일어나는 시간에 관련된 순서에 따라 이루어진다.
- 트랜잭션 데이터보다 훨씬 더 동시성 읽기가 수생될 가능성이 높다.
- 시간 외의 변수를 시본키로 두는 경우는 매우 드물다.
- 개별 데이터 삭제보다 데이터 뭉치를 삭제하는 것이 훨씬 더 일반적이다.
- SQL 데이터 베이스와 NoSQL 데이터 베이스 성능 비교
NoSQL 데이터베이스는 SQL 보다 쓰기 작업에서의 성능이 특히 뛰어나다.
- SQL과 NoSQL을 선택하는 방법
- 시계열에 대해 SQL의 장점
- 시계열이 SQL 데이터베이스에 저장된다면, 해당 데이터베이스에 이미 저장된 관련성을 가진 다른 비시계열 데이터와 손쉽게 연관시킬 수 있다.
- 계층적인 시계열 데이터에는 관계형 테이블이 자연스럽게 들어맞는다. 덕절한 SQL 스키마는 이런 계층을 분명히 설명해주고 관련 시계열들의 그룹화를 가능하게 해준다. 이와는 대조적으로 NoSQL 솔루션에는 이러한 데이터가 낮은 체게성을 가진 채 여기 저기 흩어지기 쉽다.
- SQL 데이터 베이스에 가장 잘 맞는 트랙잭션 데이터에 기반하여 시꼐열을 만든다면, 시계열을 동일 데이터 베이스에 저장하여 쉬운 검증 및 상호 참조 등의 이점을 누릴 수 있다.
- 시계열에 대해 SQL의 장점
- 시계열에 대해 NoSQL의 장점
- 쓰기 속도가 빠르다.
- 미래 데이터를 아직 충분히 알지 못해서 지능적이며 견고한 스키마 설계가 불가능한 경우에 유리하다.
- 비전문가도 즉시 사용 가능하다. 이상해 보이거나 평범한 수준의 스키마를 디자인을 하게 될 가능성이 적어서 비전문가가 사용하더라도 어느 정도 성능은 보장된다.
5.2.2 인기 있는 시계열 데이터베이스와 파일 솔루션
- 시계열에 특화된 데이터베이스 및 관련된 모니터링 도구
- 인플럭스 DB
- 프로메테우스
- 범용 NoSQL 데이터베이스
- 몽고 DB
5.3 파일 솔루션
5.3.1 넘파이
- 데이터가 순수 수치형으로만 구성되어 있다면, 수치형 데이터 보관에 널리 사용되는 방식 중 하나인 파이썬의 넘파이 배열을 고려해볼 수 있다.
5.3.2 팬더스
- 손쉬운 데이터의 레이블링, 서로 다른 시계열 데이터의 저장, 또는 둘 다 를 모두 하고 싶다면 덜 간결하더라고 보다 유연한 팬더스의 데이터프레임을 고려해봐야 한다.5.3.3 표준 R에 동등한 것
- R 개체는 기본으로 .Rds 와 .Rdata 형식으로 저장된다.
- 이 둘은 이진 파일 형식이라 텍스트 기반 형식보다 압축과 I/O 측면에서 효율적이다.
5.3.4 Xarray
- 차원에 명명할 수 있는 기능 제공
- 넘파이 같이 벡터화된 수학적 연산 제공
- 팬더스같이 그룹화 연산의 제공
- 데이터베이스같이 시간 범위 기반의 색인 기능 제공
- 다양한 파일 스토리지의 옵션 제공
위 내용은 경희대학교 교내 동아리 KHUDA 에서 공부한 내용을 바탕으로 작성했습니다. 😜
공부한 책은 아래의 링크를 참고해주세요 !
'AI > Machine Learning' 카테고리의 다른 글
MF (Matrix Factorization) with SGD (0) | 2023.03.05 |
---|---|
[Practical Time Series Analysis (실전 시계열 분석)] Chapter 06 시계열의 통계 모델 (0) | 2022.03.23 |
[Practical Time Series Analysis (실전 시계열 분석)] Chapter 04 시계열 데이터의 시뮬레이션 (0) | 2022.03.22 |
[Practical Time Series Analysis (실전 시계열 분석)] Chapter 03 시계열의 탐색적 자료 분석 (0) | 2022.03.20 |
[DACON] 문화 | 영화 관객수 예측 모델 개발 (0) | 2022.03.05 |