Kho dữ liệu Archikiến trúc, Thành phần & Sơ đồ Concepts
⚡ Tóm tắt thông minh
Kho dữ liệu ArchiKiến trúc xác định cách dữ liệu lịch sử và tích lũy từ nhiều nguồn được tổ chức thành các lớp phân cấp và các thành phần được kết nối, cho phép báo cáo, phân tích đáng tin cậy và một phiên bản thông tin duy nhất cho việc ra quyết định và dự báo của tổ chức.

Kho dữ liệu Concepts
A kho dữ liệu Hệ thống này tồn tại để cung cấp cho công ty một nguồn thông tin duy nhất đáng tin cậy phục vụ cho việc ra quyết định và dự báo. Nó là một hệ thống thông tin lưu trữ dữ liệu lịch sử và dữ liệu tích lũy được thu thập từ một hoặc nhiều nguồn.
Bằng cách tổ chức dữ liệu để phân tích thay vì giao dịch, kho dữ liệu giúp đơn giản hóa công việc báo cáo và phân tích của toàn bộ tổ chức.
Đặc điểm của kho dữ liệu
Kho dữ liệu có bốn đặc điểm nổi bật giúp phân biệt nó với cơ sở dữ liệu hoạt động thông thường:
- Định hướng chủ đề
- Tích hợp
- Biến thể theo thời gian
- Không bay hơi
Định hướng chủ đề
Kho dữ liệu (data warehouse) được định hướng theo chủ đề vì nó cung cấp thông tin về một chủ đề cụ thể chứ không phải về các hoạt động thường xuyên của công ty. Các chủ đề điển hình bao gồm bán hàng, tiếp thị và phân phối.
Thay vì xử lý dữ liệu hàng ngày, kho dữ liệu này tập trung vào mô hình hóa và phân tích để hỗ trợ ra quyết định. Nó cung cấp cái nhìn đơn giản, ngắn gọn về từng đối tượng và loại bỏ những dữ liệu không hỗ trợ quá trình ra quyết định.
Tích hợp
Việc tích hợp có mối liên hệ mật thiết với định hướng chủ đề. Trong kho dữ liệu, tích hợp có nghĩa là thiết lập một đơn vị đo lường chung cho tất cả các dữ liệu tương tự được lấy từ các cơ sở dữ liệu khác nhau, và lưu trữ dữ liệu đó theo một cách thức chung, được chấp nhận rộng rãi.
Kho dữ liệu được xây dựng bằng cách tích hợp dữ liệu từ nhiều nguồn khác nhau như máy tính chủ, cơ sở dữ liệu quan hệ và các tập tin phẳng. Nó cũng phải duy trì các quy ước đặt tên, định dạng và mã hóa nhất quán.
Sự nhất quán trong việc đặt tên, đo lường thuộc tính và cấu trúc mã hóa chính là điều giúp cho việc phân tích hiệu quả trở nên khả thi. Hãy xem xét ví dụ sau:
Trong ví dụ trên, ba ứng dụng được đánh dấu A, B và C đều lưu trữ thông tin về Giới tính, Ngày tháng và Số dư, nhưng mỗi ứng dụng lại lưu trữ theo một cách khác nhau:
- Ứng dụng A lưu trữ trường giới tính dưới dạng các giá trị logic như M hoặc F.
- Ứng dụng B lưu trữ trường giới tính dưới dạng giá trị số.
- Ứng dụng C lưu trữ trường giới tính dưới dạng giá trị ký tự.
- Sự khác biệt tương tự cũng áp dụng cho các trường Ngày và Số dư.
Sau quá trình chuyển đổi và làm sạch, tất cả dữ liệu này được lưu trữ trong kho dữ liệu ở định dạng chung.
Biến thể theo thời gian
Tầm nhìn thời gian của kho dữ liệu rộng hơn nhiều so với hệ thống vận hành. Dữ liệu được nhận diện trong một khoảng thời gian cụ thể và cung cấp góc nhìn lịch sử, do đó nó luôn mang yếu tố thời gian, dù là rõ ràng hay ngầm định.
Một trong những nơi mà sự chênh lệch thời gian này xuất hiện là trong cấu trúc của khóa bản ghi. Mỗi khóa chính trong kho dữ liệu đều phải chứa một yếu tố thời gian, chẳng hạn như ngày, tuần hoặc tháng.
Một khía cạnh khác của sự biến động theo thời gian là một khi dữ liệu đã được nhập vào kho dữ liệu, nó không thể được cập nhật hoặc thay đổi.
Không bay hơi
Kho dữ liệu cũng là loại dữ liệu không thay đổi, có nghĩa là dữ liệu cũ không bị xóa khi dữ liệu mới được cập nhật. Dữ liệu chỉ có thể đọc và được làm mới định kỳ, giúp các nhà phân tích nghiên cứu dữ liệu lịch sử và hiểu được những gì đã xảy ra và khi nào.
Vì không cần xử lý giao dịch, phục hồi hay kiểm soát đồng thời, kho dữ liệu bỏ qua các hoạt động xóa, cập nhật và chèn thường thấy trong một ứng dụng vận hành. Chỉ có hai thao tác dữ liệu được thực hiện trong kho dữ liệu:
- Tải dữ liệu
- Truy cập dữ liệu
Bảng dưới đây nêu bật một số điểm khác biệt chính giữa một ứng dụng vận hành và một kho dữ liệu:
| Operaứng dụng quốc tế | Kho dữ liệu |
|---|---|
| Chương trình phức tạp phải được mã hóa để đảm bảo rằng quy trình nâng cấp dữ liệu duy trì tính toàn vẹn cao của sản phẩm cuối cùng. | Loại sự cố này không xảy ra vì quá trình cập nhật dữ liệu không được thực hiện. |
| Dữ liệu được đặt ở dạng chuẩn hóa để đảm bảo dư thừa tối thiểu. | Dữ liệu không được lưu trữ ở dạng chuẩn hóa. |
| Công nghệ cần thiết để hỗ trợ các vấn đề về giao dịch, phục hồi dữ liệu, hoàn tác và giải quyết bế tắc khá phức tạp. | Nó cung cấp sự đơn giản tương đối về mặt công nghệ. |
Kho dữ liệu Archikiến trúc
Kho dữ liệu ArchiCấu trúc hệ thống rất phức tạp vì nó lưu trữ dữ liệu lịch sử và dữ liệu tích lũy từ nhiều nguồn khác nhau. Có ba cách tiếp cận để xây dựng các lớp kho dữ liệu: một tầng, hai tầng và ba tầng.
Kiến trúc một tầng Mục tiêu là giảm thiểu lượng dữ liệu được lưu trữ bằng cách loại bỏ sự dư thừa. Tuy nhiên, phương pháp này hiếm khi được sử dụng trong thực tế.
Kiến trúc hai tầng Nó tách biệt các nguồn dữ liệu vật lý hiện có khỏi kho dữ liệu. Hệ thống này không dễ mở rộng, hỗ trợ ít người dùng cuối hơn và có thể gặp sự cố kết nối do hạn chế của mạng.
Kiến trúc ba tầng Đây là thiết kế kho dữ liệu được sử dụng rộng rãi nhất.
Nó bao gồm ba cấp bậc: cấp trên, cấp giữa và cấp dưới:
- Bậc dưới cùng: Cơ sở dữ liệu của kho hàng đóng vai trò là tầng dưới cùng. Nó thường là một hệ thống cơ sở dữ liệu quan hệ, và dữ liệu được làm sạch, chuyển đổi và tải vào lớp này bằng các công cụ phía máy chủ.
- Tầng giữa: Tầng trung gian là một máy chủ OLAP được triển khai bằng mô hình ROLAP hoặc MOLAP. Nó trình bày một cách tuyệt đốitracNó cung cấp cái nhìn tổng quan về cơ sở dữ liệu và đóng vai trò trung gian giữa người dùng cuối và cơ sở dữ liệu.
- Bậc cao nhất: Tầng trên cùng là lớp giao diện người dùng (front-end). Nó chứa các công cụ và API được sử dụng để kết nối và trích xuất dữ liệu từ kho dữ liệu, chẳng hạn như các công cụ truy vấn, công cụ báo cáo, công cụ truy vấn được quản lý, công cụ phân tích và công cụ khai thác dữ liệu.
Thành phần kho dữ liệu
Các thành phần và kiến trúc tổng thể của một kho dữ liệu hoạt động cùng nhau như được minh họa trong sơ đồ bên dưới.
Kho dữ liệu được xây dựng trên máy chủ RDBMS, một kho lưu trữ thông tin trung tâm được bao quanh bởi các thành phần quan trọng giúp toàn bộ môi trường hoạt động hiệu quả, dễ quản lý và dễ truy cập.
Kho dữ liệu có năm thành phần chính, được mô tả bên dưới.
Cơ sở dữ liệu kho dữ liệu
Cơ sở dữ liệu trung tâm là nền tảng của môi trường kho hàng và được triển khai trên... RDBMS Công nghệ. Bởi vì hệ quản trị cơ sở dữ liệu quan hệ truyền thống được tối ưu hóa cho xử lý giao dịch hơn là lưu trữ dữ liệu, các thao tác tốn nhiều tài nguyên như truy vấn tùy chỉnh, kết hợp nhiều bảng và tổng hợp có thể làm chậm hệ thống.
Vì lý do đó, các phương pháp tiếp cận cơ sở dữ liệu thay thế được sử dụng:
- Các cơ sở dữ liệu quan hệ được triển khai song song để đảm bảo khả năng mở rộng, sử dụng các mô hình bộ nhớ dùng chung hoặc không dùng chung trên nhiều cấu hình đa xử lý hoặc song song quy mô lớn.
- Các cấu trúc chỉ mục mới được sử dụng để bỏ qua việc quét bảng quan hệ và cải thiện tốc độ.
- Cơ sở dữ liệu đa chiều (MDDB) được sử dụng để khắc phục những hạn chế của mô hình kho dữ liệu quan hệ. Một ví dụ là Essbase. Oracle.
Công cụ tìm nguồn cung ứng, mua lại, dọn dẹp và chuyển đổi (ETL)
Các công cụ thu thập, chuyển đổi và di chuyển dữ liệu thực hiện tất cả các chuyển đổi, tóm tắt và thay đổi cần thiết để biến dữ liệu thành định dạng kho dữ liệu thống nhất. Chúng cũng được gọi là ExtracCác công cụ t, Transform, and Load (ETL).
Chức năng của chúng bao gồm những điều sau:
- Ẩn danh dữ liệu theo quy định.
- Loại bỏ dữ liệu không cần thiết khỏi cơ sở dữ liệu vận hành trước khi tải vào kho dữ liệu.
- Tìm kiếm và thay thế các tên và định nghĩa phổ biến cho dữ liệu đến từ các nguồn khác nhau.
- Tính toán các bản tóm tắt và dữ liệu dẫn xuất.
- Điền các dữ liệu còn thiếu bằng giá trị mặc định.
- Loại bỏ dữ liệu trùng lặp đến từ nhiều nguồn khác nhau.
Kia là công cụ ETL Có thể tạo ra các tác vụ định kỳ (cron jobs), tác vụ nền (background jobs), chương trình Cobol và tập lệnh shell để thường xuyên làm mới kho dữ liệu và giúp duy trì siêu dữ liệu.
Do phải lấy dữ liệu từ nhiều hệ thống khác nhau, các công cụ ETL cũng phải xử lý được sự không đồng nhất về cơ sở dữ liệu và dữ liệu.
Siêu dữ liệu
Siêu dữ liệu nghe có vẻ phức tạp, nhưng thực chất nó chỉ là dữ liệu về dữ liệu, định nghĩa kho dữ liệu. Nó được sử dụng để xây dựng, duy trì và quản lý kho dữ liệu.
Trong kiến trúc hệ thống, siêu dữ liệu xác định nguồn gốc, cách sử dụng, giá trị và đặc điểm của dữ liệu, đồng thời định nghĩa cách dữ liệu có thể được thay đổi và xử lý, do đó nó luôn được kết nối chặt chẽ với kho dữ liệu.
Ví dụ, một dòng trong cơ sở dữ liệu bán hàng có thể chứa:
4030 KJ732 299.90
Thông tin này vô nghĩa cho đến khi siêu dữ liệu giải thích rằng nó đại diện cho số hiệu sản phẩm là 4030, ID đại lý bán hàng là KJ732 và tổng số tiền bán hàng là 299.90 đô la.
Do đó, siêu dữ liệu là một thành phần thiết yếu trong việc chuyển đổi dữ liệu thành kiến thức, và nó giúp trả lời các câu hỏi như:
- Kho dữ liệu chứa những bảng, thuộc tính và khóa nào?
- Dữ liệu đến từ đâu?
- Dữ liệu được tải lại bao nhiêu lần?
- Những sự biến đổi và thanh tẩy nào đã được áp dụng?
Siêu dữ liệu được chia thành hai loại:
- Siêu dữ liệu kỹ thuật: Đây là phần mô tả kho hàng dành cho các nhà thiết kế và quản trị viên xây dựng và vận hành nó.
- Siêu dữ liệu doanh nghiệp: Điều này giúp người dùng cuối dễ dàng hiểu được thông tin được lưu trữ trong kho dữ liệu.
Công cụ truy vấn
Mục tiêu chính của kho dữ liệu là cung cấp cho doanh nghiệp thông tin cần thiết để đưa ra các quyết định chiến lược, và các công cụ truy vấn là cách người dùng tương tác với hệ thống.
Các công cụ này được chia thành bốn loại:
- Công cụ truy vấn và báo cáo
- Công cụ phát triển ứng dụng
- Công cụ khai thác dữ liệu
- công cụ OLAP
Công cụ truy vấn và báo cáo
Các công cụ truy vấn và báo cáo được chia thành hai nhóm: công cụ báo cáo và công cụ truy vấn được quản lý.
Công cụ báo cáo Chia nhỏ hơn nữa thành các công cụ báo cáo sản xuất và các công cụ soạn thảo báo cáo trên máy tính để bàn:
- Người viết báo cáo: Những công cụ này được thiết kế dành cho người dùng cuối tự xây dựng các phân tích của riêng họ.
- Báo cáo sản xuất: Những công cụ này cho phép các tổ chức tạo ra các báo cáo hoạt động định kỳ và hỗ trợ các tác vụ xử lý hàng loạt khối lượng lớn như in ấn và tính toán. Một số ví dụ phổ biến bao gồm Brio, Business Objects, Oracle, PowerSoft và SAS Institute.
Công cụ truy vấn được quản lý Hỗ trợ người dùng cuối bằng cách chèn một lớp trung gian giữa người dùng và cơ sở dữ liệu, giúp che giấu sự phức tạp của SQL và cấu trúc cơ sở dữ liệu.
Công cụ phát triển ứng dụng
Khi các công cụ đồ họa và phân tích tích hợp sẵn không đáp ứng được nhu cầu phân tích của tổ chức, các báo cáo tùy chỉnh sẽ được xây dựng bằng các công cụ phát triển ứng dụng.
Công cụ khai thác dữ liệu
Khai thác dữ liệu giúp khám phá các mối tương quan, mô hình và xu hướng mới có ý nghĩa bên trong khối lượng dữ liệu lớn, và các công cụ khai thác dữ liệu tự động hóa quá trình khám phá đó.
Công cụ OLAP
OLAP Các công cụ được xây dựng trên cơ sở dữ liệu đa chiều và cho phép người dùng phân tích dữ liệu thông qua các chế độ xem đa chiều phức tạp.
Bus kho dữ liệu Archikiến trúc
Hệ thống bus kho dữ liệu xác định cách dữ liệu lưu chuyển trong kho. Luồng dữ liệu đó có thể được phân loại thành luồng vào, luồng lên, luồng xuống, luồng ra và luồng siêu dữ liệu.
Khi thiết kế hệ thống bus, bạn phải tính đến các chiều và dữ liệu chung trải rộng trên nhiều kho dữ liệu.
Kho dữ liệu
A dữ liệu mart Đây là lớp truy cập được sử dụng để cung cấp dữ liệu cho người dùng. Nó phù hợp với các kho dữ liệu lớn vì tốn ít thời gian và tiền bạc hơn để xây dựng, mặc dù không có định nghĩa thống nhất nào về kho dữ liệu con (data mart).
Nói một cách đơn giản, data mart là một nhánh của data warehouse. Nó phân vùng dữ liệu cho một nhóm người dùng cụ thể và có thể nằm trong cùng cơ sở dữ liệu với data warehouse hoặc trên một cơ sở dữ liệu riêng biệt.
Kho dữ liệu ArchiThực tiễn tốt nhất về kiến trúc
Để thiết kế một kiến trúc kho dữ liệu hiệu quả, hãy tuân theo các thực tiễn tốt nhất dưới đây:
- Hãy sử dụng các mô hình kho dữ liệu được tối ưu hóa cho việc truy xuất thông tin, cho dù đó là... chiều, phương pháp phi chuẩn hóa, hoặc phương pháp lai.
- Hãy lựa chọn phương pháp thiết kế phù hợp, dù là từ trên xuống hay từ dưới lên.
- Hãy đảm bảo dữ liệu được xử lý nhanh chóng và chính xác, đồng thời tổng hợp chúng thành một phiên bản duy nhất phản ánh sự thật.
- Thiết kế cẩn thận quy trình thu thập và làm sạch dữ liệu cho kho dữ liệu.
- Thiết kế một kiến trúc siêu dữ liệu cho phép chia sẻ siêu dữ liệu giữa các thành phần của kho dữ liệu.
- Hãy xem xét một OperaMô hình Kho dữ liệu quốc gia (ODS) khi nhu cầu truy xuất nằm gần cuối phạm vi dữ liệu tuyệt đối.trackim tự tháp hoạt động hoặc khi cần truy cập nhiều nguồn hoạt động khác nhau.
- Hãy đảm bảo mô hình dữ liệu được tích hợp chứ không chỉ đơn thuần là hợp nhất; trong trường hợp đó, hãy sử dụng mô hình dữ liệu 3NF, đây cũng là mô hình lý tưởng khi sử dụng các công cụ ETL và làm sạch dữ liệu.


