Data Warehouse – các khái niệm cơ bản

·

·

,

DATA WAREHOUSING – OVERVIEW

Nội dung:

  • Khái niệm: Thuật ngữ “Data Warehouse” được Bill Inmon định nghĩa lần đầu vào năm 1990. Theo Inmon, kho dữ liệu là tập hợp dữ liệu định hướng theo chủ đề (subject-oriented), tích hợp (integrated), thay đổi theo thời gian (time-variant), và không biến đổi (non-volatile), hỗ trợ các nhà phân tích đưa ra quyết định sáng suốt trong tổ chức.
  • So sánh với cơ sở dữ liệu hoạt động: Cơ sở dữ liệu hoạt động thay đổi thường xuyên do giao dịch hàng ngày, trong khi kho dữ liệu lưu trữ dữ liệu lịch sử để phân tích. Ví dụ, dữ liệu cũ trong cơ sở dữ liệu hoạt động có thể bị cập nhật, gây khó khăn cho việc phân tích xu hướng.
  • Chức năng: Cung cấp dữ liệu tổng quát, hợp nhất theo dạng đa chiều, tích hợp công cụ OLAP (Online Analytical Processing) để phân tích tương tác hiệu quả. Hỗ trợ khai phá dữ liệu (data mining) với các chức năng như liên kết, phân cụm, phân loại, dự đoán.
  • Hiểu về Kho dữ liệu:
    • Tách biệt khỏi cơ sở dữ liệu hoạt động.
    • Không thường xuyên cập nhật.
    • Chứa dữ liệu lịch sử hợp nhất để phân tích kinh doanh.
    • Hỗ trợ ra quyết định chiến lược.
    • Tích hợp đa dạng hệ thống ứng dụng.
  • Lý do tách biệt:
    • Cơ sở dữ liệu hoạt động phục vụ tác vụ cụ thể (tìm kiếm, lập chỉ mục), kho dữ liệu xử lý truy vấn phức tạp.
    • Cơ sở dữ liệu hoạt động cần kiểm soát đồng thời và phục hồi, kho dữ liệu chỉ cần truy cập đọc.
    • Cơ sở dữ liệu hoạt động chứa dữ liệu hiện tại, kho dữ liệu chứa dữ liệu lịch sử.
  • Đặc điểm:
    • Định hướng chủ đề: Tập trung vào chủ đề (sản phẩm, khách hàng, doanh thu) thay vì hoạt động hàng ngày.
    • Tích hợp: Hợp nhất dữ liệu từ nguồn không đồng nhất.
    • Thay đổi theo thời gian: Gắn với khoảng thời gian cụ thể, cung cấp góc nhìn lịch sử.
    • Không biến đổi: Dữ liệu cũ không bị xóa khi thêm dữ liệu mới.
  • Ứng dụng: Dịch vụ tài chính, ngân hàng, hàng tiêu dùng, bán lẻ, sản xuất có kiểm soát.

Chi tiết thêm:

  • Bill Inmon nhấn mạnh rằng kho dữ liệu cần được thiết kế dựa trên nhu cầu kinh doanh cụ thể để tránh lãng phí tài nguyên. Sự phát triển của công nghệ đám mây (như AWS Redshift) hiện nay cho phép triển khai linh động, giảm chi phí phần cứng và tăng khả năng mở rộng.

DATA WAREHOUSING – CONCEPTS

Nội dung:

  • Data Warehousing là gì? Là quá trình xây dựng và sử dụng kho dữ liệu, tích hợp dữ liệu từ nhiều nguồn không đồng nhất để hỗ trợ báo cáo phân tích, truy vấn cấu trúc/ad hoc, và ra quyết định. Bao gồm làm sạch, tích hợp, và hợp nhất dữ liệu.
  • Sử dụng thông tin: Công nghệ hỗ trợ quyết định giúp khai thác dữ liệu:
    • Tinh chỉnh chiến lược sản xuất: So sánh doanh số để điều chỉnh sản phẩm.
    • Phân tích khách hàng: Xem xét sở thích, thời điểm mua, chu kỳ ngân sách.
    • Phân tích vận hành: Quản lý quan hệ khách hàng, điều chỉnh môi trường kinh doanh.
  • Tích hợp cơ sở dữ liệu không đồng nhất:
    • Query-driven Approach: Truy vấn từ nhiều nguồn qua wrappers và mediators. Quy trình: dịch truy vấn qua metadata, gửi đến bộ xử lý cục bộ, tích hợp kết quả. Nhược điểm: phức tạp, không hiệu quả, tốn kém.
    • Update-driven Approach: Tích hợp dữ liệu trước, lưu trữ trong kho để truy vấn trực tiếp. Ưu điểm: hiệu suất cao, dữ liệu được xử lý trước.
  • Chức năng công cụ và tiện ích:
    • Data Extraction: Trích xuất và thu thập dữ liệu từ nhiều nguồn dữ liệu vận hành của doanh nghiệp.
    • Data Cleaning: Làm sạch dữ liệu. Bao gồm việc xử lý dữ liệu thô để loại bỏ lỗi, dữ liệu không chính xác, trùng lặp hoặc không đầy đủ, đảm bảo dữ liệu phù hợp để phân tích.
    • Data Transformation: Chuyển đổi dữ liệu. Biến đổi dữ liệu từ dạng cũ sang dạng phù hợp với kho dữ liệu, bao gồm chuẩn hóa, tổng hợp hoặc thay đổi cấu trúc dữ liệu.
    • Data Loading: Tải dữ liệu. Sắp xếp, tổng hợp, kiểm tra toàn vẹn, lập chỉ mục dữ liệu vào kho.
    • Refreshing: Làm mới. Cập nhật dữ liệu từ các nguồn vào kho dữ liệu.

Chi tiết thêm:

  • Ralph Kimball khuyến nghị sử dụng quy trình ETL (Extract, Transform, Load) để đảm bảo chất lượng và nhất quán dữ liệu, đặc biệt với cách tiếp cận update-driven, giúp giảm thiểu sai lệch khi tích hợp. Ông nhấn mạnh rằng “Data Cleaning” là quá trình làm sạch toàn diện, không chỉ sửa lỗi mà còn chuẩn bị dữ liệu cho phân tích hiệu quả.

DATA WAREHOUSING – TERMINOLOGIES

Nội dung:

  • Metadata: Thông tin mô tả và cung cấp bối cảnh về dữ liệu trong kho dữ liệu, giúp người dùng và hệ thống hiểu rõ dữ liệu đó là gì, đến từ đâu, và được sử dụng như thế nào. Ví dụ, nếu dữ liệu là một bảng doanh số bán hàng, metadata có thể bao gồm tên bảng, nguồn dữ liệu (ví dụ: hệ thống CRM), thời gian thu thập, ý nghĩa của từng cột (như “doanh thu” hoặc “ngày bán”), và cách dữ liệu được tổ chức. Nó giống như một “hướng dẫn sử dụng” hoặc “bản đồ” giúp định vị và quản lý dữ liệu hiệu quả trong kho dữ liệu.
  • Metadata Repository: Chứa:
    • Metadata kinh doanh (quyền sở hữu, định nghĩa).
    • Metadata vận hành (tính cập nhật, nguồn gốc).
    • Dữ liệu ánh xạ (nguồn, trích xuất, chuyển đổi).
    • Thuật toán tổng hợp (chiều, độ chi tiết).
  • Data Cube: Biểu diễn dữ liệu đa chiều bằng chiều và sự kiện (ví dụ: doanh số theo thời gian, mặt hàng, địa điểm).
  • Data Mart: Tập con dữ liệu cho nhóm cụ thể (ví dụ: marketing). Đặc điểm: nhỏ, tùy chỉnh, linh động, triển khai nhanh.
  • Virtual Warehouse: Góc nhìn qua kho dữ liệu hoạt động, dễ xây dựng, cần dư thừa năng lực.

Chi tiết thêm:

  • Chuyên gia khuyên dùng công cụ quản lý metadata (như Collibra) để tập trung hóa và tối ưu hóa metadata, kết hợp AI để tự động tạo metadata. Ralph Kimball nhấn mạnh rằng metadata tốt là “xương sống” của kho dữ liệu, giúp kết nối dữ liệu với nhu cầu kinh doanh.

DATA WAREHOUSING – DELIVERY PROCESS

Nội dung:

  • Tính chất: Kho dữ liệu không tĩnh, cần linh động để thích nghi với thay đổi yêu cầu kinh doanh.
  • Phương pháp thực hiện (Delivery Method): Biến thể của JAD, chia thành giai đoạn để giảm rủi ro, giao lợi ích dần dần:
    • Chiến lược CNTT (IT Strategy): Đầu tư chiến lược, cần quy trình kinh doanh để tạo lợi ích.
    • Business Case (Lập luận kinh doanh): Ước tính lợi ích, cần rõ ràng để đảm bảo tín nhiệm.
    • Tư vấn và Thiết kế (Education and Prototyping): Các tổ chức thử nghiệm khái niệm phân tích dữ liệu và được tư vấn về giá trị của kho dữ liệu trước khi chọn giải pháp. Điều này được thực hiện qua thiết kế mô hình ban đầu. Thiết kế giúp hiểu tính khả thi và lợi ích. Hoạt động thiết kế ở quy mô nhỏ hỗ trợ tư vấn nếu:
      • Mô hình thử nghiệm đáp ứng mục tiêu kỹ thuật rõ ràng.
      • Mô hình thử nghiệm có thể bị loại bỏ sau khi chứng minh tính khả thi.
      • Hoạt động xử lý tập con nhỏ của dữ liệu cuối cùng.
      • Thời gian thực hiện không quan trọng.
    • Yêu cầu kinh doanh (Business Requirements): Hiểu ngắn/trung hạn, xác định quy tắc, mô hình, nguồn dữ liệu.
    • Technical Blueprint (Bản thiết kế kỹ thuật): Kiến trúc dài hạn, chính sách lưu trữ, sao lưu, dung lượng.
    • Xây dựng phiên bản (Building the Version): Tạo sản phẩm nhỏ nhất có lợi ích.
    • Tải lịch sử (History Load): Tải dữ liệu lịch sử, mở rộng dung lượng.
    • Truy vấn Ad hoc (Ad hoc Query): Cấu hình công cụ truy vấn.
    • Tự động hóa (Automation): Tự động hóa vận hành (chuyển đổi, tải, sao lưu).
    • Mở rộng phạm vi (Extending Scope): Thêm dữ liệu hoặc data mart.
    • Tiến hóa yêu cầu (Requirements Evolution): Hỗ trợ thay đổi liên tục, thiết kế theo quy trình kinh doanh.

Chi tiết thêm:

  • Mike Ferguson khuyến nghị áp dụng phương pháp Agile và công nghệ đám mây (Snowflake) để tăng tính linh động. Dùng Power BI/Tableau trong “Tư vấn và Thiết kế” để trực quan hóa, kết hợp Apache Airflow cho tự động hóa.

DATA WAREHOUSING – SYSTEM PROCESSES

Nội dung:

  • Khác biệt: Không dự đoán được truy vấn, cần giải pháp linh động trên hệ thống mở (Unix, RDBMS).
  • Quy trình:
    • Extract and Load (Trích xuất và Tải): Trích xuất từ nguồn, tải vào kho tạm, kiểm soát thời điểm và nhất quán.
    • Cleaning and Transforming (Làm sạch và Chuyển đổi): Làm sạch dữ liệu để loại bỏ lỗi, trùng lặp, đảm bảo chất lượng; chuyển đổi dữ liệu để phù hợp với kho dữ liệu, bao gồm phân vùng và tổng hợp để tăng tốc truy vấn.
    • Backup and Archive (Sao lưu và Lưu trữ): Sao lưu định kỳ, lưu trữ dữ liệu cũ để khôi phục nhanh.
    • Query Management (Quản lý truy vấn): Quản lý truy vấn, định hướng nguồn, giám sát hồ sơ.

Chi tiết thêm:

  • Dùng công cụ ETL (Informatica, Talend) để tự động hóa trích xuất/tải, kết hợp phân vùng động dựa trên truy vấn thực tế.

DATA WAREHOUSING – ARCHITECTURE

Nội dung:

  • Khung phân tích vận hành của doanh nghiệp (Business Analysis Framework): Thiết kế kho dữ liệu bắt đầu từ việc hiểu và phân tích nhu cầu vận hành của doanh nghiệp, gọi là khung phân tích vận hành của doanh nghiệp. Đây là bước quan trọng để đảm bảo hệ thống đáp ứng mục tiêu của tổ chức. Lợi ích bao gồm tăng năng suất (truy xuất dữ liệu nhanh chóng), cung cấp góc nhìn nhất quán về khách hàng và sản phẩm (hỗ trợ quản lý quan hệ khách hàng), và giảm chi phí dài hạn (bằng cách theo dõi xu hướng hiệu quả). Khung này dựa trên bốn góc nhìn chính:
    • Top-down view: Xác định thông tin quan trọng cần đưa vào kho dữ liệu, ví dụ chọn dữ liệu doanh số thay vì toàn bộ giao dịch hàng ngày.
    • Data source view: Mô tả dữ liệu từ các hệ thống nguồn (như CRM, ERP), cách chúng được thu thập và quản lý.
    • Data warehouse view: Tập trung vào cách dữ liệu được lưu trữ trong kho, bao gồm bảng fact (số liệu như doanh thu) và bảng dimension (mô tả như thời gian, sản phẩm).
    • Business query view: Góc nhìn của người dùng cuối, ví dụ họ muốn truy vấn “doanh số theo khu vực trong 6 tháng qua”.
  • Kiến trúc ba tầng (Three-Tier Architecture): Kho dữ liệu thường được thiết kế theo mô hình ba tầng để tách biệt và tối ưu hóa các chức năng:
    • Bottom Tier (Tầng dưới): Là nền tảng lưu trữ dữ liệu, sử dụng server cơ sở dữ liệu quan hệ (RDBMS) như Oracle hoặc SQL Server. Tầng này nhận dữ liệu từ các nguồn qua quy trình ETL (Extract, Transform, Load), bao gồm trích xuất từ hệ thống nguồn, làm sạch, chuyển đổi, và tải vào kho. Ví dụ, dữ liệu giao dịch từ POS (Point of Sale) được tổng hợp thành bảng doanh thu theo ngày. Tầng dưới cũng quản lý metadata và đảm bảo dữ liệu sẵn sàng cho tầng trên.
    • Middle Tier (Tầng giữa): Là “bộ não” xử lý phân tích, chứa server OLAP để thực hiện các truy vấn đa chiều. Có hai cách triển khai chính:
      • ROLAP (Relational OLAP): Chuyển đổi truy vấn đa chiều thành SQL để chạy trên RDBMS, phù hợp với dữ liệu chi tiết nhưng chậm hơn khi tổng hợp.
      • MOLAP (Multidimensional OLAP): Lưu trữ dữ liệu trong mảng đa chiều, nhanh cho truy vấn tổng hợp nhưng cần không gian lưu trữ lớn. Tầng này quyết định cách dữ liệu được xử lý trước khi trả về kết quả.
    • Top Tier (Tầng trên): Là giao diện người dùng, cung cấp công cụ truy vấn, báo cáo (như Crystal Reports), phân tích (như Excel), và khai phá dữ liệu (data mining tools). Người dùng cuối (như giám đốc) sử dụng tầng này để tương tác với dữ liệu, ví dụ tạo biểu đồ doanh thu hoặc dự đoán xu hướng.
  • Mô hình kiến trúc kho dữ liệu: Có ba mô hình chính để thiết kế kho dữ liệu, mỗi mô hình phục vụ mục đích khác nhau:
    • Virtual Warehouse: Là một “lớp ảo” dựa trên dữ liệu hoạt động hiện có, không lưu trữ riêng mà truy vấn trực tiếp từ nguồn. Dễ xây dựng nhưng cần server nguồn mạnh, phù hợp cho các tổ chức nhỏ hoặc thử nghiệm ban đầu.
    • Data Mart: Kho dữ liệu nhỏ hơn, tập trung vào một chủ đề cụ thể (như marketing hoặc tài chính), phục vụ một nhóm người dùng nhất định. Ví dụ, data mart marketing chỉ chứa dữ liệu khách hàng và doanh số sản phẩm. Nó nhanh, dễ triển khai, nhưng có thể thiếu tính toàn diện.
    • Enterprise Warehouse: Kho dữ liệu toàn diện, tích hợp tất cả dữ liệu của tổ chức từ nhiều nguồn (hệ thống nội bộ, nhà cung cấp bên ngoài). Quy mô lớn (hàng terabyte), hỗ trợ phân tích tổng quát nhưng phức tạp và tốn kém để xây dựng.
  • Load Manager: Thành phần quan trọng trong kiến trúc, chịu trách nhiệm trích xuất dữ liệu từ nguồn, tải nhanh vào kho tạm, và thực hiện các chuyển đổi đơn giản (như đổi định dạng ngày tháng) trước khi dữ liệu được xử lý sâu hơn.
  • Các yếu tố cần xem xét khi thiết kế:
    • Nhu cầu kinh doanh: Kiến trúc phải dựa trên câu hỏi “Doanh nghiệp cần phân tích gì?” Ví dụ, nếu cần báo cáo doanh thu hàng tháng, thiết kế ưu tiên tổng hợp theo thời gian.
    • Khối lượng dữ liệu: Quyết định chọn RDBMS (cho dữ liệu lớn) hay mảng đa chiều (cho tốc độ). Một kho dữ liệu 100TB cần chiến lược phân vùng và lưu trữ hiệu quả.
    • Tần suất cập nhật: Dữ liệu lịch sử hiếm khi thay đổi, nhưng nếu cần làm mới thường xuyên (như từ hệ thống bán hàng), cần tối ưu quy trình ETL.
    • Người dùng: Số lượng và nhu cầu của người dùng (quản lý, phân tích viên) ảnh hưởng đến tầng trên, ví dụ cần công cụ BI mạnh như Tableau cho báo cáo trực quan.
    • Khả năng mở rộng: Thiết kế phải hỗ trợ tăng trưởng dữ liệu và người dùng trong tương lai, ví dụ dùng đám mây để dễ dàng mở rộng dung lượng.
  • Ví dụ thực tế: Một công ty bán lẻ thiết kế kho dữ liệu với tầng dưới lưu trữ dữ liệu giao dịch từ cửa hàng (RDBMS), tầng giữa dùng MOLAP để tổng hợp doanh số theo sản phẩm và thời gian, tầng trên cung cấp dashboard cho giám đốc xem xu hướng bán hàng theo khu vực. Nếu công ty mở rộng, data mart cho từng phòng ban (như marketing) có thể được thêm vào.

Chi tiết thêm:

  • Kết hợp kiến trúc đám mây (AWS Redshift, Google BigQuery) là xu hướng hiện đại, giúp tăng tính linh động và giảm chi phí phần cứng. Khi chọn giữa ROLAP và MOLAP, hãy cân nhắc: ROLAP tốt cho dữ liệu chi tiết và truy vấn ad hoc, MOLAP lý tưởng cho báo cáo nhanh với dữ liệu tổng hợp. Một thiết kế tốt giống như “bản vẽ ngôi nhà”: tầng dưới là móng vững chắc, tầng giữa là hệ thống điện nước thông minh, tầng trên là không gian sống tiện nghi cho người dùng.

DATA WAREHOUSING – OLAP

Nội dung:

  • OLAP là gì? OLAP (Online Analytical Processing – Xử lý phân tích trực tuyến) là một công nghệ cho phép người dùng phân tích dữ liệu đa chiều một cách nhanh chóng, linh hoạt và tương tác. Không giống OLTP (Online Transaction Processing) tập trung vào xử lý giao dịch hàng ngày (như ghi nhận đơn hàng), OLAP được thiết kế để hỗ trợ các nhà quản lý, nhà phân tích khám phá dữ liệu lịch sử trong kho dữ liệu, trả lời các câu hỏi phức tạp như “Doanh số sản phẩm X thay đổi thế nào theo thời gian ở từng khu vực?” hoặc “Khách hàng nào mua hàng nhiều nhất trong quý vừa qua?”. Nó dựa trên mô hình dữ liệu đa chiều, nơi dữ liệu được tổ chức thành các “khối” (data cube) với nhiều chiều (dimensions) như thời gian, sản phẩm, địa điểm, và các số liệu (measures) như doanh thu, số lượng.
  • Vai trò của OLAP: OLAP giúp biến dữ liệu thô trong kho dữ liệu thành thông tin có ý nghĩa, hỗ trợ ra quyết định chiến lược. Nó cung cấp khả năng truy cập nhanh (thường chỉ vài giây), nhất quán (kết quả không thay đổi bất ngờ), và tương tác (người dùng có thể tự do điều chỉnh góc nhìn dữ liệu mà không cần kỹ thuật phức tạp). Ví dụ, một giám đốc có thể dùng OLAP để xem tổng doanh thu theo tháng, sau đó “zoom” vào từng ngày hoặc so sánh giữa các khu vực mà không cần viết mã SQL dài dòng.
  • Các loại Server OLAP:
    • ROLAP (Relational OLAP): Sử dụng cơ sở dữ liệu quan hệ (RDBMS) để lưu trữ và truy vấn dữ liệu. Nó chuyển đổi các thao tác đa chiều thành truy vấn SQL, phù hợp với dữ liệu chi tiết và khối lượng lớn, nhưng tốc độ có thể chậm hơn khi xử lý tổng hợp phức tạp.
    • MOLAP (Multidimensional OLAP): Lưu trữ dữ liệu trong cấu trúc đa chiều (mảng), tối ưu cho tốc độ truy vấn nhanh, đặc biệt với dữ liệu đã được tổng hợp trước. Tuy nhiên, nó kém linh động khi xử lý dữ liệu chi tiết hoặc khối lượng lớn thưa thớt.
    • HOLAP (Hybrid OLAP): Kết hợp ưu điểm của ROLAP và MOLAP, lưu trữ tổng hợp trong mảng đa chiều (nhanh) và dữ liệu chi tiết trong RDBMS (mở rộng tốt). Đây là lựa chọn cân bằng giữa hiệu suất và khả năng mở rộng.
    • Specialized SQL Servers: Các server SQL chuyên dụng hỗ trợ truy vấn nâng cao trên lược đồ star/snowflake, thường dùng trong môi trường chỉ đọc, tối ưu cho các hệ thống kho dữ liệu cụ thể.
  • Thao tác OLAP (OLAP Operations): Các công cụ OLAP cho phép người dùng tương tác với dữ liệu qua các thao tác sau:
    • Roll-up: Tổng hợp dữ liệu lên mức cao hơn trong hệ thống phân cấp (hierarchy). Ví dụ, từ doanh số theo ngày lên tháng, hoặc từ thành phố lên quốc gia, giúp xem bức tranh tổng quát.
    • Drill-down: Ngược với Roll-up, chi tiết hóa dữ liệu xuống mức thấp hơn. Ví dụ, từ doanh số theo năm xuống quý, hoặc từ khu vực xuống từng cửa hàng, để khám phá chi tiết.
    • Slice: Chọn một chiều cụ thể từ khối dữ liệu để tạo ra một “lát cắt” (sub-cube). Ví dụ, chỉ xem doanh số của quý 1, loại bỏ các quý khác, giúp tập trung vào một khía cạnh.
    • Dice: Chọn một tập hợp nhiều chiều để tạo sub-cube nhỏ hơn. Ví dụ, xem doanh số của sản phẩm “Mobile” và “Modem” trong quý 1 và quý 2 ở Toronto và Vancouver, để phân tích một phần dữ liệu cụ thể.
    • Pivot (Rotate): Xoay trục dữ liệu để thay đổi cách trình bày, ví dụ chuyển từ xem doanh số theo thời gian sang theo sản phẩm, giúp nhìn dữ liệu từ góc độ khác.
  • Ví dụ thực tế: Giả sử bạn có dữ liệu doanh số với các chiều thời gian (năm, quý, tháng), sản phẩm (điện thoại, máy tính), và địa điểm (Hà Nội, TP.HCM). Với OLAP, bạn có thể:
    • Roll-up: Xem tổng doanh số năm 2023 thay vì từng tháng.
    • Drill-down: Xem doanh số tháng 3 ở Hà Nội.
    • Slice: Chỉ xem doanh số điện thoại.
    • Dice: Xem doanh số điện thoại và máy tính ở TP.HCM trong quý 1.
    • Pivot: Chuyển bảng từ doanh số theo tháng sang theo sản phẩm.

Chi tiết thêm:

  • HOLAP thường được xem là lựa chọn tối ưu cho các tổ chức cần cả hiệu suất cao (từ MOLAP) và khả năng mở rộng (từ ROLAP). Tích hợp OLAP với công cụ BI như Tableau hoặc Power BI giúp người dùng trực quan hóa dữ liệu dễ dàng, chẳng hạn vẽ biểu đồ doanh số theo thời gian chỉ bằng vài cú nhấp chuột. Để hiểu sâu hơn, hãy tưởng tượng OLAP như một “kính lúp đa năng”: bạn có thể phóng to, thu nhỏ, cắt lát, hoặc xoay dữ liệu để tìm ra câu trả lời mà không cần chờ đợi lâu hay phụ thuộc vào chuyên gia IT.

DATA WAREHOUSING – RELATIONAL OLAP (ROLAP)

Nội dung:

  • ROLAP: Dùng RDBMS, phân tích dữ liệu lớn, dễ thay đổi.
  • Thành phần: Logic tổng hợp, tối ưu DBMS, công cụ bổ sung.
  • Ưu điểm: Dùng RDBMS hiện có, lưu trữ hiệu quả.
  • Nhược điểm: Hiệu suất truy vấn kém.

Chi tiết thêm:

  • Phù hợp với tổ chức dùng RDBMS, cải thiện bằng caching/indexing.

DATA WAREHOUSING – MULTIDIMENSIONAL OLAP (MOLAP)

Nội dung:

  • MOLAP: Dùng bộ nhớ đa chiều, tối ưu hiệu suất.
  • Ưu điểm: Truy vấn nhanh, dễ dùng.
  • Nhược điểm: Không chứa dữ liệu chi tiết, kém với dữ liệu thưa thớt.
  • So sánh: Nhanh hơn ROLAP, cần cơ sở dữ liệu riêng.

Chi tiết thêm:

  • Dùng cho báo cáo quản lý, kết hợp nén dữ liệu để tối ưu lưu trữ.

DATA WAREHOUSING – SCHEMAS

Nội dung:

  • Star Schema: Một bảng chiều mỗi chiều, có thể dư thừa.
  • Snowflake Schema: Chuẩn hóa bảng chiều, giảm dư thừa.
  • Fact Constellation Schema: Nhiều bảng fact, chia sẻ chiều.
  • Định nghĩa bằng DMQL: Dùng cú pháp cube/dimension.

Chi tiết thêm:

  • Kimball ủng hộ Star Schema cho hiệu suất, Inmon chọn Snowflake cho phức tạp.

DATA WAREHOUSING – PARTITIONING STRATEGY

Nội dung:

  • Mục đích: Tăng hiệu suất, dễ quản lý, hỗ trợ sao lưu.
  • Phân vùng ngang: Theo thời gian (đoạn bằng/khác kích thước).
  • Phân vùng dọc: Chuẩn hóa, tách dòng.
  • Chọn khóa: Dựa trên yêu cầu kinh doanh.

Chi tiết thêm:

  • Thử nghiệm phân vùng với dữ liệu thực, dùng phân vùng động.

DATA WAREHOUSING – METADATA CONCEPTS

Nội dung:

  • Metadata: Thông tin mô tả và cung cấp bối cảnh về dữ liệu trong kho dữ liệu, giúp người dùng và hệ thống hiểu rõ dữ liệu đó là gì, đến từ đâu, và được sử dụng như thế nào. Ví dụ, nếu dữ liệu là một bảng doanh số bán hàng, metadata có thể bao gồm tên bảng, nguồn dữ liệu (ví dụ: hệ thống CRM), thời gian thu thập, ý nghĩa của từng cột (như “doanh thu” hoặc “ngày bán”), và cách dữ liệu được tổ chức. Nó giống như một “hướng dẫn sử dụng” hoặc “bản đồ” giúp định vị và quản lý dữ liệu hiệu quả trong kho dữ liệu.
  • Phân loại: Kinh doanh, kỹ thuật, vận hành.
  • Kho chứa: Định nghĩa, kinh doanh, vận hành, ánh xạ, thuật toán.
  • Thách thức: Phân tán, thiếu tiêu chuẩn.

Chi tiết thêm:

  • Dùng Collibra/Alation để quản lý metadata tập trung.

DATA WAREHOUSING – DATA MARTING

Nội dung:

  • Lý do: Kiểm soát truy cập, tăng tốc truy vấn.
  • Tiết kiệm chi phí: Xác định chức năng, công cụ, kiểm soát truy cập.
  • Thiết kế: Phiên bản nhỏ của starflake schema.
  • Chi phí: Phần cứng, mạng, thời gian.

Chi tiết thêm:

  • Dùng ảo hóa để giảm chi phí phần cứng.

DATA WAREHOUSING – SYSTEM MANAGERS

Nội dung:

  • Quản lý: Cấu hình, lập lịch, sự kiện, cơ sở dữ liệu, sao lưu.
  • Chi tiết: Configuration, Scheduling, Event, Database, Backup Recovery Manager.

Chi tiết thêm:

  • Dùng Oracle Enterprise Manager để tích hợp quản lý.

DATA WAREHOUSING – PROCESS MANAGERS

Nội dung:

  • Load Manager: Trích xuất, tải, chuyển đổi đơn giản.
  • Warehouse Manager: Kiểm tra, tổng hợp, sao lưu.
  • Query Manager: Định hướng, lập lịch truy vấn.

Chi tiết thêm:

  • Tích hợp AI vào Query Manager để tối ưu hóa.

DATA WAREHOUSING – SECURITY

Nội dung:

  • Yêu cầu: Phân loại dữ liệu/người dùng, ảnh hưởng hiệu suất.
  • Phân loại: Độ nhạy, chức năng, vai trò.
  • Kiểm toán: Theo dõi kết nối, truy cập.
  • Mạng/Di chuyển: Mã hóa, kiểm soát tệp.

Chi tiết thêm:

  • Dùng mã hóa cấp ứng dụng để tăng bảo mật.

DATA WAREHOUSING – BACKUP

Nội dung:

  • Thuật ngữ: Sao lưu hoàn toàn, từng phần, lạnh, nóng.
  • Phần cứng: Tape, Disk, Optical Jukeboxes.
  • Phần mềm: Networker, ADSM, quản lý sao lưu.

Chi tiết thêm:

  • Kết hợp sao lưu đám mây và tape.

DATA WAREHOUSING – TUNING

Nội dung:

  • Khó khăn: Động, truy vấn không dự đoán.
  • Đánh giá hiệu suất: Thời gian phản hồi, tỷ lệ quét.
  • Tuning Data Load: SQL layer, bypass checks, quản lý chỉ mục.
  • Integrity Checks: Giới hạn để tăng hiệu suất.
  • Tuning Queries: Fixed (báo cáo cố định), Ad hoc (theo người dùng).

Chi tiết thêm:

  • Dùng công cụ giám sát (SolarWinds) để tối ưu truy vấn.

DATA WAREHOUSING – TESTING

Nội dung:

  • Mức độ: Unit, Integration, System testing.
  • Lịch kiểm tra: Dự đoán thời gian, tăng gấp đôi dự kiến.
  • Kiểm tra sao lưu: Media failure, data loss.
  • Kiểm tra môi trường: Security, Scheduler, Disk, Tools.
  • Kiểm tra cơ sở dữ liệu: Manager, features, performance.
  • Kiểm tra ứng dụng: Tích hợp, chức năng.

Chi tiết thêm:

  • Dùng automation testing (Selenium) để tăng hiệu quả.