Câu hỏi phỏng vấn Power BI

Bởi Aaron Cao · Cập nhật

Câu hỏi phỏng vấn Power BI
Phỏng vấn Power BI tập trung vào filter/row context của DAX, mô hình hóa dữ liệu và kiến trúc refresh. Bạn cần giải thích được sự khác nhau giữa measure và calculated column, mô tả filter context và row context, lý giải vì sao chọn star schema, chọn giữa Import và DirectQuery, và thiết lập row-level security.

Phỏng vấn Power BI tập trung vào filter/row context của DAX, mô hình hóa dữ liệu và kiến trúc refresh. Bạn cần giải thích được sự khác nhau giữa measure và calculated column, mô tả filter context và row context, lý giải vì sao chọn star schema, chọn giữa Import và DirectQuery, và thiết lập row-level security.

Những câu hỏi DAX nào xuất hiện ở hầu hết mọi vòng?

Bạn có thể dựng được một báo cáo chạy tốt mà vẫn bị vấp ở câu hỏi DAX, vì phỏng vấn kiểm tra mô hình đánh giá chứ không phải danh sách hàm. Phần này bao quát các câu hỏi DAX xuất hiện ở gần như mọi buổi phỏng vấn Power BI, và một câu trả lời tốt cần có gì.

  • Sự khác biệt giữa measure và calculated column là gì? Calculated column được tính từng dòng trong lúc refresh và lưu trong mô hình, tốn bộ nhớ. Measure được tính tại thời điểm truy vấn dựa trên filter context hiện tại và không lưu gì cả. Hãy nói rõ về bộ nhớ và thời điểm tính, chứ không chỉ “cái này thì động”.
  • Giải thích row context và filter context. Row context là dòng hiện tại trong một vòng lặp, filter context là tập hợp các bộ lọc do slicer, visual và DAX áp lên. Hầu hết kết quả gây bối rối đến từ việc kỳ vọng một cái nhưng lại nhận được cái kia.
  • CALCULATE làm gì? Nó đánh giá một biểu thức trong filter context đã bị thay đổi, và nó chuyển row context thành filter context. Phần thứ hai đó mới là điều nhà tuyển dụng chú ý lắng nghe.
  • Khi nào cần một iterator như SUMX? Khi phép tính phải thực hiện theo từng dòng trước khi gộp lại, ví dụ giá nhân số lượng, khi không có cột lưu sẵn tích số đó.
  • ALL làm gì, và vì sao lại kết hợp nó với CALCULATE? Nó loại bỏ bộ lọc, đó là cách xây dựng các measure tỷ lệ phần trăm trên tổng.
  • Giải thích RELATED so với RELATEDTABLE. Hướng đi rất quan trọng: một hàm đi sang phía “một”, hàm kia trả về các dòng từ phía “nhiều”.

Một thói quen hữu ích cho cả buổi phỏng vấn: khi câu trả lời DAX bắt đầu lan man, hãy quay lại với context. Gần như mọi câu hỏi đào sâu đều quy về việc context nào đang hoạt động và điều gì đã thay đổi nó.

Nên trả lời các câu hỏi mô hình hóa dữ liệu thế nào?

Câu hỏi mô hình hóa tách người chỉ biết dựng báo cáo khỏi người thực sự có thể chịu trách nhiệm cho một tập dữ liệu. Từ vựng được kỳ vọng ở đây mang tính chiều (dimensional).

  • Star schema hay snowflake, và vì sao? Star, vì hiệu năng truy vấn và DAX đơn giản hơn, với các dimension đã phi chuẩn hóa. Snowflake chỉ dùng khi một dimension thực sự lớn hoặc được chia sẻ. Một bảng phẳng duy nhất là câu trả lời khiến buổi phỏng vấn kết thúc sớm.
  • Fact table là gì và dimension table là gì? Fact chứa các sự kiện có thể đo lường ở một mức grain xác định, dimension chứa các thuộc tính mà bạn dùng để cắt lát dữ liệu.
  • Vì sao cardinality của relationship và hướng cross-filter lại quan trọng? Quan hệ một-nhiều theo một chiều là mặc định vì một lý do; lọc hai chiều tạo ra sự mập mờ và có thể cho ra tổng sai.
  • Bạn xử lý quan hệ nhiều-nhiều thế nào? Một bridge table, kèm theo giải thích ý nghĩa của các tổng sau đó.
  • Vì sao cần một date table riêng? Các hàm time intelligence yêu cầu một date table liên tục và được đánh dấu; nếu không có, các measure kiểu year-to-date hay cùng kỳ năm trước sẽ hoạt động sai.
  • Chuyển đổi này nên làm trong Power Query hay DAX? Định hình trong Power Query khi có thể, vì các phép chuyển đổi ở đó chỉ chạy một lần khi refresh thay vì mỗi lần truy vấn.

Một BI analyst phỏng vấn cho một đội reporting bán lẻ được hỏi vì sao tổng doanh số đúng theo sản phẩm nhưng sai theo khu vực. Câu trả lời mà hội đồng muốn là câu trả lời mô hình hóa, một relationship hai chiều tạo ra đường lọc mập mờ, chứ không phải viết lại DAX. Chẩn đoán ở tầng mô hình trước chính là bản năng được kiểm tra.

Các ngân hàng câu hỏi khác theo từng vị trí được tổng hợp tại câu hỏi phỏng vấn theo vai trò.

Họ hỏi gì về refresh, bảo mật và triển khai?

Những câu hỏi này xuất hiện trong phỏng vấn BI developer và analytics engineer, và đây là chỗ những ứng viên chỉ từng làm việc trong Power BI Desktop sẽ hết nội dung để nói.

  • Import, DirectQuery hay Composite? Import truy vấn nhanh nhất và bị giới hạn bởi bộ nhớ và khung giờ refresh. DirectQuery giữ dữ liệu luôn mới và đẩy tải sang nguồn, kèm theo các giới hạn của DAX. Composite kết hợp cả hai. Hãy nêu sự đánh đổi và một điều kiện để quyết định.
  • On-premises data gateway dùng để làm gì? Kết nối các dịch vụ đám mây với các nguồn dữ liệu nằm sau mạng nội bộ doanh nghiệp, phục vụ refresh theo lịch và DirectQuery.
  • Incremental refresh hoạt động thế nào? Phân vùng theo khoảng ngày để chỉ các phân vùng gần đây được nạp lại, cấu hình bằng các tham số khoảng mà tính năng này yêu cầu.
  • Bạn triển khai row-level security thế nào? Các role với biểu thức lọc DAX trên dimension table, cùng bảo mật động dùng hàm người dùng đăng nhập để tra cứu người dùng trong một mapping table.
  • Workspace, app, dataset, report: chúng liên quan với nhau thế nào? Kiến thức nền cơ bản về dịch vụ, và là một câu hỏi dễ trả lời sai với người chỉ từng làm việc trong Desktop.
  • Bạn cải thiện một báo cáo chạy chậm thế nào? Giảm số visual mỗi trang, ưu tiên measure hơn calculated column, giảm cardinality trên các cột relationship, và kiểm tra bằng Performance Analyzer.

Nếu kinh nghiệm của bạn hoàn toàn nằm trong Desktop, hãy nói thẳng điều đó và mô tả những gì bạn sẽ cần học thêm. Nhà tuyển dụng chấp nhận một khoảng trống được nói rõ; họ không chấp nhận kinh nghiệm triển khai bịa đặt rồi sụp đổ ở câu hỏi đào sâu tiếp theo.

Làm sao để luyện tập cho phỏng vấn Power BI?

Câu trả lời Power BI thất bại khi nói to theo một cách rất riêng: ứng viên biết sự khác biệt nhưng lại giải thích loanh quanh, vì họ chỉ từng thể hiện nó bằng cách nhấp chuột. Đọc một ngân hàng câu hỏi tạo ra cảm giác quen thuộc, và cảm giác quen thuộc đó sụp đổ khi một người lạ hỏi và chờ câu trả lời.

Hãy chọn năm câu hỏi ở trên mà bạn ít muốn bị hỏi nhất và trả lời to từng câu trong vòng dưới chín mươi giây, không nhìn màn hình. Nếu bạn không thể nói CALCULATE làm gì mà không cần vẽ hình, bạn chưa sẵn sàng nói điều đó trước hội đồng. Luyện tập cùng những câu hỏi đó với một AI phỏng vấn viên biết đào sâu gần với cuộc trò chuyện thật hơn là đọc lại ghi chú, và đó chính là mục đích của chế độ phỏng vấn thử.

Aaron Cao, nhà sáng lập SubcueAI, đã thiết kế chế độ luyện tập này xoay quanh việc lặp lại bằng lời nói thay vì truyền tải nội dung, vì danh sách câu hỏi thì dồi dào còn số lần nói ra thành tiếng thì không. Trong một buổi phỏng vấn thật, ứng dụng desktop và Side Panel của tiện ích trình duyệt có thể hiển thị cấu trúc trong lúc người phỏng vấn đang nói, điều này giúp ích nhiều nhất với nội dung bạn đã biết sẵn. Các bước thiết lập nằm ở trang hướng dẫn.

Câu hỏi thường gặp

Phỏng vấn Power BI có bao gồm bài kiểm tra thực hành không?

Thường là có. Một định dạng phổ biến là một tập dữ liệu cùng một nhiệm vụ ngắn: dựng một mô hình, viết hai hoặc ba measure, và tạo ra một visual. Một số đội thay vào đó xem xét một báo cáo bạn đã dựng sẵn và hỏi vì sao bạn đưa ra từng lựa chọn mô hình hóa.

Tôi cần biết bao nhiêu SQL cho một vị trí Power BI?

Đủ để đọc và viết join, aggregation và window function, vì phần lớn việc định hình dữ liệu diễn ra ở khâu trước đó. Các vị trí analytics engineer và BI developer hỏi nhiều hơn, bao gồm hiệu năng truy vấn và cách một view hay stored procedure nạp dữ liệu cho tập dữ liệu.

Câu hỏi phỏng vấn Power BI phổ biến nhất là gì?

Measure so với calculated column. Nó xuất hiện ở mọi cấp độ vì câu trả lời cho thấy bạn có hiểu về lưu trữ, thời điểm tính và evaluation context hay không, hay chỉ biết rằng một trong hai cái cập nhật theo slicer.

Tôi có nên học DAX Studio hay Tabular Editor trước khi phỏng vấn không?

Không bắt buộc với vị trí analyst, dù nhắc đến chúng cho thấy chiều sâu ở vị trí developer. Điều quan trọng hơn là giải thích được bạn sẽ dùng chúng để làm gì, như kiểm tra query plan hay chỉnh sửa hàng loạt measure, hơn là đã từng dùng qua.

Trợ lý AI có thể giúp gì trong một buổi phỏng vấn Power BI trực tiếp không?

Nó có thể hiển thị cấu trúc khi người phỏng vấn đang nói, điều hữu ích nhất khi bạn đã biết sẵn nội dung. Nó không thay thế được việc luyện tập, và chia sẻ màn hình, buổi ghi hình, bài đánh giá có giám sát cùng laptop do công ty quản lý đều nằm ngoài phạm vi.

Câu hỏi liên quan

← Thêm về Câu hỏi phỏng vấn theo vai trò & chủ đề