data_modeling_dw_dm

데이터 λͺ¨λΈλ§

  • 데이터 λͺ¨λΈλ§

    • 데이터λͺ¨λΈλ§μ΄λž€ ν˜„μ‹€μ— μ‘΄μž¬ν•˜λŠ” 데이터λ₯Ό μ „μ‚°ν™”ν•˜κΈ° μœ„ν•΄ 좔상화 λ ˆλ²¨μ„ κ²°μ •ν•˜μ—¬ λ‹¨μˆœν™”, κ°€μ‹œν™”, λ¬Έμ„œν™”μ‹œν‚€λŠ” μž‘μ—…

    • κ΄€λ¦¬λŒ€μƒμ΄ λ˜λŠ” 정보λ₯Ό μΆ”μΆœν•˜κ³  κ·Έ 정보듀 κ°„μ˜ 관계λ₯Ό μ„€μ •ν•˜μ—¬ μ‹œκ°ν™”ν•˜λŠ” 과정을 λ§ν•©λ‹ˆλ‹€.

    • 데이터 λͺ¨λΈλ§μ„ ν•˜λŠ” μ΄μœ λŠ” 크게 효율과 μ„±λŠ₯ ν–₯상, μœ μ—°μ„± 확보, μœ μ§€λ³΄μˆ˜μ˜ 용이의 μΈ‘λ©΄μ—μ„œ 생각할 수 μžˆμŠ΅λ‹ˆλ‹€.

    • 읽기 μŠ€ν‚€λ§ˆμ™€ μ“°κΈ° μŠ€ν‚€λ§ˆμ˜ 비ꡐ

      • image

        • https://www.oreilly.com/content/hadoop-what-you-need-to-know/

      • μ†ŒμŠ€ λ°μ΄ν„°μ˜ μŠ€ν‚€λ§ˆ 변경을 μ²˜λ¦¬ν•˜λŠ” ν•œ κ°€μ§€ 방법은 데이터λ₯Ό μ“Έ λ•Œ μŠ€ν‚€λ§ˆλ₯Ό μ •μ˜ν•˜λŠ” 방식(Schema-on-write)μ—μ„œ 데이터λ₯Ό 읽을 λ•Œ μŠ€ν‚€λ§ˆλ₯Ό μ •μ˜ν•˜λŠ” 방식(schema-on-read)으둜 섀계λ₯Ό μ΄λ™ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.

      • 데이터 ꡬ쑰가 사전에 μ •μ˜λΌμ•Ό ν•˜λŠ” (μ €μž₯ μ‹œμ  μŠ€ν‚€λ§ˆ 적용) κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€μ™€λŠ” 달리 파일 μ‹œμŠ€ν…œμ΄λ‚˜ 였브젝트 μŠ€ν† μ–΄λŠ” 데이터λ₯Ό μ–΄λ–»κ²Œ μ“°λ“  μƒκ΄€ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μ½λŠ” μ‹œμ  μŠ€ν‚€λ§ˆ μ μš©ν•˜μ—¬ 마찰 μ—†λŠ” μ£Όμž…μ΄ κ°€λŠ₯ν•˜κ²Œ ν•©λ‹ˆλ‹€.

      • μ“°κΈ° μŠ€ν‚€λ§ˆ(Schema-on-write)

        • μ†ŒμŠ€μ—μ„œ 데이터λ₯Ό μΆ”μΆœν•  λ•Œ ꡬ쑰(μŠ€ν‚€λ§ˆ)κ°€ μ •μ˜λ˜κ³  데이터가 데이터 레이크 λ˜λŠ” S3 버킷에 기둝됨, 그런 λ‹€μŒ μˆ˜μ§‘μ˜ λ‘œλ“œ 단계가 μ‹€ν–‰λ˜λ©΄ 데이터가 예츑 κ°€λŠ₯ν•œ ν˜•μ‹μ˜ μ •μ˜λœ ν…Œμ΄λΈ” ꡬ쑰둜 λ‘œλ“œλ  수 μžˆμŠ΅λ‹ˆλ‹€.

        • κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€μ˜ 전톡적인 μ ‘κ·Ό λ°©μ‹μœΌλ‘œ μŠ€ν‚€λ§ˆλŠ” λͺ…μ‹œμ μ΄κ³  데이터 λ² μ΄μŠ€λŠ” μ“°μ—¬μ§„ λͺ¨λ“  데이터가 μŠ€ν‚€λ§ˆλ₯Ό λ”°λ₯΄κ³  μžˆμŒμ„ 보μž₯ν•©λ‹ˆλ‹€.

        • 정적(컴파일 νƒ€μž„) νƒ€μž… 확인과 λΉ„μŠ·ν•©λ‹ˆλ‹€.

      • 읽기 μŠ€ν‚€λ§ˆ(Schema-on-read)

        • μŠ€ν‚€λ§ˆμ— λŒ€ν•œ μ—„κ²©ν•œ μ •μ˜ 없이 데이터가 데이터 레이크, S3 버킷 λ˜λŠ” 기타 μŠ€ν† λ¦¬μ§€ μ‹œμŠ€ν…œμ— κΈ°λ‘λ˜λŠ” νŒ¨ν„΄μœΌλ‘œ λ°μ΄ν„°μ˜ μŠ€ν‚€λ§ˆλŠ” 읽을 λ•ŒκΉŒμ§€ μ•Œ 수 μ—†μœΌλ―€λ‘œ schema-on-read라고 ν•©λ‹ˆλ‹€. 즉, 데이터λ₯Ό μŠ€ν‚€λ§ˆμ— 맞게 λ°μ΄ν„°λ² μ΄μŠ€κ°€ κΈ°λŒ€ν•˜λŠ” ν˜•νƒœλ‘œ μ „ν™˜ν•˜κΈ° μ „κΉŒμ§€λŠ” 데이터λ₯Ό μ €μž₯ν•  수 μ—†λŠ” κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€μ™€λŠ” 달리 데이터λ₯Ό μ•„λ¬΄λŸ° 처리 없이 μ €μž₯ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

        • 데이터 κ΅¬μ‘°λŠ” 암묡적이고 데이터λ₯Ό 읽을 λ•Œλ§Œ ν•΄μ„λ©λ‹ˆλ‹€.

        • ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄μ—μ„œ 동적(λŸ°νƒ€μž„) νƒ€μž… 확인과 μœ μ‚¬ν•©λ‹ˆλ‹€.

        • 이 νŒ¨ν„΄μ€ μŠ€ν† λ¦¬μ§€μ— 데이터λ₯Ό μ“°λŠ” λ°λŠ” 맀우 νš¨μœ¨μ μ΄μ§€λ§Œ λ‘œλ“œ 단계에 λ³΅μž‘μ„±μ„ μΆ”κ°€ν•˜κ³  νŒŒμ΄ν”„λΌμΈμ—μ„œ λͺ‡ κ°€μ§€ μ£Όμš” 의미λ₯Ό κ°–μŠ΅λ‹ˆλ‹€. 기술적인 κ΄€μ μ—μ„œ S3 λ²„ν‚·μ—μ„œ μ΄λŸ¬ν•œ λ°©μ‹μœΌλ‘œ μ €μž₯된 데이터λ₯Ό μ½λŠ” 것은 맀우 μ‰¬μ›λ‹ˆλ‹€.

        • λ‘œλ“œ λ‹¨κ³„μ—μ„œ μŠ€ν‚€λ§ˆκ°€ μœ μ—°ν•œ 데이터λ₯Ό μ½λŠ” 데 μ‚¬μš©ν•˜λŠ” λͺ¨λ“  도ꡬ와 ν†΅ν•©λ˜λŠ” 데이터 μΉ΄νƒˆλ‘œκ·Έλ₯Ό ν™œμš©ν•©λ‹ˆλ‹€. 데이터 μΉ΄νƒˆλ‘œκ·ΈλŠ” 데이터 레이크 및 μ›¨μ–΄ν•˜μš°μŠ€μ˜ 데이터에 λŒ€ν•œ 메타데이터λ₯Ό μ €μž₯ν•˜κ³  λ°μ΄ν„°μ„ΈνŠΈμ˜ ꡬ쑰와 μ •μ˜λ₯Ό λͺ¨λ‘ μ €μž₯ν•  수 μžˆμŠ΅λ‹ˆλ‹€. AWS Glue 데이터 μΉ΄νƒˆλ‘œκ·Έ 및 Apache AtlasλŠ” 널리 μ‚¬μš©λ˜λŠ” 데이터 μΉ΄νƒˆλ‘œκ·Έμž…λ‹ˆλ‹€.

        • λ‘œλ“œ λ‹¨κ³„μ˜ λ…Όλ¦¬λŠ” λ”μš± λ³΅μž‘ν•΄μ§‘λ‹ˆλ‹€. μŠ€ν‚€λ§ˆ 변경을 λ™μ μœΌλ‘œ μ²˜λ¦¬ν•˜λŠ” 방법을 κ³ λ €ν•΄μ•Ό ν•©λ‹ˆλ‹€.

        • 데이터 μΉ΄νƒˆλ‘œκ·Έ μž‘μ„±λΏλ§Œ μ•„λ‹ˆλΌ μ‘°μ§μ—μ„œ 데이터가 μ‚¬μš©λ˜λŠ” 방식에 λŒ€ν•œ ν‘œμ€€ 및 ν”„λ‘œμ„ΈμŠ€λ₯Ό μ •μ˜ν•˜λŠ” 데이터 κ±°λ²„λ„ŒμŠ€μ— λŒ€ν•΄ μ§„μ§€ν•˜κ²Œ κ³ λ―Όν•΄μ•Ό ν•©λ‹ˆλ‹€.

닀차원 λͺ¨λΈλ§

  • 닀차원 λͺ¨λΈλ§

    • λΆ„μ„μ—…λ¬΄μ˜ λ³΅μž‘ν•œ 질의의 μ‹ μ†ν•œ 처리λ₯Ό λͺ©ν‘œλ‘œ λΆ„μ„μ˜μ—­λ³„ νŠΉμ„±μ„ κ³ λ €ν•˜μ—¬ DBMS의 μ„±λŠ₯κ³Ό μ‚¬μš©μ˜ νŽΈλ¦¬μ„±μ„ 보μž₯ν•œ ꡬ쑰둜 μ„€κ³„ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.

    • μ‚¬μš©μžλŠ” λ‹€μ–‘ν•œ κ΄€μ μ—μ„œμ˜ λΉ„μ¦ˆλ‹ˆμŠ€ 뢄석을 μš”κ΅¬ν•˜κ³ , 이λ₯Ό μ§€μ›ν•˜κΈ° μœ„ν•΄ 데이터λͺ¨λΈμ€ λ‹€μ°¨μ›μ˜ ν˜•μ‹μœΌλ‘œ ν‘œν˜„ν•˜κ³  정보 뢄석을 μœ„ν•΄ λ‹€μ†Œ λ³΅μž‘ν•œ 톡합 DW의 데이터λ₯Ό 직접 μ•‘μ„ΈμŠ€ ν•˜κΈ°λ³΄λ‹€λŠ” λ³„λ„μ˜ 닀차원 데이터 λͺ¨λΈμ„ 톡해 μ‹ μ†ν•˜κ³  μ‚¬μš©μžκ°€ μ‰½κ²Œ 이해할 수 μžˆλŠ” κΈ°λ°˜μ„ μ œκ³΅ν•©λ‹ˆλ‹€.

    • μž₯점

      • 전사적인 λΉ„μ¦ˆλ‹ˆμŠ€ Viewλ₯Ό 제곡

      • 포괄적인 데이터 검색 및 뢄석을 κ°€λŠ₯

    • 단점

      • λΉ„μ¦ˆλ‹ˆμŠ€ μ‚¬μš©μžκ°€ λͺ¨λΈμ„ 이해/λΆ„μ„ν•˜κΈ°κ°€ κ³€λž€

      • Toolμ—μ„œ μ œκ³΅ν•˜λŠ” Queryκ°€ νš¨κ³Όμ μ΄μ§€ λͺ»ν•¨

      • 물리적인 질의 μ„±λŠ₯ μ €ν•˜

      • Denormalization ν•„μš”

    • 닀차원λͺ¨λΈλ§ 방법

      • μ •κ·œν™”λœ 데이터 λͺ¨λΈμ€ 쀑볡과 ν•„λ“œ μˆ˜κ°€ μž‘μ€ ν…Œμ΄λΈ”μ„ λ§Œλ“€λ‹€ λ³΄λ‹ˆ μ—…λ°μ΄νŠΈκ°€ 맀우 λΉ λ₯΄κ²Œ μ΄λ€„μ§‘λ‹ˆλ‹€.

      • 데이터 μ›¨μ–΄ν•˜μš°μŠ€μ—μ„œλŠ” 일반적으둜 μ •κ·œν™”ν•˜μ§€ μ•ŠλŠ” 데이터 λͺ¨λΈμ„ μ„ ν˜Έν•˜λ©° μ •κ·œν™”ν•˜μ§€ μ•Šμ€ λͺ¨λΈμ—μ„œλŠ” 각 ν…Œμ΄λΈ”μ— κ°€λŠ₯ν•œ ν•œ λ§Žμ€ κ΄€λ ¨ νŠΉμ„±μ„ μ €μž₯ν•©λ‹ˆλ‹€. 그러면 ν•„μš”ν•œ λͺ¨λ“  정보λ₯Ό μ·¨ν•©ν•  λ•Œλ„ 데이터λ₯Ό ν•œ 번만 μ²˜λ¦¬ν•΄λ„ λ©λ‹ˆλ‹€.

      • Star Schema(차원 λͺ¨λΈλ§(dimensional modeling))

        • image

          • https://www.oreilly.com/library/view/hands-on-business-intelligence/9781838824303/01337b15-338a-4527-8870-32782a65f522.xhtml

        • 1996년에 λ°œκ°„λœ λž„ν”„ ν‚΄λ²Œ, 마기 둜슀 κ³΅μ €μ˜ The Data Warehouse Toolkit(wiley,2004) 1νŒμ—μ„œ 처음 μ†Œκ°œλ˜μ—ˆμœΌλ©° λͺ‡ 개의 차원과 팩트 ν…Œμ΄λΈ” μ§‘ν•©μœΌλ‘œ κ΅¬μ„±λ©λ‹ˆλ‹€. ν…Œμ΄λΈ” 관계가 μ‹œκ°ν™”λ  λ•Œ 사싀 ν…Œμ΄λΈ”μ΄ κ°€μš΄λ°μ— 있고 차원 ν…Œμ΄λΈ”λ‘œ λ‘˜λŸ¬μ‹Έκ³  μžˆλ‹€λŠ” 사싀에 λΉ„λ‘―λμŠ΅λ‹ˆλ‹€.

        • μŠ€νƒ€ μŠ€ν‚€λ§ˆλŠ” 데이터λ₯Ό λΉ„μ •κ·œν™”ν•©λ‹ˆλ‹€. 일뢀 차원 ν…Œμ΄λΈ”μ— 쀑볡 열을 μΆ”κ°€ν•˜μ—¬ 데이터λ₯Ό 더 λΉ λ₯΄κ³  μ‰½κ²Œ μΏΌλ¦¬ν•˜κ³  μž‘μ—…ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 계산 λΉ„μš©μ΄ 많이 λ“œλŠ” 쑰인 μž‘μ—…μ„ ν”Όν•¨μœΌλ‘œμ¨ 쿼리 속도λ₯Ό 높이기 μœ„ν•΄ 데이터 λͺ¨λΈμ˜ 일뢀 쀑볡성(데이터 쀑볡)을 κ΅ν™˜ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.

        • 팩트 ν…Œμ΄λΈ”μ€ μ •κ·œν™”λ˜μ§€λ§Œ 차원 ν…Œμ΄λΈ”μ€ μ •κ·œν™”λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 팩트 ν…Œμ΄λΈ”μ˜ λ°μ΄ν„°λŠ” 팩트 ν…Œμ΄λΈ”μ—λ§Œ μ‘΄μž¬ν•˜μ§€λ§Œ 차원 ν…Œμ΄λΈ”μ€ 쀑볡 데이터λ₯Ό λ³΄μœ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

        • 팩트 ν…Œμ΄λΈ”μ—λŠ” 각 차원과 κ΄€λ ¨λœ λͺ¨λ“  ν™œλ™μ΄ κΈ°λ‘λ©λ‹ˆλ‹€.

          • 팩트 ν…Œμ΄λΈ”μ€ μŠ€νƒ€μŠ€ν‚€λ§ˆμƒμ—μ„œ μœ μΌν•˜κ²Œ μ •κ·œν™”λœ ν…Œμ΄λΈ”λ‘œμ¨ μ™Έλž˜ν‚€(Foreign Key)와 상세 데이터(Numeric Data) 값을 κ°€μ§€λŠ” μ—΄(Column)둜 κ΅¬μ„±λ©λ‹ˆλ‹€.

        • 차원 ν…Œμ΄λΈ”μ€ 뢄석 λŒ€μƒ μš”μ†Œλ‘œ κ΅¬μ„±λ©λ‹ˆλ‹€.

          • μ°¨μ›μ΄λž€ μ‚¬μš©μžκ°€ 데이터λ₯Ό λΆ„μ„ν•˜κ³ μž ν•˜λŠ” μ£Όμ–΄μ§„ 사싀(Fact)에 λŒ€ν•œ 좔가적인 λ˜λŠ” μ£Όμš”ν•œ 관점(View)을 μ œκ³΅ν•˜λŠ” νŠΉμ„±μ„ κ°€μ§‘λ‹ˆλ‹€. 차원 ν…Œμ΄λΈ”μ€ μ„œμˆ μ (Descriptive) 정보λ₯Ό μ €μž₯ν•˜λ©° λΉ„μ •κ·œν™”λœ(Denormalized) 데이터ꡬ쑰λ₯Ό κ°€μ§‘λ‹ˆλ‹€.

      • Snowflake Schema

        • image
          • https://www.oreilly.com/library/view/hands-on-business-intelligence/9781838824303/01337b15-338a-4527-8870-32782a65f522.xhtml

        • 차원이 ν•˜μœ„μ°¨μ›μœΌλ‘œ 더 μ„ΈλΆ„ν™”λ©λ‹ˆλ‹€.

        • μŠ€νƒ€μŠ€ν‚€λ§ˆμ˜ 팩트(Fact) ν…Œμ΄λΈ” ꡬ쑰와 λ™μΌν•˜κ²Œ μœ μ§€ν•˜λ©΄μ„œ μ°¨μ›ν…Œμ΄λΈ”μ΄ μ •κ·œν™” (일반적 제3 μ •κ·œν˜•)된 ꡬ쑰둜 μ €μž₯곡간을 μ΅œμ†Œν™”ν•©λ‹ˆλ‹€.

          • 제3 μ •κ·œν˜•(3NF - Third Normal Form)은 μ •κ·œν™”λ₯Ό 톡해 데이터 쀑볡성을 μ€„μ΄λŠ” λ°©λ²•μž…λ‹ˆλ‹€. μ™„μ „νžˆ μ •κ·œν™”λœ κ²ƒμœΌλ‘œ κ°„μ£Όλ˜λŠ” λ°μ΄ν„°λ² μ΄μŠ€μ˜ 곡톡 ν‘œμ€€μž…λ‹ˆλ‹€.

      • Star Schema vs Snowflake Schema

        • image
          • https://www.javatpoint.com/data-warehouse-star-schema-vs-snowflake-schema

        • Snowflake μŠ€ν‚€λ§ˆλŠ” 높은 μ •κ·œν™” ν‘œμ€€μ„ 보닀 μ—„κ²©ν•˜κ²Œ μ€€μˆ˜ν•˜κΈ° λ•Œλ¬Έμ— μŠ€ν† λ¦¬μ§€ νš¨μœ¨μ„±μ΄ 더 λ†’μ§€λ§Œ 쿼리 μ„±λŠ₯은 λΉ„μ •κ·œν™”λœ 데이터 λͺ¨λΈλ§ŒνΌ μ’‹μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μŠ€νƒ€ μŠ€ν‚€λ§ˆμ™€ 같은 λΉ„μ •κ·œν™”λœ 데이터 λͺ¨λΈμ€ 데이터 쀑볡이 더 λ§Žμ•„ 쀑볡 데이터 λΉ„μš©μœΌλ‘œ 쿼리 μ„±λŠ₯이 더 λΉ¨λΌμ§‘λ‹ˆλ‹€.

        • ꡬ뢄
          Star Schema
          Snoflake Schema

          μž₯점

          κ°„λ‹¨ν•œ λͺ¨λΈλ§ 기법, μ‚¬μš©μžμ—κ²Œ μΉœμˆ™, Join μ΅œμ†Œν™”λ‘œ μ„±λŠ₯ ν–₯상

          적은 Storage μ°¨μ§€, 데이터 쀑볡성 제거, μœ μ—°μ„±, κ΄€λ¦¬μ˜ μš©μ΄μ„± 제곡

          단점

          데이터 쀑볡 및 뢈일치 κ°€λŠ₯μ„±, λ§Žμ€ Storage μ°¨μ§€, Fact Tableκ°„ Join 어렀움

          λ³΅μž‘ν•œ λͺ¨λΈλ§ 기법, λ§Žμ€ μ‘°μΈμž‘μ—…μœΌλ‘œ 검색속도 μ €ν•˜, 높은 μœ μ§€ 보수 λΉ„μš©

DW/DM

  • image
    • https://ko.wikipedia.org/wiki/%EB%8D%B0%EC%9D%B4%ED%84%B0_%EB%A7%88%ED%8A%B8

  • μ˜μ—­ ꡬ뢄
    λͺ©μ  및 μš©λ„

    ODS μ˜μ—­

    μ›μ²œ μ‹œμŠ€ν…œμ—μ„œ μΆ”μΆœν•œ 데이터λ₯Ό μ μž¬ν•œ ν›„ λ³€ν˜•, μ •μ œ μž‘μ—…μ„ μˆ˜ν–‰ν•˜λŠ” μ˜μ—­, μ›μ²œ ν…Œμ΄λΈ”μ˜ ꡬ쑰λ₯Ό 거의 μœ μ§€ν•˜κ³ , ν•„μš”μ— 따라 μž„μ‹œ ν…Œμ΄λΈ”μ„ 생성/μ‚­μ œ

    DW μ˜μ—­

    ODS의 데이터λ₯Ό μ •μ œν•˜μ—¬ μ£Όμ œλ³„λ‘œ ν†΅ν•©ν•œ ν›„ 전사적인 κ΄€μ μ—μ„œ 데이터 ꡬ좕, μ΅œμ’…μ μœΌλ‘œ 상세 μˆ˜μ€€κΉŒμ§€ μ‚¬μš©μž 뢄석이 κ°€λŠ₯ν•˜λ„λ‘ 상세 데이터λ₯Ό 보유, 뢄석 도ꡬ 및 마트λ₯Ό μœ„ν•œ μ›μ²œ 데이터 제곡

    DM μ˜μ—­

    전사적 데이터 뢄석을 μœ„ν•˜μ—¬ ν†΅ν•©μ μœΌλ‘œ κ³Όκ±°, ν˜„μž¬ 데이터λ₯Ό μ§‘μ•½ν•˜μ—¬ μœ μ§€, λ³΄κ³ μ„œμ˜ 데이터 κ³΅κΈ‰μ›μœΌλ‘œ ν™œμš©, 닀차원 λͺ¨λΈ 적용, μ‚¬μš©λΉˆλ„κ°€ 높은 데이터 μœ ν˜•μ— λŒ€ν•œ μˆ˜ν–‰ 속도 보μž₯

  • ODS

    • ODSλŠ” DW λ°μ΄ν„°μ˜ 쀀비곡간, μš΄μ˜κ³„ 데이터λ₯Ό 가져와 μ •μ œ, 톡합, λ³€ν™˜, λ³΄κ΄€ν•˜κ³  DW둜 곡급해 μ£ΌλŠ”, DW둜 κ°€λŠ” 쀑간단계 의 데이터 μ €μž₯μž₯μ†Œ

    • ODSλŠ” 일반적으둜 μš”μ•½λ°μ΄ν„°κ°€ μ•„λ‹Œ μ›μ‹œ 데이터λ₯Ό ν¬ν•¨ν•˜κ³  있기 λ•Œλ¬Έμ— ν–₯ν›„ μš”κ΅¬ 쑰건 변화에 λŒ€μ‘ν•˜κΈ° 쉽고 DW의 데이터에 λ¬Έμ œκ°€ 생겼을 λ•Œ μ‹ μ†ν•œ 볡ꡬ가 κ°€λŠ₯ν•©λ‹ˆλ‹€.

  • 데이터 μ›¨μ–΄ν•˜μš°μŠ€(DW)

    • μ—¬λŸ¬ λ‹€λ₯Έ OLTP μ‹œμŠ€ν…œμ˜ 데이터λ₯Ό 합쳐 데이터 뢄석 λͺ©μ μœΌλ‘œ μ“°κΈ° μœ„ν•΄ μ€€λΉ„λœ λ°μ΄ν„°λ² μ΄μŠ€

    • 데이터 μ›¨μ–΄ν•˜μš°μŠ€λŠ” λΉ„μ¦ˆλ‹ˆμŠ€ μΈν…”λ¦¬μ „μŠ€(BI) ν™œλ™, 특히 뢄석을 ν™œμ„±ν™” 및 μ§€μ›ν•˜κΈ° μœ„ν•΄ μ„€κ³„λœ 데이터 관리 μ‹œμŠ€ν…œμ˜ ν•œ μœ ν˜•μœΌλ‘œ 데이터λ₯Ό μ €μž₯ 및 κ΄€λ¦¬ν•˜κΈ° μœ„ν•œ κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€

    • 데이터 μ›¨μ–΄ν•˜μš°μŠ€ νŠΉμ„±

      • 절차 μ§€ν–₯적(Subject-oriented) : 데이터 μ›¨μ–΄ν•˜μš°μŠ€λŠ” νŠΉμ • 절차 λ˜λŠ” κΈ°λŠ₯ μ˜μ—­(예: μ˜μ—…)에 λŒ€ν•œ 데이터λ₯Ό 뢄석할 수 있음

      • 톡합 : 데이터 μ›¨μ–΄ν•˜μš°μŠ€λŠ” 이질적인 μ†ŒμŠ€λ‘œλΆ€ν„° 얻은 λ‹€μ–‘ν•œ 데이터 μœ ν˜• 간에 일관성을 생성

      • λΉ„ νœ˜λ°œμ„± : 일단 데이터 μ›¨μ–΄ν•˜μš°μŠ€μ— μ €μž₯되면, λ°μ΄ν„°λŠ” μ•ˆμ •μ μΈ μƒνƒœκ°€ 되며 λ³€κ²½λ˜μ§€ μ•ŠμŒ

      • μ‹œκ°„ 변이적 : 데이터 μ›¨μ–΄ν•˜μš°μŠ€ 뢄석은 μ‹œκ°„ 경과에 λ”°λ₯Έ λ³€ν™”λ₯Ό 확인함

    • μ—”ν„°ν”„λΌμ΄μ¦ˆ 데이터 μ›¨μ–΄ν•˜μš°μŠ€(EDW)

      • 쀑앙 집쀑식 μ›¨μ–΄ν•˜μš°μŠ€μž…λ‹ˆλ‹€. μ „μ‚¬μ μœΌλ‘œ μ˜μ‚¬ κ²°μ • 지원 μ„œλΉ„μŠ€λ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€.

      • 데이터λ₯Ό κ΅¬μ„±ν•˜κ³  ν‘œν˜„ν•˜κΈ° μœ„ν•œ ν†΅ν•©λœ μ ‘κ·Ό 방식을 μ œκ³΅ν•©λ‹ˆλ‹€.

      • μ£Όμ œμ— 따라 데이터λ₯Ό λΆ„λ₯˜ν•˜κ³  ν•΄λ‹Ή ꡬ뢄에 따라 μ•‘μ„ΈμŠ€ κΆŒν•œμ„ λΆ€μ—¬ν•˜λŠ” κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€.

  • 데이터 마트(DM)

    • 데이터 μ›¨μ–΄ν•˜μš°μŠ€κ°€ κΈ°μ—… μ „λ°˜μ˜ 쀑앙 데이터 μŠ€ν† λ¦¬μ§€ 역할을 ν•œλ‹€λ©΄, 데이터 λ§ˆνŠΈλŠ” 일뢀 μ„ νƒλœ μ‚¬μš©μž κ·Έλ£Ήμ—κ²Œ κ΄€λ ¨ 데이터λ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€. 데이터 μ•‘μ„ΈμŠ€λ₯Ό κ°„μ†Œν™”ν•˜κ³ , 뢄석 속도λ₯Ό 높이며, 자체 데이터에 λŒ€ν•œ ν†΅μ œλ ₯을 λΆ€μ—¬ν•˜κ²Œ λ©λ‹ˆλ‹€.

    • 데이터 λ§ˆνŠΈλŠ” νŠΉμ • μš”κ΅¬μ— λ§žλŠ” 처리된 데이터λ₯Ό μ €μž₯ν•©λ‹ˆλ‹€.

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