olap
OLTP vs OLAP
https://learn.microsoft.com/ko-kr/system-center/scsm/olap-cubes-overview?view=sc-sm-2022
- ํน์ฑํธ๋์ญ์ ์ฒ๋ฆฌ ์์คํ (OLTP)๋ถ์ ์์คํ (OLAP)
์ฃผ์ ์ฝ๊ธฐ ํจํด
์ง์๋น ์ ์ ์์ ๋ ์ฝ๋, ํค ๊ธฐ์ค์ผ๋ก ๊ฐ์ ธ์ด
๋ง์ ๋ ์ฝ๋์ ๋ํ ์ง๊ณ
์ฃผ์ ์ฐ๊ธฐ ํจํด
์์ ์ ๊ทผ, ์ฌ์ฉ์ ์ ๋ ฅ์ ๋ฎ์ ์ง์ฐ ์๊ฐ์ผ๋ก ๊ธฐ๋ก
๋๊ท๋ชจ ๋ถ๋ฌ์ค๊ธฐ(bulk import, ETL) ๋๋ ์ด๋ฒคํธ ์คํธ๋ฆผ
์ฃผ์ ์ฌ์ฉ์ฒ
์น ์ ํ๋ฆฌ์ผ์ด์ ์ ํตํ ์ต์ข ์ฌ์ฉ์/์๋น์
์์ฌ๊ฒฐ์ ์ง์์ ์ํ ๋ด๋ถ ๋ถ์๊ฐ
๋ฐ์ดํฐ ํํ
๋ฐ์ดํฐ์ ์ต์ ์ํ(ํ์ฌ ์์ )
์๊ฐ์ด ์ง๋๋ฉฐ ์ผ์ด๋ ์ด๋ฒคํธ ์ด๋ ฅ
๋ฐ์ดํฐ์ ํฌ๊ธฐ
๊ธฐ๊ฐ๋ฐ์ดํธ์์ ํ ๋ผ๋ฐ์ดํธ
ํ ๋ผ๋ฐ์ดํธ์์ ํํ๋ฐ์ดํธ
OLTP(Online Transaction Processing)
๋น์ฆ๋์ค๊ฐ ๋ชจ๋ ํธ๋์ญ์ ๋ฐ ๋ ์ฝ๋๋ฅผ ์ ์ฅํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ OLTP(์จ๋ผ์ธ ํธ๋์ญ์ ์ฒ๋ฆฌ) ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ผ๊ณ ํฉ๋๋ค
INSERT, UPDATE ๋๋ DELETE์ ๊ฐ์ ํธ๋์ญ์ ์ ์ฐจ๋ฟ๋ง ์๋๋ผ ํน์ ์ ๋ณด๋ฅผ ๋น ๋ฅด๊ฒ ์ฐพ๋ ๋ฐ ํ์ํฉ๋๋ค.
OLTP์์คํ ์ ์์ ๋ฐ์ดํฐ๊ฐ ์ค์ ๋ก ๋ฐ์ํ๊ณ ๊ธฐ๋ก๋๋ '๋ฌด์(What)'์ ์ด์ ์ ๋ง์ถ๊ณ ์์ผ๋ฉฐ, ํ์ฌ ๊ฑฐ๋ ์ํ๋ฅผ ์ ํํ๊ฒ ๊ธฐ๋กํ๊ณ ๊ฐฑ์ ํ ์ ์๋๋ก ํ๋ ๊ฒ์ด ๋ชฉํ์ ๋๋ค. ๋ฐ๋ฉด OLAP์์คํ ์ ์ด๋ ๊ฒ ์์ง๋ ๋ฐ์ดํฐ๋ฅผ ์์ฌ๊ฒฐ์ ์ ํ์ฉํ๋ ์ธก๋ฉด์ ๋ด๋นํ์ฌ '์(Why)'์ ์ด์ ์ด ๋ง์ถ์ด์ง๋ฉฐ OLTP์์คํ ์ด ์ผ์์ ์ธ ๊ธฐ์ ์ ์ด์์ ์ง์ํ๋ ๋ฐ๋ฉด, OLAP์์คํ ์ ๊ธฐ์ ์ ๋ฐฉํฅ์ ์ค์ ํ๋ ์ญํ ์ ํฉ๋๋ค.
OLTP ์์คํ
MySQL
PostgreSQL
Amazon Aurora
Oracle RDBMS
OLTP ํ๊ฒฝ
- ๋ฐ์ดํฐ ์จ์ดํ์ฐ์คOLTP ์์คํ
์ํฌ๋ก๋
์์ ์ฟผ๋ฆฌ ๋ฐ ๋ฐ์ดํฐ ๋ถ์ ์์ฉ
์ฌ์ ์ ์๋ ์์ ๋ง ์ง์
๋ฐ์ดํฐ ์์
์ ๊ธฐ์ ์ธ ์๋ ์ ๋ฐ์ดํธ
๊ฐ๋ณ ๋ช ์ธ์๋ฅผ ๋ฐํํ ์ต์ข ์ฌ์ฉ์์ ์ํ ์ ๋ฐ์ดํธ
์คํค๋ง ๋์์ธ
๋ถ๋ถ์ ์ผ๋ก ๋น์ ๊ทํ๋ ์คํค๋ง๋ฅผ ์ฌ์ฉํด ์ฑ๋ฅ ์ต์ ํ
์์ ํ ์ ๊ทํ๋ ์คํค๋ง๋ฅผ ์ฌ์ฉํด ๋ฐ์ดํฐ ์ผ๊ด์ฑ ๋ณด์ฅ
๋ฐ์ดํฐ ์ค์บ๋
์์ฒ์์ ์๋ฐฑ๋ง ๊ฐ์ ํ ํฌํจ
ํ ๋ฒ์ ์์์ ๋ ์ฝ๋์๋ง ์ก์ธ์ค
๊ธฐ๋ก
๋ฐ์ดํฐ ์๊ฐ์ ๋๋ ์๋ ๊ฐ์ ๋ฐ์ดํฐ ์ ์ฅ
๋ช ์ฃผ ๋๋ ๋ช ๋ฌ ๋์๋ง ๋ฐ์ดํฐ ์ ์ฅ
OLAP(Online Analytical Processing)
OLAP(์จ๋ผ์ธ ๋ถ์ ์ฒ๋ฆฌ) ์์คํ ์ ์ปดํจํ ์์ ๋ค์ฐจ์ ๋ถ์ ์ฟผ๋ฆฌ์ ์ ์ํ๊ฒ ์๋ตํ๋ ์ ๊ทผ ๋ฐฉ์์ผ๋ก ๋ง์ ๋น์ฆ๋์ค ์ธํ ๋ฆฌ์ ์ค, ๋ถ์ ๋ฐ ๋ฐ์ดํฐ ๊ณผํ ์์ฉ ํ๋ก๊ทธ๋จ์์ ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉํฉ๋๋ค.
OLAP์ ์ต์ข ์ฌ์ฉ์๊ฐ ๋ค์ฐจ์ ์ ๋ณด์ ์ง์ ์ ๊ทผํ์ฌ ๋ํ์์ผ๋ก ์ ๋ณด๋ฅผ ๋ถ์ํ๊ณ ์์ฌ๊ฒฐ์ ์ ํ์ฉํ๋ ๊ณผ์ ์ ๋๋ค.
๊ธฐ์กด์ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์คํ ๊ณผ ๋น๊ตํ ๋ ์ฃผ์ ์ฐจ์ด์ ์ OLAP ์์คํ ์ ๋ฐ์ดํฐ๊ฐ ๋ฏธ๋ฆฌ ์ง๊ณ๋ ๋ค์ฐจ์ ํ์์ผ๋ก ์ ์ฅ๋๋ค๋ ๊ฒ์ ๋๋ค.
ํน์ง
๋ค์ฐจ์์ฑ : ์ฌ์ฉ์๋ค์ด ์ค์ง์ ์ธ ์ฐจ์์์ ์ ๋ณด๋ฅผ ๋ถ์ํ๋๋ก ํฉ๋๋ค.
์ง์ ์ ๊ทผ : ์ฌ์ฉ์๊ฐ ์ ์ฐ๋ถ์์ ๊ฐ์ ์ ๋ณด ๋งค๊ฐ์๋ฅผ ๊ฑฐ์น์ง ์๊ณ ์์ ์ด ์ํ๋ ์ ๋ณด์ ์ง์ ์ ๊ทผํฉ๋๋ค.
๋ํ์ ๋ถ์ : ์ฌ์ฉ์๋ ์์คํ ๊ณผ์ ์ํธ์์ฉ์ ํตํด ์ ๋ณด๋ฅผ ๋ถ์ํ๋ฉฐ ์ํ๋ ๊ฒฐ๊ณผ๋ฅผ ์ป์ ๋๊น์ง ๊ณ์ํด์ ๋ถ์์ ์ํํฉ๋๋ค.
์์ฌ๊ฒฐ์ ์ ํ์ฉ : ์ฌ์ฉ์๊ฐ ๊ธฐ์ ์ ์ ๋ฐ์ ์ธ ์ํฉ์ ์ดํดํ ์ ์๊ฒ ํ๊ณ ์์ฌ๊ฒฐ์ ์ ์ง์ํฉ๋๋ค.
๋ฐ์ดํฐ์ ์๊ณ์ด์ ์ ์งํฉ๋๋ค. ์๋ฅผ ๋ค์ด ๋ฉํธ๋ฆญ ๊ฐ์ ๋ณํ๋ฅผ ์ ์ ์์ต๋๋ค.
๋ถ์๊ฐ๊ฐ ์ผ๋ฐ์ ์ผ๋ก ์ํํ๋ ์ฟผ๋ฆฌ๋ ์์ ์ฟผ๋ฆฌ์ด๋ฏ๋ก ์์คํ ์ ์คํค๋ง ์์ง๋์ด๋ง ์์ด๋ ๋ชจ๋ ๋น์ฆ๋์ค ์ง๋ฌธ์ ๋ตํ ์ ์์ด์ผ ํฉ๋๋ค. ๋ชจ๋ ์ฐจ์์ ๋ํด ๋ฐ์ดํฐ๋ฅผ ์ ์ํ๊ฒ ์์งํ๊ณ ์ฟผ๋ฆฌํด์ผ ํฉ๋๋ค.
๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฌ๋ฆฌ ๋ฐ์ดํฐ๋ ๋ง์ ์ค๋ณต์ผ๋ก ์ ์ฅ๋ ์ ์์ต๋๋ค. ์ด๊ฒ์ ๊ฒฐ๊ณผ ์์ง ์๋๋ฅผ ํฅ์์ํค๊ฑฐ๋(์: ์กฐ์ธ ๋ฐฉ์ง) ์๊ณ์ด์์ ๋ฐ์ดํฐ๋ฅผ ์งํ์์ผ์ผ ํ๋ ํ์์ฑ ๋๋ฌธ์ ๋ฐ๋์งํฉ๋๋ค.
๋น์ฆ๋์ค ์ง๋ฌธ์ ๋ตํ๊ธฐ ์ํด ๋๋์ ๋ฐ์ดํฐ๋ฅผ ์ค์บํด์ผ ํ ์๋ ์์ต๋๋ค.
์ฃผ์ ๊ธฐ๋ฅ
Slicing๊ณผ Dicing : ๋ค์ฐจ์ ์ง์์ ๊ธฐ๋ณธ์ ์ฌ์ฉ์๊ฐ ํ๋ธ์ ์ด๋ค ๋ถ๋ถ์ ๋ณผ ๊ฒ์ธ์ง ์ ์ํ๋ ๊ฒ์ผ๋ก ๋ค์ฐจ์ ์ง์๋ ๋ง์น ์ฌ์ฉ์๊ฐ ํ๋ธ ์ผ๋ถ๋ถ์ ์์ ์ด ์ํ๋ ํํ๋ก ์ ๋จํ์ฌ ์ดํด๋ณด๋ ๊ฒ์ ๋๋ค.
image https://www.javatpoint.com/olap-operations
Drill-Down : ๋๋ฆด๋ค์ด์ ์์ฝ๋ ํํ์ ๋ฐ์ดํฐ ์์ค์์ ๋ณด๋ค ๊ตฌ์ฒด์ ์ธ ๋ด์ฉ์ ์์ธ๋ฐ์ดํฐ๋ก ๋จ๊ณ์ ์ผ๋ก ์ ๊ทผํ๋ ๋ถ์๊ธฐ๋ฒ
https://www.javatpoint.com/olap-operations
Drill-up(roll-up) : ๋๋ฆด๋ค์ด๊ณผ ๋ฐ๋ ๋ฐฉํฅ์ผ๋ก ์ฌ์ฉ์๊ฐ ์ ๋ณด๋ฅผ ๋ถ์ํ๋ ๊ฒ์ผ๋ก ์์ ๋จ์์์ ํฐ ๋จ์๋ก ์ง๊ณ์ํ
https://www.javatpoint.com/olap-operations
Drill-Across : ๋ค๋ฅธ ํ๋ธ์ ๋ฐ์ดํฐ์ ์ ๊ทผํ๋ ๊ฒ
Drill-Through : OLAP์์คํ ์ผ๋ก๋ถํฐ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค, ํน์ OLAP์์คํ ์ ์กด์ฌํ๋ ์์ธ๋ฐ์ดํฐ์ ์ ๊ทผํ๋ ๊ฒ
ํผ๋ณดํ (Pivoting) : ์ฌ์ฉ์๋ ๋ณด๊ณ ์์ ํ, ์ด, ํ์ด์ง ์ฐจ์์ ๋ฌด์์๋ก ๋ฐ๊พธ์ด ๋ณผ ์ ์์ผ๋ฉฐ ์ด๋ฌํ ์์ ๋ค
https://www.javatpoint.com/olap-operations
ํํฐ๋ง : ๋ณด๊ณ ์ ์์ ๋ํ๋๋ ๋ฐ์ดํฐ๋ฅผ ํน์ ๊ธฐ์ค(๊ณ์ธต๊ตฌ์กฐ, ์ ํธ๋ฆฌ๋ทฐํธ, ํญ๋ชฉ์ด๋ฆ, ๋ฐ์ดํฐ์ ๊ธฐ์ด)์ ๋ถํฉํ๋ ํญ๋ชฉ์ผ๋ก ํ์ ํ๋ ๊ฒ
OLAP ์์คํ
Amazon Redshift
HP Vertica
Teradata
Reference
https://www.oreilly.com/library/view/designing-data-intensive-applications/9781491903063/
https://www.oreilly.com/library/view/the-self-service-data/9781492075240/
Last updated