Batch vs. Realtime for Data analysis

Comparison of Batch processing and Realtime Processing — Murry Jeong

그림을 보시면서 간단하게 Batch processing과 Realtime processing의 차이를 비교해 보겠습니다. 조금 더 이해를 돋기 위해 트레일러와 컨베이어 벨트로 나타내 보았는데 개념이 쉽게 이해가 가시나요?

Realtime은 한번에 처리하는 데이터의 크기가 작아지는 대신 그로인해 Query의 속도가 상대적으로 빠르고 계속적으로 최신의 데이터를 포함하여 바로바로 결과를 얻을 수 있는 장점이 있습니다. 그래서 Realtime은 선 처리, 후 저장을 하는 것이고 Batch는 선 저장, 후 처리하는 것이죠.

Mechanism 그림을 보시면, Realtime에서는 수집된 Data를 저장하기 전에 Query가 가능한 상태로 바로 처리하고, 그 후에 저장하게 됩니다.

배치는 한번에 큰 데이터를 돌려 결과를 얻기 쉽지만 Query할 때 처리를 시작하기 때문에 결과를 얻기까지의 시간이 지연될 수 있습니다.

물론, 엄밀히 말해 Realtime도 Micro-batch라고 볼 수 있습니다. 단순히 단위를 작게 나누어 미리 자주 처리하는 것 뿐인 거죠.

Reference
http://www.dbguide.net/knowledge.db?cmd=specialist_view&boardUid=180895&boardConfigUid=108&boardStep=0&categoryUid=