NEW
Font size
WorksheetsGK_KHO DỮ LIỆU
Total questions: 50
Worksheet time: 25mins
Loại bảng Fact nào phù hợp để lưu số dư tài khoản cuối mỗi tháng, nạp dữ liệu một lần mỗi tháng?
Transactional (Giao dịch)
Periodic Snapshot (Ảnh chụp định kỳ)
Accumulating Snapshot (Ảnh chụp tích lũy)
Factless Fact (Fact không có số đo)
Điều gì KHÔNG ĐÚNG về Materialized View tổng hợp doanh số theo Tháng khi bảng Fact_Sales phân vùng theo Tháng?
MV giúp báo cáo theo Tháng nhanh hơn.
MV cần được làm mới khi có dữ liệu mới.
Hệ thống tận dụng phân vùng bảng Fact khi refresh.
MV loại bỏ nhu cầu phân vùng bảng Fact.
Trong Star Schema, phép JOIN tốn kém nhất thường là giữa?
Bảng Dimension và Dimension.
Bảng Fact và Dimension.
Các bảng Fact với nhau.
Các bảng Mini-Dimension với nhau.
Kỹ thuật phân vùng bảng Fact thường dựa trên cột nào?
Cột có giá trị riêng biệt cao như Transaction_SK.
Cột khóa ngoại như Product_SK.
Cột thời gian như Order_Date_SK hoặc Month_ID.
Cột số đo như Sales_Amount.
Materialized View (MV) là gì?
View logic không lưu dữ liệu vật lý.
Bảng vật lý lưu kết quả tính toán trước.
Loại chỉ mục tiến tiến.
Tên gọi khác của bảng Dimension.
Ưu điểm của việc tách thuộc tính nhân khẩu học ra Mini-Dimension là gì?
Giúp bảng Dim_Customer ổn định và giảm bùng nổ dữ liệu.
Giúp bảng Fact_Sales nhỏ hơn vì chỉ cần 1 khóa ngoại.
Làm truy vấn đơn giản hơn vì ít bảng hơn.
Loại bỏ hoàn toàn nhu cầu sử dụng SCD.
Khi áp dụng Mini-Dimension, bảng Fact_Sales bị ảnh hưởng như thế nào?
Không ảnh hưởng, vẫn chỉ cần Customer_SK.
Phải chứa 2 khóa ngoại: Customer_SK và Demographics_SK.
Không cần Customer_SK nữa, chỉ cần Demographics_SK.
Phải chuẩn hóa theo kiểu Snowflake.
Mục đích chính của việc sử dụng Khóa thay thế (Surrogate Key) trong bảng Dimension là gì?
Để tiết kiệm dung lượng lưu trữ vì Khóa thay thế luôn là số nguyên nhỏ.
Để cho phép bảng Dimension xử lý các thay đổi lịch sử (vd: SCD Type 2).
Để tăng tốc độ nạp (load) dữ liệu từ hệ thống nguồn (OLTP).
Để thay thế hoàn toàn cho B-Tree Index.
Kỹ thuật nào giúp bỏ qua 9 năm dữ liệu cũ khi truy vấn 3 tháng gần nhất?
Chỉ mục Bitmap trên Order_Date.
Phân vùng bảng Fact_Sales theo Order_Date.
Tạo Materialized View cho 3 tháng gần nhất.
Sử dụng SCD Type 2 cho Dim_Time.
Thành phần cốt lõi để triển khai SCD Type 2 thành công là gì?
Sử dụng Khóa tự nhiên (Natural Key) làm khóa chính.
Sử dụng Khóa thay thế (Surrogate Key) làm khóa chính.
Sử dụng kỹ thuật Thêm cột mới (Type 3).
Sử dụng chỉ mục Bitmap trên bảng Dimension.
Nhận xét đúng nhất về chiến lược phân vùng và tạo chỉ mục Bitmap trên cột Order_Month?
Cả hai đều tốt và nên làm đồng thời.
Chỉ nên phân vùng, tạo Bitmap là ý tưởng tồi.
Chỉ nên tạo Bitmap, phân vùng không giúp.
Cả hai đều dùng để giải quyết SCD Type 2.
Khi bảng Fact_Sales được phân vùng theo Month_ID, truy vấn tìm SUM(Sales) theo Product_ID sẽ được tối ưu như thế nào?
Chỉ quét phân vùng tháng hiện tại.
Chỉ quét phân vùng sản phẩm 100.
Quét tất cả các phân vùng của bảng Fact_Sales.
Tạo chỉ mục Bitmap tạm thời.
Khi cửa hàng chuyển địa điểm và tạo hàng mới trong Dim_Store theo SCD Type 2, giao dịch bán hàng mới sẽ lưu khóa ngoại nào?
Store_SK = 101
Store_SK = 102
Store_SK (tự nhiên) = "Store_A"
Cả 101 và 102
Kỹ thuật nào KHÔNG phải là tối ưu hóa truy vấn phổ biến trong DW?
Đánh chỉ mục (Indexing)
Phân vùng (Partitioning)
Chuẩn hóa bậc 3 (3NF)
Materialized Views
Kỹ thuật nào KHÔNG ĐƯỢC PHÉP sử dụng khi không được làm mất lịch sử thay đổi nhà cung cấp?
SCD Type 2
SCD Type 3
SCD Type 1
Cả B và C
Thuật ngữ "Rapidly Changing Dimension" (RCD) đề cập đến vấn đề nào?
Bảng Fact có nhiều số đo.
Bảng Dimension có nhiều hàng hoặc thuộc tính thay đổi nhanh.
Bảng Dimension có ít thuộc tính.
Bảng Fact thay đổi cấu trúc hàng ngày.
Khi nào một truy vấn được gọi là Highly Selective?
Truy vấn trả về tập kết quả rất lớn (90%).
Truy vấn trả về tập kết quả rất nhỏ (0.01%).
Truy vấn sử dụng nhiều chỉ mục Bitmap.
Truy vấn không sử dụng chỉ mục.
Hệ thống OLTP có nhiều ghi dữ liệu, muốn tối ưu cho cột Store_Region (5 giá trị), giải pháp nào tốt nhất?
B-Tree Index
Bitmap Index
SCD Type 2
Materialized View
Loại bảng Fact nào có một dòng đại diện cho đơn hàng và cập nhật thông tin giao hàng theo thời gian?
Transactional (Giao dịch)
Periodic Snapshot (Ảnh chụp định kỳ)
Accumulating Snapshot (Ảnh chụp tích lũy)
Factless Fact (Fact không có số đo)
Khi dùng SCD Type 1 cho tất cả bảng Dimension, điều gì xảy ra với báo cáo so sánh doanh số Q1 năm nay và năm ngoái khi nhân viên bị điều chuyển khu vực?
Không ảnh hưởng vì Fact đã lưu dữ liệu.
Báo cáo bị sai lệch vì thuộc tính nhân viên bị ghi đè, mất lịch sử.
Báo cáo chính xác hơn vì tránh trùng lặp nhân viên.
Chỉ ảnh hưởng đến tốc độ truy vấn, không ảnh hưởng kết quả.
Với Dim_Product dùng SCD Type 2, phát biểu nào đúng về giao dịch bán Laptop X trước đổi giá?
Fact_Sales liên kết qua Khóa tự nhiên.
Giao dịch trước đổi giá có Product_SK = 101.
Giao dịch trước đổi giá tự động cập nhật Product_SK = 102.
Dim_Product vi phạm khóa chính.
Với Dim_Employee dùng SCD Type 2, Fact_Sales phân vùng theo Month, MV tổng hợp Sales theo Employee và Month, phát biểu nào đúng?
SCD Type 2 không cần nếu đã có MV.
Phân vùng không cần nếu đã có MV.
MV phải JOIN bằng Fact với nhiều phiên bản Dim_Employee.
Ba kỹ thuật không thể dùng cùng nhau.
Kỹ thuật nào KHÔNG đáp ứng yêu cầu báo cáo doanh thu phản ánh đúng giá sản phẩm tại thời điểm bán?
SCD Type 2 (Thêm hàng mới)
SCD Type 1 (Ghi đè)
Sử dụng Effective_Date trong bảng Dimension
Sử dụng Khóa thay thế trong bảng Fact
Phát biểu nào sau đây KHÔNG ĐÚNG khi so sánh Star Schema và Snowflake Schema?
Star Schema có tốc độ truy vấn nhanh hơn do cần ít phép JOIN hơn.
Snowflake Schema tiết kiệm dung lượng lưu trữ hơn do chuẩn hóa các bảng Dimension.
Star Schema loại bỏ hoàn toàn dư thừa dữ liệu trong các bảng Dimension.
Snowflake Schema thường làm cho các câu lệnh SQL JOIN trở nên phức tạp hơn.
Nhược điểm lớn nhất của SCD Type 3 là gì?
Làm mất hoàn toàn lịch sử.
Làm bảng Dimension tăng kích thước nhanh.
Chỉ hỗ trợ theo dõi một số lượng giới hạn các thay đổi.
Yêu cầu bảng Fact lưu cả hai khóa.
Hệ thống DW chủ yếu đọc dữ liệu, muốn tối ưu cho cột Store_Region (5 giá trị), giải pháp nào tốt nhất?
B-Tree Index
Bitmap Index
SCD Type 2
Partitioning theo Store_Region
Đánh đổi lớn nhất khi sử dụng Materialized View là gì?
Làm chậm câu lệnh SELECT.
Dữ liệu có thể lỗi thời và cần làm mới.
Không xử lý được SUM hoặc AVG.
Không thể đánh chỉ mục.
Số đo nào trong bảng Fact_Sales không thể cộng (SUM) một cách an toàn trên mọi chiều?
Quantity_Sold
Unit_Price
Total_Revenue
Cả A và C
Tại sao tạo chỉ mục Bitmap trên cột Transaction_ID của bảng Fact_Sales là quyết định tồi?
Transaction_ID có tính chọn lọc thấp.
Transaction_ID có giá trị riêng biệt cao.
Chỉ mục Bitmap không hoạt động trên bảng Fact.
Chỉ mục Bitmap làm chậm truy vấn SELECT.
Trong mô hình Star Schema, thành phần nào đóng vai trò là cầu nối giữa các bảng Dimension?
Bảng Fact (Fact Table)
Khóa thay thế (Surrogate Key)
Bảng Staging Area
Không có cầu nối nào; các Dimension không liên kết trực tiếp với nhau.
Khi nào phương pháp Incremental Maintenance cho MV phù hợp nhất?
Bảng Fact không bao giờ thay đổi.
MV được xây dựng lại hoàn toàn mỗi đêm.
Dữ liệu chỉ được thêm mới, không có UPDATE/DELETE.
MV chỉ dùng một lần mỗi năm.
Trong ba loại SCD (Type 1, 2, 3), loại nào làm thay đổi cấu trúc bảng Dimension?
Type 1
Type 2
Type 3
Cả Type 2 và Type 3
Sự khác biệt chính giữa SCD Type 2 và Mini-Dimension là gì?
SCD Type 2 cho thuộc tính thay đổi chậm, Mini-Dimension cho thuộc tính thay đổi nhanh.
SCD Type 2 thêm cột mới, Mini-Dimension thêm hàng mới.
SCD Type 2 làm bảng Fact lớn hơn, Mini-Dimension làm bảng Dimension lớn hơn.
Không có khác biệt, chúng là một.
Giải pháp Mini-Dimension giải quyết vấn đề RCD bằng cách nào?
Ghi đè (SCD Type 1) tất cả thuộc tính thay đổi nhanh.
Xóa các thuộc tính thay đổi nhanh khỏi DW.
Tách thuộc tính thay đổi nhanh ra bảng Dimension riêng.
Tách thuộc tính ổn định ra bảng Dimension riêng.
Cột nào trong Fact_Sales KHÔNG nên dùng chỉ mục Bitmap?
Store_SK (500 cửa hàng)
Product_SK (60.000 sản phẩm)
Payment_Type_ID (5 loại thanh toán)
Sales_Amount (số đo NUMBER(10,2))
Tại sao số đo Inventory_Level là ví dụ điển hình của Semi-Additive?
Nó không thể cộng (SUM) theo bất kỳ chiều nào.
Nó có thể cộng (SUM) theo chiều Thời gian nhưng không thể cộng theo chiều Cửa hàng.
Nó có thể cộng (SUM) theo chiều Cửa hàng và Sản phẩm nhưng không thể cộng theo chiều Thời gian.
Nó chỉ có thể được tính trung bình (AVG), không bao giờ được SUM.
Khi sử dụng Deferred / Periodic Refresh cho MV chạy lúc 2 giờ sáng, điều gì đúng?
Dữ liệu MV luôn chính xác 100%.
Báo cáo lúc 3 giờ chiều phản ánh dữ liệu đến 2 giờ sáng.
Làm mới diễn ra ngay sau giao dịch mới.
Kỹ thuật không dùng được trong DW.
Bảng Fact nào là ví dụ về Faceless Fact Table (bảng không có số đo)?
Bảng ghi lại doanh số bán hàng mỗi ngày.
Bảng ghi lại số lượng tồn kho cuối ngày.
Bảng ghi lại các sinh viên đã tham dự một lớp học cụ thể (chỉ chứa các khóa ngoại).
Bảng ghi lại tỷ lệ phần trăm chiết khấu.
Giải pháp tối ưu nhất cho báo cáo tổng hợp doanh thu theo Quý và Vùng chạy chậm?
Tạo Materialized View lưu kết quả tổng hợp.
Đánh chỉ mục B-Tree cho Sales_Amount.
Sử dụng SCD Type 2 cho Dim_Region.
Phân vùng bảng Fact theo Region.
Khi sử dụng SCD Type 1 cho bảng Dim_Employee, nhân viên được chuyển phòng ban, điều gì xảy ra với báo cáo doanh số năm ngoái?
Dữ liệu báo cáo doanh số của nhân viên năm ngoái bị xóa.
Báo cáo doanh số năm ngoái sẽ hiển thị phòng ban mới của nhân viên.
Hệ thống tạo dòng nhân viên mới gây trùng lặp.
Bảng Fact_Sales không thể JOIN với Dim_Employee nữa.
Làm thế nào để phân tích doanh số theo Products và Demographics khi cả hai đều là Dimension?
JOIN Dim_Product trực tiếp với Dim_Demographics.
JOIN Dim_Product -> Fact_Sales -> Dim_Customer -> Dim_Demographics.
Không thể thực hiện vì hai Dimension không liên quan.
Tạo Materialized View chỉ chứa Dim_Product và Dim_Demographics.
Khi bảng Dimension dùng SCD Type 2 tăng kích thước, ảnh hưởng đến hiệu suất là gì?
Không ảnh hưởng vì Dimension luôn nhỏ.
Làm chậm quá trình nạp bảng Fact do lookup lớn hơn.
Làm chỉ mục Bitmap hiệu quả hơn.
Làm Materialized View không dùng được.
Phương pháp bảo trì MV nào chỉ tính toán các thay đổi delta và cập nhật MV?
Deferred / Periodic Refresh
Lazy Refresh
Incremental Maintenance
Full Refresh
Tại sao chỉ mục Bitmap thường không dùng cho hệ thống OLTP có nhiều cập nhật?
OLTP không đủ dung lượng lưu trữ Bitmap.
Cập nhật Bitmap gây khóa và nghẽn.
OLTP không có cột Low Cardinality.
Chỉ mục Bitmap chỉ đọc.
Chỉ mục Bitmap phù hợp sử dụng cho cột nào?
Cột khóa chính của bảng Fact.
Cột có giá trị riêng biệt cao (Email, CMND).
Cột có giá trị riêng biệt thấp (Gender, Status).
Cột kiểu VARCHAR kích thước lớn.
Tại sao áp dụng SCD Type 2 cho thuộc tính thay đổi nhanh trên Dim_Customer lớn là ý tưởng tồi?
Làm mất lịch sử tín dụng.
Yêu cầu thêm cột mới làm bảng rộng.
Kích thước bảng bùng nổ do thêm nhiều hàng.
Credit_Score là số đo nên nằm trong Fact.
Khi dùng SCD Type 2, làm sao lấy doanh số và thông tin khách hàng tại thời điểm hiện tại?
JOIN Dim_Customer ON ... WHERE Dim_Customer.Is_Current = 'Yes'
JOIN Dim_Customer ON Fact_Sales.Customer_SK = Dim_Customer.Customer_SK
JOIN Dim_Customer ON Fact_Sales.Natural_Key = Dim_Customer.Natural_Key
Không thể lấy được, SCD Type 2 chỉ dùng cho lịch sử.
Thành phần nào KHÔNG bắt buộc phải có trong một bảng Dimension?
Một khóa chính (Primary Key - thường là Surrogate Key).
Các thuộc tính mô tả (Descriptive attributes).
Các khóa ngoại (Foreign Keys) trỏ đến bảng Fact.
Dữ liệu (ví dụ: tên, mô tả).
Trong case study "Grocery Store", số đo "diện tích (m2) của cửa hàng" nên được lưu trữ ở đâu?
Trong bảng Fact_Sales như một số đo Non-Additive.
Trong bảng Fact_Sales như một số đo Semi-Additive.
Trong bảng Dim_Store (Dimension Cửa hàng) như một thuộc tính (attribute).
Trong một bảng Fact riêng gọi là Fact_Store_Metrics.
Kỹ thuật SCD nào phù hợp để theo dõi Tình trạng Hôn nhân hiện tại và ngay trước đó?
SCD Type 1 (Ghi đè)
SCD Type 2 (Thêm hàng mới)
SCD Type 3 (Thêm cột "Previous_Marital_Status")
Mini-Dimension
