This past weekend, I had the pleasure of attending and speaking at SQL Saturday Atlanta! If you’re in the area, I highly recommend connecting with the local user group and getting to know fellow data nerds near you. Thank you to everyone who was able to make it out, it was great to see such a large in person SQL Saturday event post-pandemic! Big shout out to the volunteers, organizers, and sponsors who made it all happen. Thank you all for your time, hard work, and commitment that will lead to rebuilding the data community. This was the first conference I felt confident enough in my presentation to attend a session in every timeslot! Below are some takeaways I took from the sessions I attended, but there were a lot of other incredible sessions and I recommend checking out the schedule for any that interest you and reaching out to the speaker.
Attended Session Takeaways
- Practical Use Cases for Composite Models (Kevin Arnold)
- Never thought of using composite models for pulling in an enterprise model with a thin slice specific to the use case of the report. Genius method for maintaining a focused enterprise model while meeting the needs of your end users.
- Perspectives can be used with personalized visuals instead of hiding columns, so end users are not overwhelmed by column and measure options.
- Field parameters can also be used/created by end users for a cultivated experience that meets their business needs without impacting the larger audience of your enterprise model. If you haven’t heard of them (I hadn’t), highly recommend checking out this link.
- Planning Steps for a Power BI Report (Belinda Allen)
- Always ask stakeholders what their experience is with Power BI, it will help put all their questions and assumptions in context.
- Ask your stakeholder for the scope of success. If they can’t define what success is for the project, you have the wrong person or the wrong client.
- Show nothing in a needs gathering session. Listen and take notes. Similar to watching a movie before reading a book, it will severely limit the imagination necessary for an impactful report.
- Ask who is maintaining the data currently and who will continue to do so.
- Check out PowerBI.tips Podcast.
- Ask if they want data access or data analytics. This will let you know if a visual report is a waste of resources for them and/or if paginated report or something similar better fits their needs.
- Check out Chris Wagner’s blog, he has a great slide deck for a wireframing session with success owner after the needs gathering session.
- Host office hours or something similar to foster on-going user growth
- After project, always ask if we achieved defined success benchmarks. Try to give them a concrete ROI (ie x hours saved = x $ saved based on average salary).
- Introduction to Azure Synapse Studio Development Tools (Russel Loski)
- Synapse workspace can allow you to create T-SQL and python notebooks off items in Azure Data Lake Storage like csv and parquet files.
- Notebooks allow markdown to be side-by-side with code
- ctrl + space will bring up snippets to use within a notebook
- No indexing since it’s serverless, prepare for some wait time.
- We can promote column headers using a variable HEADER_ROW = TRUE
- DataOps 101 – A Better Way to Develop and Deliver Data Analytics (John Kerski)
- Check out the The DataOps Manifesto – Read The 18 DataOps Principles
- Principles are repeatable and adaptable to new technologies
- Make everything reproducible
- Versioning and automated testing are keys to building sustainable solutions
- Check out the DataOps Cookbook and pbi-tools
- Power BI Performance in 6 demos (Patrick LeBlanc & Adam Saxton from Guy in a Cube)
- To reduce the “other” line item in performance analyzer, limit the number of visual objects on a page.
- Optimize DAX when the line item is over 120 milliseconds.
- SLA for page loads is 5 seconds.
- Using drop downs in your slicer will delay DAX from running for that visual object. That deferred execution aids in speeding up the initial load.
- Tooltips run DAX behind the scenes on the initial load for visuals (you can see this by copying out the DAX query into the DAX Studio). To delay this execution until it’s needed, use a tooltip page.
- If the storage engine in DAX Studio is over 20 milliseconds, there’s opportunity to optimize.
- Variables limit the number of times a sub-measure will be run and speed up DAX queries behind visuals.
- Keep in mind while performance tuning, Power BI desktop has 3 caches – visual, report, and analysis services engine. You can clear all caches within the desktop tool except visual. To clear that cache, you need to close and reopen the PBIX file.
I cannot express enough how grateful I am for everyone who was able to make it to my session! To have so many established professionals in the field approach me afterwards telling me how well it went was a dream come true. If you’re interested in reviewing the slides and code, please check out my GitHub folder for all you will need to recreate the demo we went through. Miss it? No worries! I’ll be presenting this topic at SQLBits and the Power BI Cruise, so come join me! I’m also open to presenting at various user groups, feel free to reach out to me at firstname.lastname@example.org.
Again, thank you so much to everyone who made this weekend possible and please connect with me on LinkedIN and Twitter! I’d love to stay connected!