Skip to content

Commit eba517d

Browse files
committed
Create 240122 TIL
1 parent 5c55826 commit eba517d

File tree

1 file changed

+80
-0
lines changed

1 file changed

+80
-0
lines changed
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
+++
2+
author = "Seorim"
3+
title = "데이터 처리(1): 실시간 데이터 처리"
4+
slug = "240122-1"
5+
date = 2024-01-22T16:29:58+09:00
6+
7+
categories = [
8+
"DevCourse",
9+
]
10+
tags = [
11+
"TIL", "Kafka", "Spark Streaming"
12+
]
13+
+++
14+
15+
<style>
16+
g1 { color: #79AC78 }
17+
g2 { color: #B0D9B1 }
18+
g3 { color: #D0E7D2 }
19+
g4 { color: #618264 }
20+
o1 { color: #F9B572 }
21+
w1 { color: #FAF8ED }
22+
</style>
23+
24+
# 구글의 기술 공유가 데이터 처리 분야에 미친 영향
25+
26+
## Page Rank
27+
28+
- 대용량 컴퓨팅 인프라와 소프트웨어가 필요해진 시점
29+
30+
# 데이터 처리 단계
31+
32+
## 데이터 수집 (Data Collection)
33+
34+
## 데이터 저장 (Data Storage)
35+
36+
> Data Warehouse -> Data Lake -> Cloud Data Platform / Messaging Queue -> Data Mesh
37+
38+
# 데이터 처리 (Data Processing)
39+
40+
> Batch Processing -> Realtime(& Semi Realtime) Processing
41+
42+
## 용어 및 개념 정리
43+
44+
- Throughput : 단위 시간 동안 처리할 수 있는 데이터 양
45+
- 배치 시스템에서 중요
46+
- Latency : 데이터를 처리하는 데 걸리는 시간
47+
- 실시간 시스템에서 더 중요
48+
- Bandwidth : Throughput x Latency
49+
50+
- SLA(Service Level Agreement) : 서비스 제공업체와 고객간의 계약 또는 합의사항으로, 사내 시스템 사이에서도 정의됨
51+
- `uptime` 99.9% 보장 : 1년의 0.1%인 8시간 45.6분을 제외하고는 항상 작동함을 보장
52+
- 99%(or average) of API's `latency` = 0.5s 보장
53+
- `freshness` of data
54+
55+
## Lambda Architecture
56+
57+
## 배치 처리(Batch Processing)
58+
59+
> 주기적으로 데이터를 이동시키거나 처리하는 것
60+
61+
- Throughput 중요
62+
- 주기는 보통 `hourly, daily`이며 짧은 경우엔 5~10분 정도
63+
- 주기가 이보다 짧을 경우 배치 처리를 위한 프레임워크에서 처리하기엔 적절하지 않음
64+
65+
### 시스템 구조
66+
67+
- Distributed File System : HDFS, S3
68+
- Distributed Processing System : MapReduce, Spark (DataFrame, SQL), ...
69+
- Data Process Scheduling : Airflow
70+
71+
## 실시간 처리(Realtime Processing, Streaming Processing)
72+
73+
> 연속적인 데이터를 처리하는 것
74+
75+
- Latency 중요
76+
- realtime과 semi-realtime(micro batch)로 나뉨
77+
78+
# 실시간 데이터 종류와 사용 사례
79+
80+
# 실시간 데이터 처리 과정의 challenge

0 commit comments

Comments
 (0)