Kho dữ liệu - Lược đồ
Lược đồ là một mô tả hợp lý của toàn bộ cơ sở dữ liệu. Nó bao gồm tên và mô tả các bản ghi của tất cả các loại bản ghi bao gồm tất cả các mục dữ liệu liên quan và tổng hợp. Giống như cơ sở dữ liệu, kho dữ liệu cũng yêu cầu duy trì một lược đồ. Cơ sở dữ liệu sử dụng mô hình quan hệ, trong khi kho dữ liệu sử dụng lược đồ Star, Snowflake và Fact Constellation. Trong chương này, chúng ta sẽ thảo luận về các lược đồ được sử dụng trong kho dữ liệu.
Lược đồ sao
Mỗi chiều trong giản đồ hình sao chỉ được biểu thị bằng bảng một chiều.
Bảng thứ nguyên này chứa tập hợp các thuộc tính.
Biểu đồ sau đây cho thấy dữ liệu bán hàng của một công ty liên quan đến bốn thứ nguyên, đó là thời gian, mặt hàng, chi nhánh và địa điểm.
Có một bảng thực tế ở trung tâm. Nó chứa các phím của mỗi chiều trong số bốn chiều.
Bảng dữ kiện cũng chứa các thuộc tính, cụ thể là đô la đã bán và đơn vị đã bán.
Note- Mỗi thứ nguyên chỉ có một bảng thứ nguyên và mỗi bảng chứa một tập hợp các thuộc tính. Ví dụ: bảng thứ nguyên vị trí chứa tập thuộc tính {location_key, street, city, province_or_state, country}. Ràng buộc này có thể gây dư thừa dữ liệu. Ví dụ: "Vancouver" và "Victoria", cả hai thành phố đều thuộc tỉnh British Columbia của Canada. Các mục nhập cho các thành phố như vậy có thể gây dư thừa dữ liệu dọc theo các thuộc tính tỉnh_hoặc và quốc gia.
Lược đồ bông tuyết
Một số bảng thứ nguyên trong lược đồ Snowflake được chuẩn hóa.
Quá trình chuẩn hóa chia dữ liệu thành các bảng bổ sung.
Không giống như giản đồ Star, bảng kích thước trong lược đồ bông tuyết được chuẩn hóa. Ví dụ: bảng kích thước mặt hàng trong giản đồ hình sao được chuẩn hóa và chia thành hai bảng thứ nguyên, đó là mặt hàng và bảng nhà cung cấp.
Bây giờ, bảng thứ nguyên mặt hàng chứa các thuộc tính item_key, item_name, type, brand và nhà cung cấp-key.
Khóa nhà cung cấp được liên kết với bảng kích thước nhà cung cấp. Bảng thứ nguyên nhà cung cấp có chứa các thuộc tính nhà cung cấp_có_mã_có_nhà cung cấp và loại_nhà cung cấp.
Note - Do chuẩn hóa trong lược đồ Snowflake, độ dư thừa được giảm xuống và do đó, nó trở nên dễ bảo trì và tiết kiệm không gian lưu trữ.
Lược đồ Chòm sao Sự thật
Một chòm sao dữ kiện có nhiều bảng dữ kiện. Nó còn được gọi là giản đồ thiên hà.
Sơ đồ sau đây cho thấy hai bảng dữ liệu, đó là doanh số bán hàng và giao hàng.
Bảng thông số bán hàng giống như bảng trong giản đồ sao.
Bảng thông tin vận chuyển có năm thứ nguyên, đó là item_key, time_key, shipper_key, from_location, to_location.
Bảng dữ kiện vận chuyển cũng có hai thước đo, đó là đô la bán ra và đơn vị bán ra.
Cũng có thể chia sẻ bảng thứ nguyên giữa các bảng dữ kiện. Ví dụ: bảng thứ nguyên thời gian, mặt hàng và vị trí được chia sẻ giữa bảng thông tin bán hàng và giao hàng.
Định nghĩa lược đồ
Lược đồ đa chiều được định nghĩa bằng cách sử dụng Ngôn ngữ truy vấn khai thác dữ liệu (DMQL). Hai định nghĩa nguyên thủy, định nghĩa hình khối và định nghĩa kích thước, có thể được sử dụng để xác định kho dữ liệu và siêu thị dữ liệu.
Cú pháp cho định nghĩa khối lập phương
define cube < cube_name > [ < dimension-list > }: < measure_list >
Cú pháp cho định nghĩa thứ nguyên
define dimension < dimension_name > as ( < attribute_or_dimension_list > )
Định nghĩa giản đồ sao
Lược đồ hình sao mà chúng ta đã thảo luận có thể được xác định bằng Ngôn ngữ Truy vấn Khai thác Dữ liệu (DMQL) như sau:
define cube sales star [time, item, branch, location]:
dollars sold = sum(sales in dollars), units sold = count(*)
define dimension time as (time key, day, day of week, month, quarter, year)
define dimension item as (item key, item name, brand, type, supplier type)
define dimension branch as (branch key, branch name, branch type)
define dimension location as (location key, street, city, province or state, country)
Định nghĩa giản đồ bông tuyết
Lược đồ bông tuyết có thể được định nghĩa bằng DMQL như sau:
define cube sales snowflake [time, item, branch, location]:
dollars sold = sum(sales in dollars), units sold = count(*)
define dimension time as (time key, day, day of week, month, quarter, year)
define dimension item as (item key, item name, brand, type, supplier (supplier key, supplier type))
define dimension branch as (branch key, branch name, branch type)
define dimension location as (location key, street, city (city key, city, province or state, country))
Định nghĩa Lược đồ Chòm sao Sự thật
Lược đồ chòm sao sự kiện có thể được xác định bằng DMQL như sau:
define cube sales [time, item, branch, location]:
dollars sold = sum(sales in dollars), units sold = count(*)
define dimension time as (time key, day, day of week, month, quarter, year)
define dimension item as (item key, item name, brand, type, supplier type)
define dimension branch as (branch key, branch name, branch type)
define dimension location as (location key, street, city, province or state,country)
define cube shipping [time, item, shipper, from location, to location]:
dollars cost = sum(cost in dollars), units shipped = count(*)
define dimension time as time in cube sales
define dimension item as item in cube sales
define dimension shipper as (shipper key, shipper name, location as location in cube sales, shipper type)
define dimension from location as location in cube sales
define dimension to location as location in cube sales