Định nghĩa lược đồ

Một phần của tài liệu Thiết kế data warehouse và ứng dụng trong hệ thống thông tin ngành điện (Trang 41)

Data warehouse và kho dữ liệu hướng chủ đề có thể được định nghĩa bằng ngôn ngữ truy vấn khai phá dữ liệu (data mining query language) như mô tả bên dưới.

Định nghĩa lược đồ được miêu tả theo cú pháp sau:

define lược đồ (tên lược đồ) [<danh sách chiều>]: <danh sách độ đo>

Định nghĩa chiều được miêu tả theo cú pháp sau:

define dimension (tên chiều) as (<danh sách các thuộc tính>)

Bây giờ hãy xét ví dụ làm thế nào để định nghĩa lược đồ hình sao, lược đồ bông tuyết và lược đồ chòm sao trong nội dung mô tả ở phần trên.

Định nghĩa lược đồ hình sao:

define lược đồ 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)

Lệnh define lược đồ ở trên tạo ra một lược đồ gọi là sale_star tương ứng tới bảng sự kiện sales ở trung tâm của lược đồ. Lệnh này chỉ ra các chiều và hai độ đo là

dollars_sold units_sold. Các chiều cụ thể là time, item, branch location. Lệnh

define dimension được dùng để định nghĩa ra các chiều này.

Định nghĩa lược đồ bông tuyết:

define lược đồ 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 này thì tương tự như định nghĩa của sale_star trong định nghĩa lược đồ hình sao nhưng khác ở chỗ là bảng chiều timelocation được chuẩn hoá. Cụ thể là,

chiều item của lược đồ sale_star đã được chuẩn hoá trên lược đồ sales_snowflake

thành hai bảng chiều là itemsupplier. Chú ý rằng định nghĩa chiều cho supplier thì được chỉ ra trong định nghĩa của chiều item. Định nghĩa chiều supplier theo cách này tạo ra một supplier_key trên định nghĩa chiều item. Tương tự như vậy, chiều location

của lược đồ sale_star đã được chuẩn hoá trên lược đồ sale_sowflake thành hai bảng chiều, locationcity. Định nghĩa chiều city được chỉ ra trong cùng định nghĩa của chiều location. Theo cách này, thuộc tính city_key được tao ra một cách tường minh trong định nghĩa bảng chiều location.

Định nghĩa lược đồ chòm sao thực:

Lược đồ chòm sao có thể được định nghĩa như là một tập hợp của các lược đồ liên kết lại. Dưới đây là một ví dụ định nghĩa lược đồ chòm sao ở trên:

define lược đồ 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 lược đồ shipping [time, item, shipper, from location, to location]:

dollars_cost = sum(cost_in_dollars), units shipped = count(*)

define dimension time as time in lược đồ sales define dimension item as item in lược đồ sales

define dimension shipper as (shipper_key, shipper_name, location as location in lược đồ sales, shipper_type)

define dimension from_location as location in lược đồ sales define dimension to_location as location in lược đồ sales

Lệnh define lược đồ được sử dụng để định nghĩa ra lược đồ dữ liệu là sales

shipping tương ứng với 2 bảng sự kiện của lược đồ chòm sao được mô tả ở trên. Các chiều time, itemlocation của lược đồ sales được chia sẻ với lược đồ shipping. Trong ví dụ trên phần định nghĩa lược đồ shipping, chiều time được lấy lại định nghĩa từ từ chiều sales.

Một phần của tài liệu Thiết kế data warehouse và ứng dụng trong hệ thống thông tin ngành điện (Trang 41)