Bringing source control to BI world!

Slides:



Advertisements
Similar presentations
Why you should be using Version Control. Matt Krass Electrical/Software Engineer November 22, 2014.
Advertisements

Git – versioning and managing your software L. Grewe.
Version control Using Git Version control, using Git1.
Managing Database objects in Visual Studio and Team Foundation Server Presented by Sean P SQL Saturday - Phoenix 2016.
Others Talk, We Listen. Managing Database Projects in Visual Studio 2013.
Agile BI with SQL Server 2012
SharePoint 2007 Business Intelligence
Analysis Services in times of Continuous Integration
How to Start SQL Server and SSDT BI in Local
CS5220 Advanced Topics in Web Programming Version Control with Git
Cloud BI with Azure Analysis Services
Stress Free Deployments with Octopus Deploy
What Is The SSIS Catalog and Why Do I Care?
Microsoft’s shiny dashboard-tool
Agile Analytics: Automated Builds and Deployments
What’s new in SQL Server 2017 for BI?
SQL Server deployments
Achieve more in less time using the new SQL PowerShell
Version Control.
Cloud BI with Azure Analysis Services
Version control, using Git
Report Builder as Self Service BI Solution
Agile BI with SQL Server 2012 & TFS 2012
CS5220 Advanced Topics in Web Programming Version Control with Git
Database Projects and Source Control (TFS)
Version Control Systems
Fun with Reporting Services Tools
Introduction to Team Foundation Server 2010
Administering and Deploying Power BI Solutions
Source Code Management
Make Power BI Your Own with the Power BI APIs
Git Version Control for Everyone
Database Code Management with VS 2017 and RedGate
Principles of report writing
SQL Server Analysis Services Fundamentals
SQL Server Analysis Services Fundamentals
Getting Your DB Schema Under Control With SSDT
Making PowerShell Useful
Intro to Unit Testing with tSQLt
“5 Minutes to WOW”, but HOW?
SQL Server and PowerShell Let’s Get Serious
Cloud BI with Azure Analysis Services
TFS from on-prem to the cloud with Azure DevOps Services
User Guide Subversion client TortoiseSVN
12/5/ :36 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Johan Hedberg Consultant & XLENT | Cloud and Integration specialist | Microsoft MVP Using VSTS to deploy BizTalk Server solutions, what you.
Making PowerShell Useful
The 6 P’s Powershell Profile Prepares Perfect Production Purlieu
Database Projects and Source Control (TFS)
DAT381 Team Development with SQL Server 2005
Introduction to VSTS Database Professional
Git started with git: 2018 edition
SQLOpsStudio Vs SSMS - There can be only one
GitHub 101 Using Github and Git for Source Control
Hop Aboard the Git Train – Transitioning from TFVC
Advanced Dashboard Creation with PerformancePoint Services 2010
SQLOpsStudio Vs SSMS - There can be only one
Michael Wall Senior DBA, Great Western Malting
Azure Data Factory V2 Templates
Bob Duffy 22 years in database sector, 250+ projects
Michelle Haarhues Keeping up with SSMS.
Keeping your SQL Code safe
Database Projects and Source Control (TFS)
Introduction to ETL with SQL Server Integration Services
The Future of Database Development
The New Tool in Your Kit: Azure Data Studio
Ready Pre-day Azure Monitoring Workshop
SSDT, Docker, and (Azure) DevOps
Open data in teaching and education
Presentation transcript:

Bringing source control to BI world! Heidi Hasting Bringing source control to BI world! Hello Everyone…

Thanks to All Sponsors Gold Sponsors Silver Sponsor Bronze Sponsor

Heidi Hasting Business Intelligence Professional over 7 years experience in Microsoft products. Formerly software developer. ALM/DLM enthusiast and Azure DevOps fan. Co-founder and Organiser of Adelaide Power BI User Group. Regular attendee at tech events (Azure Bootcamps, DevOps days, SQL Saturdays, Difinity and PASS Summit) Bit about me – what’s not on the slide Change hair colour frequently – makes it easy to find me at conferences, I go my natural colour brown to blend in For holidays I go to techie events Microsoft superfan

Why are you here? Do you ever have trouble finding the latest version of a report? Do you want to see the changes to a database/cube/report over time? Do you need to identify where a field is used across your BI Environment? Do you have issues with parallel development? Do you work in a Business Intelligence environment with no source control? If you answered yes to any of these questions then this session is for you! If you have questions throughout the presentation please feel free to ask them. Or if you don’t feel comfortable raising them in front of the group I’ll be around for the rest of today please do come see me. Ask the audience questions – Does anyone have databases? If a measure is changed do you know the who/what/when/why Do you have a backup Doesn’t require sysadmin to see things….

Agenda Why source control is important. The different Visual Studio project types (database, analysis services, integration services and reporting services) How to bring an existing business intelligence environment into Source Control How to make a change How source control helps collaboration. Tell em what your gonna tell em

Assumptions Source Control and access to it SQL Server Management Studio (SSMS) Visual Studio and/or SQL Server Data Tools Business Intelligence Database Engine SSIS = SQL Server Integration Services SSAS = SQL Server Analysis Services (multidimensional/tabular) SSRS = SQL Server Reporting Services Some experience working with traditional business intelligence solutions using Microsoft SQL Server So before we get started I want to just mention a few assumptions I’ve made You’ve heard of Source Control

Source Control – What & Why Source control is management of changes to files, websites… Sometimes called Version Control, Revision Control Keeps history for you, so you can see the changes to a database/cube/report over time Helps with the Who/What/When/Why Backup/Disaster Recovery parallel development Many more… https://tinyurl.com/yagva37m Laymans terms – think file systems, track changes on documents but for files, keeps history for you, allows you to revert changes, see changes over time, backup. Example of when it can help you out, db changes made, application breaks, hello source control tell me what changed… Or maybe you don’t have enough access to see all the details…

Source Control – Who Developer Database Administrator (DBA) Business Intelligence Developer Report Developer Data Scientist Data Analyst EVERYONE!!!!

Source Control – When Proactively Retrospectively Starting a new solution Database, ETL, Cube, Reports Scripts Retrospectively Solution already deployed Potentially managed on server environment. Proactively or Retrospectively Proactively when you are working on any artefact/CI put it into source control, if it ends up being deployed to an environment great. If it doesn’t you still have it for reference. Retrospectively – You have an existing environment and you just want to give yourself a backup, or get started part way through the process.

Scenario DB+SSIS+SSAS(Multi)+SSRS Lets start with a scenario, I am a business intelligence developer with a server environment containing SSDB, SSAS, SSIS, SSRS solutions

DB Here is my SSDB solution the WideWorldImporters DW

SSIS SSIS solution a DailyETLMain package in project deployment mode as part of the Daily ETL project

SSAS SSAS Multidimensional cube WideWorldImportersMultidimensionalCube

SSRS SSRS demo

Visual Studio

Visual Studio SSDT and SSDT-BI Now lets talk about what/how Visual Studio comes into play. Visual Studio or for some SQL Server Data Tools has a number of project types that support business intelligence solutions. Note: Power BI not so much. Over the years the installation components have changed, for this scenario I have installed SSDT and SSDT BI So If we load Visual Studio and do New > Project… then the next slide is what we would see for BI SSDT and SSDT-BI

So you can see here we have Analysis Services Multidimensional and Tabular, Integration Services (there is actually two but only one displayed there), Reporting Services and Database Project. So now that you’ve seen the project types lets setup projects for my environment

Demo: Bring Existing BI Environment into Visual Studio Projects

Solution is now in Source Control!!

Recap Why source control is important. The different Visual Studio project types (database, analysis services, integration services and reporting services) How to bring an existing business intelligence environment into Source Control How to facilitate Parallel Development

Where to from here Changes all locally in the visual studio projects nothing deployed to the environment We can deploy to the environment when ready We can revert the changes in source control… There is also the concept of branches in source control….

Questions

Further Information Wide World Importers samples - https://github.com/Microsoft/sql-server-samples/tree/master/samples/databases/wide-world-importers SQL Server Data Tools - https://www.visualstudio.com/vs/features/ssdt/ VSTS - https://www.visualstudio.com/team-services/ Database Projects: https://msdn.microsoft.com/en-us/library/hh272702(v=vs.103).aspx What is source control? https://www.codenewbie.org/blogs/what-is-source-control Troy Hunt’s “The 10 commandments of good source control management” - https://www.troyhunt.com/10-commandments-of-good-source-control/

Further Information VSTS GIT Branching Strategies https://docs.microsoft.com/en-us/vsts/git/concepts/git-branching-guidance?view=vsts ALM Rangers Guidance (checkout Branching and Merging Guide) https://blogs.msdn.microsoft.com/visualstudioalmrangers/2015/04/21/library-of-videos-and-publications-aka-msvsarpublications/ https://github.com/ALM-Rangers/Guidance

Thank for attending SQLSaturday Perth!!

Heidi Hasting - Contacts Twitter: @HeidiHasting

Screenshots in case of demo issues

Database Engine

Note: mention the folder structure options…

Design View

T-SQL View

Now lets add the SSIS project

SSIS

Add SSAS

Now lets add the SSRS project

Adding to Source Control - VSTS There are many source control solutions out there (Github, TFS, VSTS, Subversion, etc) but for this demo I will use VSTS. Here I have a VSTS Team Project called SQL Saturday South Island 2018 and as you can see its empty

Visual Studio While there are many options to add files to source control such as PowerShell, GIT Bash, GIT GUI, via Web and other tooling. I will be using Visual Studio In Visual Studio Load the Team Explorer pane Under Hosted Service Providers Select Connect… Connect to the VSTS server Connect to the SQL Saturday South Island 2018

We’re all connected and good to go

Select Add Solution to Source Control Select Add Solution to Source Control.. And Visual Studio knows that we want it to be added to the VSTS team project we were connected to

Solution and Project files are modified to include reference to source control.

As this is GIT the commit is local first, then we need to push to remote repository

Note the URL is from an earlier slide

Time to make a change Added Display Name, notice the little tick next to Customer as there has been a change to the file

Right click the file and select Commit

Let’s see the changes over time Added Display Name, notice the little tick next to Customer as there has been a change to the file

Local History Added Display Name, notice the little tick next to Customer as there has been a change to the file

Remote History - VSTS For remote repository history use VSTS

Compare Select the two versions to compare, right click and select Compare…

Added Display Name, notice the little tick next to Customer as there has been a change to the file