Cách học và sử dụng DAX hiệu quả trong Power BI

Ngày đăng: 30/09/2022
Khi làm việc với PowerBI, làm thế nào để học và sử dụng Data Analysis Expressions (DAX) một cách hiệu quả luôn là trăn trở với nhiều người. Bài viết hôm nay sẽ trả lời cho câu hỏi trên với những chia sẻ và lời khuyên đến từ Victor Klein – chuyên gia về hệ thống dữ liệu và có kinh nghiệm lâu năm với DAX PowerBI.

Những điều quan trọng cần lưu ý khi viết DAX

Khi mới làm quen và bắt tay vào thực hiện những thao tác bản nhất của DAX, chắc hẳn các bạn sẽ gặp khá nhiều khó khăn hoặc bối rối khi những giá trị tính ra bởi DAX có vẻ sai lệch, kỳ dị so với thực tế. Điều này sẽ thường xuyên xảy ra nếu ta sẽ không xem xét kỹ các yếu tố xung quanh DAX trước khi bắt tay vào viết các công thức cụ thể.

Hiểu data model

Cấu trúc Star Schema trong DAX Data Model
Cấu trúc Star Schema trong Data Model
Trước khi bạn viết bất cứ công thức DAX nào, một data model được thiết kế và xây dựng tốt là hết sức cần thiết. Việc hiểu những thứ về data model như: cấu trúc star schema, bảng fact và dimension, mối quan hệ giữa các bảng, chuẩn hóa dữ liệu,… là rất quan trọng. Một data model được tối ưu hóa sẽ thân thiện với người dùng hơn và hỗ trợ khả năng truy vấn dữ liệu trên hiệu suất cao. Một điều quan trọng khác là đưa tất cả dữ liệu về đúng kiểu dữ liệu của nó trong data model. Như vậy, ta có thể tránh được những lỗi gây ra bởi việc so sánh 2 kiểu dữ liệu khác nhau trong công thức DAX. Việc hiểu rõ và làm chủ toàn bộ data model là chìa khóa để ta có thể chắc chắn rằng công thức DAX được viết đang cho ra những giá trị tính toán chính xác và thực hiện với performance tốt nhất. Hãy ghi nhớ trong đầu trước khi viết bất kỳ một dòng DAX nào: Luôn luôn kiểm tra data model. 

Với DAX, bạn có thể làm được những gì

Trong Power BI, DAX được sử dụng để tạo các measures, calculated columns (cột tính) (ngay cả khi điều này không được khuyến khích), calculated tables (bảng tính) và các roles (thực hiện chức năng row level security). Hiểu rõ được từng cái trong những đối tượng này sẽ giúp ta có cái nhìn tổng quát về những thứ có thể làm được với DAX.Tôi nghĩ rằng khi viết một công thức DAX, điều đầu tiên cần làm là xác định được: mình đang cần tính toán chỉ số gì? Sẽ tính toán nó trên DAX như thế nào? Tạo một measures, calculated columns hay calculated tables,…Lại một lần nữa, hãy ghi nhớ trong đầu rằng: khi tạo một measure, nó trở thành một phần của data model, và khi ta gửi báo cáo lên Power BI Service, ta sẽ không thể sửa công thức trên đó nữa. 

Hiểu rõ context của công thức 

Có 2 loại contexts (ngữ cảnh) khác nhau trong DAX, filter (bộ lọc) row context (ngữ cảnh dòng). Hiểu và nắm rõ context là vô cùng quan trọng vì với cùng một công thức, trong context khác nhau sẽ cho ra những kết quả khác nhau. 

“Luôn Luôn có hai context và kết quả của công thức phụ thuộc vào cả hai” 

Đây là một câu được trích từ cuốn The Definitive Guide to DAX, của hai tác giả Marco Russo và Alberto Ferrari. Và quan trọng là thế nhưng context tính toán vẫn thường bị bỏ quên bởi những người mới bắt đầu làm quen với DAX. 

“Thụt lề” cũng quan trọng 

Cũng giống như bất kỳ ngôn ngữ lập trình nào khác, việc thụt lề đầu dòng khi viết code là rất quan trọng trong DAX. Việc thụt lề đầu dòng giúp code dễ đọc và dễ maintain hơn. Một việc cũng khá quan trọng khác là thêm những comments, chú thích vào trong measures để giúp những người sử dụng tiếp sau (và kể cả là chính bạn trong tương lai) có thể dễ dàng hiểu được tác dụng và vai trò của công thức DAX này là gì. 

Nên học DAX ở đâu và như thế nào

Có rất nhiều nguồn học liệu có sẵn cho những ai muốn học về DAX. Chọn lựa nguồn nào phụ thuộc vào cách tiếp cận phù hợp nhất với trải nghiệm học tập của mỗi người. Tuy vậy, tôi vẫn sẽ review những nguồn học tập đã và vẫn đang giúp tôi và cách bạn có thể tận dụng nó tốt nhất.

Học qua video

Bạn có thể xem playlist DAX Fridays! trên channel Curbal. Vào mỗi thứ 6 trong tuần, Ruth Martinez sẽ cho ra video về một biểu thức DAX mới. Và kênh đã được duy trì từ suốt năm 2016, vì vậy có rất nhiều videos và ví dụ thực hành để giúp bạn hiểu và học cách xây dựng những measures mới. Tôi thực sự recommand kênh của Ruth Martinez cho những bạn cần một nguồn học nhanh, miễn phí, và chất lượng. Không chỉ riêng DAX channel Curbal cũng có rất nhiều videos liên quan đến các chức năng khác của Power BI, rất đáng để xem qua. Microsoft learning path in DAX là một nguồn miễn phí và chất lượng để thực hành. Khác với youtube channel Curbal, ở đây có rất nhiều bài đọc và một số videos, bao quát từ những khai niệm đầu tiên và thao tác kỹ thuật, sau đó đi sâu vào những công thức phức tạp hơn. Ở đây cũng có một cái level bar, giúp bạn tập trung và có động lực hơn trong việc học. 

Học qua tài liệu

Nếu bạn thích học với sách, The Definitive Guide to DAX của hai tác giả Marco Russo và Alberto Ferrari, như tiêu đề của nó, là tài liệu độc tốt nhất mà bạn có thể tìm thấy về DAX. Nó bao quát tất cả những gì cần biết để có thể trở thành một chuyên gia về DAX. Các tác giả cũng có một blog, SQLBI.com. Ở đây có rất nhiều bài viết và training chất lượng. Vì vậy, theo dõi thường xuyên blog trên sẽ đem lại rất nhiều kiến thức mới bổ ích. Trên đây là những khuyến nghị và nguồn học liệu đã giúp tôi nhiều nhất trong quá trình học DAX của mình. Hy vọng nó cũng giúp các bạn đi đúng hướng với công cụ phân tích dữ liệu vô cùng tuyệt vời này! 

Tác giả: Victor Klein

 Nguồn bài viết: (2) DAX in Power BI – Learning path and recommendations | LinkedIn Tham khảo thêm các bài viết khác về Power BI tại: Power BI Archives – Datapot.vnTham khảo thêm khóa học: PL – 300: Microsoft Power BI Data Analyst

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *