๊ฒฝ์ ์ฐ์๊ฐ ๋ฐ์ดํฐ์ ์์ ๋, ๋ฐ์ดํฐ๋ฅผ ์์งํ๊ณ , ๋ณํํ๊ณ , ์ ์ฅํ๋ฉฐ, ์๊ฐํํ๋ ํ๋ซํผ์ ๋น์ ์ด ๊ตฌ์ถํ ๊ฐ์ฅ ์ค์ํ ์์๊ฐ ๋ ๊ฒ์ ๋๋ค.

๊ท์ฌ์ ๋ฐ์ดํฐ๋ CRM, ERP, ์ฒญ๊ตฌ, ์ง์ ํฐ์ผ, ์ผ์ ๋ฐ์ดํฐ, ํ์ฌ API ๋ฑ ์์ญ ๊ฐ์ ์์คํ ์ ํฉ์ด์ ธ ์์ผ๋ฉฐ, ์ผ์ฃผ์ผ๊ฐ ์๋์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ถ์ถํ์ง ์๊ณ ๋ ๊ธฐ๋ณธ์ ์ธ ๋น์ฆ๋์ค ์ง๋ฌธ์ ๋ตํ ์ ์์ต๋๋ค. ๋ณด๊ณ ์๋ ์คํ๋ ๋์ํธ์์ ์์ฑ๋๊ณ , ๋ถ์๊ฐ๋ ๋ฐ์ดํฐ ์์ง๋์ด๋ง์ด ๋ฐ์ดํฐ์ ์ ์ค๋นํ ๋๊น์ง ๋ฉฐ์น ์ ๊ธฐ๋ค๋ฆฌ๋ฉฐ, "๋จ์ผ ์ง์ค ๊ณต๊ธ์"์ ๋๊ตฐ๊ฐ๊ฐ ๋ง์ง๋ง์ผ๋ก ์ฟผ๋ฆฌํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋๋ค. ๋ชจ๋ ์์ค๋ก๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ์์งํ๊ณ , ๋ถ์ ์ค๋น๋ ๋ชจ๋ธ๋ก ๋ณํํ๋ฉฐ, ๋์๋ณด๋์ AI/ML ์์คํ ๋ชจ๋์ ์ธ์ฌ์ดํธ๋ฅผ ์ ๊ณตํ๋ ๋ฐ์ดํฐ ํ๋ซํผ์ด ํ์ํฉ๋๋ค. ์ด๊ฒ์ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค ํ๋ก์ ํธ๊ฐ ์๋๋ผ ๋ฐ์ดํฐ๋ฅผ ํ์ฉ ๊ฐ๋ฅํ ์กฐ์ง ์์ฐ์ผ๋ก ๋ง๋๋ ํ๋ซํผ์ ๋๋ค.
Explore more design patterns and system architectures
MicrocosmWorks๋ ๊ณ์ธตํ ์คํ ๋ฆฌ์ง ์ํคํ ์ฒ๋ฅผ ๊ตฌํํฉ๋๋ค. ์ฌ๊ธฐ์ ํซ ๋ฐ์ดํฐ๋ ClickHouse ๋๋ Apache Druid์ ๊ฐ์ ๋น ๋ฅธ ์ฟผ๋ฆฌ ์์ง์ ์ ์ฅ๋๊ณ , ์ ๋ฐ์ดํฐ๋ Trino ๋๋ Athena๋ฅผ ํตํด ์ฟผ๋ฆฌ๋๋ ๊ฐ์ฒด ์คํ ๋ฆฌ์ง์ ์ปฌ๋ผํ ํ์์ผ๋ก ์ด๋ํ๋ฉฐ, ์ฝ๋ ๋ฐ์ดํฐ๋ ์๋ช ์ฃผ๊ธฐ ์ ์ฑ ์ด ์ ์ฉ๋ ๋น์ฉ ์ต์ ํ๋ ์คํ ๋ฆฌ์ง ํด๋์ค์ ๋ณด๊ด๋ฉ๋๋ค. ์ ํฌ๋ ์ ์คํธ๋ฆผ ์์คํ ์ด ํ๋ซํผ์ ๊ณผ๋ถํ๋ฅผ ์ฃผ๋ ๊ฒ์ ๋ฐฉ์งํ๋ ์ญ์ ์ ์ด(backpressure controls)๋ฅผ ์ฌ์ฉํ๋ ์คํธ๋ฆฌ๋ฐ ์์ง๊ณผ, ๋ฐ์ดํฐ ๋ณผ๋ฅจ์ด ์ฆ๊ฐํ๋๋ผ๋ ์ฟผ๋ฆฌ ์ฑ๋ฅ์ ์ผ๊ด๋๊ฒ ์ ์งํ๋ ์ง๋ฅํ ํํฐ์ ๋ ๋ฐ ์์ถ ์ ๋ต์ ๊ฒฐํฉํฉ๋๋ค. ์ด๋ฌํ ๊ณ์ธตํ ์ ๊ทผ ๋ฐฉ์์ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ๋จ์ผ ๊ณ ์ฑ๋ฅ ๊ณ์ธต์ ๋ณด๊ดํ๋ ๊ฒ์ ๋นํด ์ผ๋ฐ์ ์ผ๋ก ์คํ ๋ฆฌ์ง ๋น์ฉ์ 70-85% ์ ๊ฐํฉ๋๋ค.
MicrocosmWorks๋ ๊ณ ๊ฐ์ ์ผ๊ด์ฑ ์๊ตฌ์ฌํญ์ ๋ฐ๋ผ ๋๋ค(lambda) ๋๋ ์นดํ(kappa) ์ํคํ ์ฒ๋ฅผ ๊ตฌ์ถํฉ๋๋ค. ๋๋ค๋ ์๋น ๊ณ์ธต์์ ๋ณํฉ๋๋ ๋ณ๋์ ๋ฐฐ์น ๋ฐ ์คํธ๋ฆฌ๋ฐ ํ์ดํ๋ผ์ธ์ ์ฌ์ฉํ๋ ๋ฐ๋ฉด, ์นดํ๋ ๋ชจ๋ ๊ฒ์ ์คํธ๋ฆผ์ผ๋ก ์ฒ๋ฆฌํ๊ณ ๋ค์ํ ์ฟผ๋ฆฌ ํจํด์ ์ํ ๋ทฐ๋ฅผ ๊ตฌ์ฒดํํฉ๋๋ค. ๋๋ถ๋ถ์ ๊ณ ๊ฐ์๊ฒ๋ Apache Flink ๋๋ Spark Structured Streaming์ ํ์ฉํ ํตํฉ ์คํธ๋ฆฌ๋ฐ ์ ๊ทผ ๋ฐฉ์์ ๊ถ์ฅํฉ๋๋ค. ์ด๋ ์ค์๊ฐ ์๋น ์คํ ์ด(Redis, Druid)์ ๋ฐฐ์น ์ต์ ํ๋ ๋ ์ดํฌํ์ฐ์ค(Delta Lake, Apache Iceberg) ๋ชจ๋์ ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋กํฉ๋๋ค. ์ด ๋ฐฉ์์ ๊ธฐ์กด์ ๋๋ค ์ํคํ ์ฒ๊ฐ ๊ฐ์ง ์ด์ค ํ์ดํ๋ผ์ธ ์ ์ง๋ณด์ ๋ถ๋ด์ ์์ ๋ฉด์ ์ด ๋จ์ ๋ฏธ๋ง์ ๋์๋ณด๋ ์ฟผ๋ฆฌ์ ์ฌ๋ฌ ์๊ฐ ์์๋๋ ๋ถ์ ์ํฌ๋ก๋ ๋ชจ๋๋ฅผ ์ง์ํฉ๋๋ค.
MicrocosmWorks๋ ๋ชจ๋ ๋ณํ ๊ฒฝ๊ณ์์ ์คํค๋ง ์ค์, null ๊ฐ ๋น์จ, ๊ฐ ๋ถํฌ, ์ฐธ์กฐ ๋ฌด๊ฒฐ์ฑ ๋ฐ ์ต์ ์ฑ์ ๊ฒ์ฆํ๋ Great Expectations ๋๋ dbt ํ ์คํธ์ ๊ฐ์ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ ํ์ง์ ์ผ๊ธ ํ์ดํ๋ผ์ธ ์คํ ์ด์ง๋ก ๊ตฌํํฉ๋๋ค. ์ฐ๋ฆฌ๋ ๋ฌธ์ ๊ฐ ์ฆ์ ๋ํ๋๋ ๋ฐ์ดํฐ ํ์ง ๋์๋ณด๋๋ฅผ ๊ตฌ์ถํ๊ณ , ์ ์คํธ๋ฆผ ๋ฐ์ดํฐ ํ์ง์ด ํ์ฉ ๊ฐ๋ฅํ ์๊ณ๊ฐ ๋ฏธ๋ง์ผ๋ก ๋จ์ด์ง ๋ ๋ค์ด์คํธ๋ฆผ ์ฒ๋ฆฌ๋ฅผ ์ค๋จ์์ผ ์๋ชป๋ ๋ฐ์ดํฐ๊ฐ ํ๋ซํผ์ ํตํด ์ ํ๋๋ ๊ฒ์ ๋ฐฉ์งํ๋ ์๋ํ๋ ํ๋ก ์ฐจ๋จ๊ธฐ๋ฅผ ๊ตฌ์ถํฉ๋๋ค. ์์ฐ์์ ์๋น์ ๊ฐ์ ๋ชจ๋ ๋ฐ์ดํฐ ๊ณ์ฝ์ ์์ ์ฑ, ์ ํ์ฑ ๋ฐ ์ ์์ฑ์ ๋ํ SLOs์ ํจ๊ป ๋ฒ์ ๊ด๋ฆฌ๋๋ ์คํค๋ง์ ์ฝ๋ฉ๋ฉ๋๋ค.
MicrocosmWorks๋ 3-5๋ช ์ ์์ง๋์ด๋ก ๊ตฌ์ฑ๋ ํ๋ซํผ ํ์ด ingestion pipelines, compute clusters, storage layers, query engines๊ณผ ๊ฐ์ ๊ณต์ ์ธํ๋ผ๋ฅผ ์์ ํ๊ณ , ๋๋ฉ์ธ ํ์ ํ๋ซํผ์ ์ ํ ์๋น์ค ์๋น์๋ก์ ์์ฒด์ ์ธ data models, transformations, quality rules๋ฅผ ์์ ํ๋๋ก ๊ถ์ฅํฉ๋๋ค. ์ฐ๋ฆฌ๋ ๊ณ ๊ฐ์ด naming conventions, testing practices, deployment patterns์ ๋ํ ๊ณต์ ๋ ํ์ค์ ๊ฐ์ถ data engineering guild ๋ชจ๋ธ์ ๊ตฌ์ถํ์ฌ, ํ๋ซํผ์ด ์ผ๊ด์ฑ ์๋ ๊ตฌํ์ ๋๋๊ธฐ๊ฐ ๋๋ ๊ฒ์ ๋ฐฉ์งํ๋๋ก ๋์ต๋๋ค. ์์ ํ ํ๋ซํผ ํ์ ๊ตฌ์ถํ ์ค๋น๊ฐ ๋์ง ์์ ์กฐ์ง์ ์ํด, MicrocosmWorks๋ ํ๋ก์ ํธ์ knowledge transfer๋ฅผ ํฌํจํ ์๊ฐ๋น $15-$45์ ๋น์ฉ์ผ๋ก managed platform engineering์ ์ ๊ณตํฉ๋๋ค.
MicrocosmWorks๋ ์๋ก์ด data๊ฐ ๋ ๊ฑฐ์ warehouse์ ํ๋ platform์ผ๋ก ๋์์ ํ๋ฅด๋๋ก ํ๋ dual-write migrations์ ์คํํ๋ฉฐ, consumers๋ฅผ ์ ํํ๊ธฐ ์ ์ ๋ systems ๊ฐ์ query results๋ฅผ ๋น๊ตํ์ฌ ์ ํ์ฑ์ ๊ฒ์ฆํ๋ automated reconciliation jobs์ ํฌํจํฉ๋๋ค. ์ ํฌ๋ ๊ฐ์ฅ ๋ง์ด ์ก์ธ์ค๋๋ assets๋ถํฐ long tail๊น์ง ์ฒ๋ฆฌํ๋ฉฐ reports ๋ฐ dashboards๋ฅผ ์ฐ์ ์์์ ๋ฐ๋ผ ๋ง์ด๊ทธ๋ ์ด์ ํ๋ฉฐ, ๊ฐ migration์ ํด๋น reports๋ฅผ ๋งค์ผ ์ฌ์ฉํ๋ business owners๊ฐ ๊ฒ์ฆํฉ๋๋ค. ์ด ์ ๊ทผ ๋ฐฉ์์ ์ค๊ฐ ๊ท๋ชจ์ data platforms์ ๊ฒฝ์ฐ ์ผ๋ฐ์ ์ผ๋ก 3-6๊ฐ์์ด ์์๋๋ฉฐ migration ์ ๋ฐ์ ๊ฑธ์ณ ๋น์ฆ๋์ค ์์ฌ ๊ฒฐ์ ์ ์ ํ ์ค๋จ์ด ์๋๋ก ๋ณด์ฅํฉ๋๋ค.
์ฐ๋ฆฌ์ ์ํคํ ํธ๋ค์ ํน์ ์๊ตฌ ์ฌํญ์ ๋ง๊ฒ ์ด ํจํด์ ์ฌ์ฉํ์ฌ ์์คํ ์ ์ค๊ณํ๊ณ ๊ตฌ์ถํ๋ ๋ฐ ๋์์ ๋๋ฆด ์ ์์ต๋๋ค.
์ฐ๋ฝํ๊ธฐ๋ฐ์ดํฐ ์ง์ฝ์ ํ๋ซํผ ์ํคํ ์ฒ๋ ์์ง, ์ ์ฅ, ๋ณํ ๋ฐ ์๋น์ ๊ฑธ์ณ ํต์ผ๋ ๋ฐ์ดํฐ ์ธํ๋ผ๋ฅผ ์์ฑํฉ๋๋ค. ์์ง ๊ณ์ธต(ingestion layer)์ ์ด์ ๋ฐ์ดํฐ๋ฒ ์ด์ค(CDC), API, ์ด๋ฒคํธ ์คํธ๋ฆผ ๋ฐ ํ์ผ ์ ๋ก๋๋ก๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ์ค์ ์ง์ค์ ๋ฐ์ดํฐ ๋ ์ดํฌ(data lake)(์์, ๋ฏธ์ฒ๋ฆฌ)๋ก ๊ฐ์ ธ์ต๋๋ค. ๋ณํ ๊ณ์ธต(transformation layer)(dbt, Spark ๋๋ ์ฌ์ฉ์ ์ ์)์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฆฌํ๊ณ , ๋ชจ๋ธ๋งํ๋ฉฐ, ์ง๊ณํ์ฌ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค(data warehouse)(๊ตฌ์กฐํ๋, ์ฟผ๋ฆฌ ์ต์ ํ)๋ก ๋ง๋ญ๋๋ค. ์๋น ๊ณ์ธต(consumption layer)์ BI ๋์๋ณด๋, API ์๋ํฌ์ธํธ, ML ํผ์ฒ ์คํ ์ด ๋ฐ ์๋ฒ ๋๋ ๋ถ์์ ๋ฐ์ดํฐ๋ฅผ ์ ๊ณตํฉ๋๋ค. ๋ฐ์ดํฐ ๊ฑฐ๋ฒ๋์ค, ๊ณ๋ณด ์ถ์ ๋ฐ ์ ๊ทผ ์ ์ด๋ ๋ชจ๋ ๊ณ์ธต์์ ์๋ํฉ๋๋ค.
๋ฐ์ดํฐ๋ ๋ฉ๋ฌ๋ฆฌ์จ ์ํคํ ์ฒ(medallion architecture)๋ฅผ ํตํด ํ๋ฆ ๋๋ค: Bronze(์์ ๋ฐ์ดํฐ ์์ง), Silver(์ ์ ๋ฐ ํตํฉ), Gold(๋น์ฆ๋์ค ์ค๋น ์ง๊ณ). Bronze ๊ณ์ธต(Bronze layer)์ ์์ ๋ฐ์ดํฐ๋ฅผ S3/GCS์ Parquet ํ์์ผ๋ก ์ ์ฅํ๋ฉฐ, ์์ค ๋ฐ ์์ง ํ์์คํฌํ๋ณ๋ก ํํฐ์ ๋๋ฉ๋๋ค โ ์๋ฌด๊ฒ๋ ์ญ์ ๋๊ฑฐ๋ ๋ณํ๋์ง ์์ต๋๋ค. Silver ๊ณ์ธต(Silver layer)์ ์คํค๋ง ์ ์ฉ, ์ค๋ณต ์ ๊ฑฐ, ํ์ ์บ์คํ ๋ฐ ์์ค ๊ฐ ์กฐ์ธ์ ์ ์ฉํฉ๋๋ค โ ์ฌ๊ธฐ์ ๋ฐ์ดํฐ๋ ์ผ๊ด์ฑ์ ๊ฐ๊ฒ ๋ฉ๋๋ค. Gold ๊ณ์ธต(Gold layer)์๋ ๋น์ฆ๋์ค๋ณ ์ง๊ณ, ๋น์ ๊ทํ๋ ํ ์ด๋ธ ๋ฐ ํน์ ์ฌ์ฉ ์ฌ๋ก(๋์๋ณด๋, ML ํ๋ จ, API ์ ๊ณต)์ ์ต์ ํ๋ ์ฌ์ ๊ณ์ฐ๋ ๋ฉํธ๋ฆญ์ด ํฌํจ๋ฉ๋๋ค.
| ๊ณ์ธต | ๊ธฐ์ |
|---|---|
| ์์ง | Fivetran, Airbyte, Debezium, ์ปค์คํ Python ์ถ์ถ๊ธฐ, Kafka Connect |
| ์ ์ฅ | S3/GCS (Parquet, Delta Lake, Iceberg), Snowflake, BigQuery, Redshift |
| ๋ณํ | dbt, Apache Spark, Databricks, pandas (์๊ท๋ชจ) |
| ์ค์ผ์คํธ๋ ์ด์ | Airflow, Dagster, Prefect, dbt Cloud |
| ๊ฑฐ๋ฒ๋์ค | DataHub, Atlan, Great Expectations, dbt ํ ์คํธ, Monte Carlo (๊ด์ธก ๊ฐ๋ฅ์ฑ) |
| ์๋น | Metabase, Looker, Superset, ์๋ฒ ๋๋ ๋ถ์ API, ML ํผ์ฒ ์คํ ์ด |
| ์ฌ์ฉ ์์ | ํผํด์ผ ํ ์์ |
|---|---|
| ๋ฐ์ดํฐ๊ฐ 5๊ฐ ์ด์์ ์์คํ ์ ๋ถ์ฐ๋์ด ์๊ณ ํตํฉ๋ ๋ณด๊ธฐ๊ฐ ์์ ๋ | ํ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํ๋์ ๋์๋ณด๋๋ง ์์ ๋ โ ์ง์ ์ฐ๊ฒฐ๋ก ์ถฉ๋ถํฉ๋๋ค |
| ์ฌ๋ฌ ํ(๋ถ์๊ฐ, ๋ฐ์ดํฐ ๊ณผํ์, ์ ํ)์ด ๋์ผํ ๋ฐ์ดํฐ์ ์ ๊ทผํด์ผ ํ ๋ | ๋ฐ์ดํฐ ๋ณผ๋ฅจ์ด ์๊ณ (< 1GB) ํ๋ซํผ ์ค๋ฒํค๋๋ฅผ ์ ๋นํํ์ง ๋ชปํ ๋ |
| ๊ท์ ์ค์๋ฅผ ์ํด ๋ฐ์ดํฐ ๊ณ๋ณด, ์ ๊ทผ ์ ์ด ๋ฐ ๋ฐ์ดํฐ ์ ๊ทผ์ ๋ํ ๊ฐ์ฌ ์ถ์ ์ด ํ์ํ ๋ | ๋ถ์ ํ๋ซํผ์ด ์๋ ํธ๋์ญ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ ๋ |
| ML/AI ๊ธฐ๋ฅ์ ์ ๋ณ๋๊ณ ํผ์ฒ ์คํ ์ด ์ค๋น๋ ๋ฐ์ดํฐ์ ์ด ํ์ํ ๋ | ์กฐ์ง์ ํ๋ซํผ์ ์ด์ํ ๋ฐ์ดํฐ ์์ง๋์ด๋ง ์ญ๋์ด ์์ ๋ |
MW๋ "๋น ๋ฅธ ์ฑ๊ณต ์ฐ์ (quick-wins-first)" ์ ๊ทผ ๋ฐฉ์์ผ๋ก ๋ฐ์ดํฐ ํ๋ซํผ์ ๊ตฌ์ถํฉ๋๋ค โ ์ฐ๋ฆฌ๋ ์กฐ์ง์ด ํ์ฌ ๋ต๋ณํ ์ ์๋ ๊ฐ์ฅ ์ด๋ ค์ด 3-5๊ฐ์ง ๋ฐ์ดํฐ ์ง๋ฌธ์ ์๋ณํ๊ณ , ์ด์ ๋ต๋ณํ๊ธฐ ์ํ ์ต์ํ์ ํ์ดํ๋ผ์ธ์ ๊ตฌ์ถํ ํ ๊ฑฐ๊ธฐ์๋ถํฐ ํ์ฅํด ๋๊ฐ๋๋ค. ์ฐ๋ฆฌ๋ 6๊ฐ์์ง๋ฆฌ "๋ฐ์ดํฐ ๋ ์ดํฌ ๊ตฌ์ถ" ํ๋ก์ ํธ๋ก ์์ํ์ง ์์ต๋๋ค. ์ฐ๋ฆฌ์ dbt ํ๋ก์ ํธ์๋ ํฌ๊ด์ ์ธ ํ ์คํธ(๊ณ ์ ์ฑ, null ์์, ์ฐธ์กฐ ๋ฌด๊ฒฐ์ฑ, ์ฌ์ฉ์ ์ ์ ๋น์ฆ๋์ค ๊ท์น), ๋ฌธ์ํ(๋ชจ๋ ๋ชจ๋ธ ๋ฐ ์ปฌ๋ผ ์ค๋ช ), ๊ทธ๋ฆฌ๊ณ ์ต์ ์ฑ ๋ชจ๋ํฐ๋ง์ด ํฌํจ๋ฉ๋๋ค. ์ฐ๋ฆฌ๋ ํฌ์ค์ผ์ด ๊ฐ์ฌ, ์ฌ๊ณ ๊ด๋ฆฌ ๋ฐ ์ฌ๋ฌด ๋ณด๊ณ ๋ฅผ ์ํด ํ๋ฃจ 5์ฒ๋ง ๊ฐ ์ด์์ ํ์ ์ฒ๋ฆฌํ๋ ๋ฐ์ดํฐ ํ๋ซํผ์ ๊ตฌ์ถํ์ผ๋ฉฐ โ ์ผ๊ด๋ ๊ตํ์ ๋ฐ์ดํฐ ํ์ง ์ ์ด๊ฐ ๊ฐ์ฅ ์ด๋ ต๊ณ ์ค์ํ ๋ถ๋ถ์ด๋ผ๋ ๊ฒ์ ๋๋ค.
ํ๋์ ์ฝ๋๋ฒ ์ด์ค, ์๋ฐฑ ๊ฐ์ ํ ๋ํธ, ๋ฐ์ดํฐ ์ ์ถ ์ ๋ก โ ๋ชจ๋ ํ์ฅ ๊ฐ๋ฅํ SaaS ๋น์ฆ๋์ค์ ๊ธฐ๋ฐ์ ๋๋ค.