표제지
목차
국문초록 8
ABSTRACT 9
제1장 서론 10
1.1. 연구 배경 및 목적 10
1.2. 연구 내용 및 구성 11
제2장 관련 연구 12
2.1. 실시간 데이터 및 NoSQL 등장 12
2.2. NoSQL 정의 및 구조방식 13
2.2.1. NoSQL 정의 13
2.2.2. CAP이론 15
2.2.3. NoSQL 데이터 모델 개요 및 분류 18
2.3. RDBMS와 NoSQL 비교 20
제3장 데이터베이스 설계 21
3.1. 기상데이터를 활용한 데이터베이스 설계 21
3.1.1. 기상데이터 예제 21
3.2. 데이터모델링 25
3.2.1. RDBMS 모델링 25
3.2.2. NoSQL 데이터모델링 27
제4장 데이터베이스 구축 및 성능 측정 31
4.1. 성능테스트 환경 31
4.1.1. 데이터베이스 서버 환경 31
4.1.2. MariaDB 입력 데이터 32
4.1.3. Cassandra 입력 데이터 36
4.2. 성능테스트 시나리오 38
4.2.1. MariaDB 성능테스트 환경 38
4.2.2. Cassandra 성능테스트 환경 40
4.3. 성능테스트 결과 43
제5장 결론 49
참고문헌 52
[표 2-1] CAP 이론 15
[표 2-2] BASE 이론 16
[표 2-3] NoSQL 데이터 모델 19
[표 2-4] NoSQL과 RDBMS 비교 20
[표 3-1] 기후 변환 정보 관측 주기 24
[표 3-2] Cassandra Column Family 정의 30
[표 4-1] 가상 서버 성능 32
[표 4-2] AREA 테이블 입력 데이터 32
[표 4-3] ELEMENT 테이블 입력 데이터 33
[표 4-4] LOCATION 테이블 입력 데이터 34
[표 4-5] ELEMENT_CONTENT 테이블 입력 데이터 35
[표 4-6] SELECT SQL Query문 39
[표 4-7] MariaDB 성능 테스트 Query 조회 결과 40
[표 4-8] SELECT CQL Query문 41
[표 4-9] 성능테스트 결과 46
[그림 2-1] CB INSIGHTS의 NoSQL 투자 증가 그래프 13
[그림 2-2] CAP 모델에 따른 NoSQL 솔루션 특성 비교 17
[그림 2-3] NoSQL 모델의 복잡성과 확장성 비교 18
[그림 2-4] Column Family를 사용하는 Cassandra의 데이터 모델 19
[그림 3-1] 지상관측자료 22
[그림 3-2] 기상 공공데이터 RDBMS 논리 모델 25
[그림 3-3] 성능비교를 위한 RDBMS 논리 모델 26
[그림 3-4] 성능비교를 위한 RDBMS 물리 모델 27
[그림 3-5] 성능비교를 위한 NoSQL 모델 28
[그림 3-6] 예제 저장 데이터(Wide Row 형식) 28
[그림 3-7] 실 저장 데이터 형식 29
[그림 3-8] Cassandra 물리 데이터 모델 29
[그림 4-1] CF_CLIMATEINFO ColumnFamily 입력 데이터 36
[그림 4-2] RDBMS 성능테스트 환경 38
[그림 4-3] Cassandra 성능테스트 환경 41
[그림 4-4] CQL Query 출력 결과 42
[그림 4-5] 성능테스트 실행 43
[그림 4-6] 성능테스트를 위한 thread생성 JAVA 코드 44
[그림 4-7] MariaDB SELECT를 위한 JAVA 코드 45
[그림 4-8] Cassandra SELECT를 위한 JAVA 코드 45
[그림 4-9] 소요시간 평균 결과 차트 48
[그림 4-10] 평균 속도 차이 48