SlideShare a Scribd company logo
BI Markup Language: 
BI to the next level 
Davide Mauri 
SolidQ – Founder & Mentor 
@mauridb 
www.solidq.com 
dmauri@solidq.com 
13.12.2014
Thank you to all our SPONSORS! 
13.12.2014
Davide Mauri 
 20 Years of experience on the SQL Server Platform 
 Specialized in Data Solution Architecture, Database Design, 
Performance Tuning, Business Intelligence 
 Projects, Consulting, Mentoring & Training 
 Regular Speaker @ SQL Server events 
 Microsoft SQL Server MVP 
 President of UGISS (Italian SQL Server UG) 
 Mentor @ SolidQ 
 Find me here: 
 Blog: http://sqlblog.com/blogs/davide_mauri/default.aspx 
 Twitter: @mauridb 
13.12.2014
Agenda 
 BI, DWH & ETL today 
 BIML – What’s that? 
 Tools 
 BIDS Helper 
 MIST 
 BIML Kick Off 
 Basic Concepts 
 Automation With “Embedded” C# 
 BIML & PowerShell 
13.12.2014
Building a BI/DWH/ETL in 2014 
Is still a (almost) manual process 
A *lot* of repetitive low-value work 
No (or very few) standard tools available 
13.12.2014
How it should be 
Semi-automatic process 
 “develop by intent” 
Define the mapping logic from a semantic 
perspective 
 Source to Dimensions / Measures 
 (Metadata anyone?) 
Design the model and let the tool build it for you 
13.12.2014
How it should be 
Semi-automatic process 
 “develop by intent” 
Define the mapping logic from a semantic 
perspective 
 Source to Dimensions / Measures 
 (Metadata anyone?) 
Design the model and let the tool build it for you 
13.12.2014 
CREATE DIMENSION Customer 
FROM SourceCustomerTable 
MAP USING CustomerMetadata 
ALTER DIMENSION Customers 
ADD ATTRIBUTE LoyaltyLevel 
AS TYPE 1 
CREATE FACT Orders 
FROM SourceOrdersTable 
MAP USING OrdersMetadata 
ALTER FACT Orders 
ADD DIMENSION Customer
The perfect BI process & architecture 
13.12.2014 
Iterative!
Design Pattern 
“A general reusable 
solution to a 
commonly occurring 
problem within a 
given context” 
13.12.2014
No Monkey Work! 
13.12.2014 
Let the people think 
and let the machines 
do the «monkey» 
work.
BIML – What’s that? 
 Business Intelligence Markup Language 
 XML-Based 
 BI Object-Generator 
 SQL Server 
 Integration Services 
 Analysis Services 
13.12.2014
BIML – What’s that? 
 Allows a declarative approach to define BI 
objects 
 Favor automation 
 Human-readable 
 Compatible with SCC system 
 Allows merge of files 
 Born from “Project Vulcan” 
 Still available on CodePlex 
13.12.2014
BIML – What’s that? 
 Once objects are generated, BIML is not needed 
anymore 
 No additional runtime/components required 
 Support for SQL Server 2008 & 2012 objects 
 2014 is coming very soon 
 Anyway generated packages are automatically 
converted into 2014 packages by Visual Studio 2013, 
without problems  
13.12.2014
BIML – What’s that? 
 BIMLScript is based on the T4 templating engine. 
Allows the generation of BIML using 
 C# 
 VB.NET 
 BIML + BIMLScript = HTML + ASP Classic 
13.12.2014
Tools 
 BIDS Helper 
 http://bidshelper.codeplex.com/ 
 Visual Studio Plugin 
 Free 
 Source Code Available 
 Not all BIML features are supported 
 “Limited” to SSIS generation only 
13.12.2014
Tools 
 MIST 
 Full-Featured BIML IDE 
 Buy or Rent 
 Made by BIML creator: Varigence 
13.12.2014
DEMO 
 First Contact with BIML 
13.12.2014
Basic Concepts 
 A single BIML file can generate more than one 
SSIS Package 
 All SSIS object and related properties are exposed 
via BIML elements 
 Additional specific attribute: ConstraintMode 
 Linear or Parallel 
13.12.2014
Basic Concepts 
 Parallel Constraint Mode 
 “Inputs” connected to “Outputs” 
 SSIS Variables: “dot” notation 
13.12.2014
Basic Concepts 
 Control Flow and Data Flow 100% supported 
 In Data Flow it’s mandatory to define input and 
outputs 
 Since they aren’t constraints, but data streams  
13.12.2014
DEMO 
 BIML is your friend! 
13.12.2014
Automation with BIMLScript 
 BIML Script (T4) Directives: <#@ and #> 
13.12.2014
Automation with BIMLScript 
 BIML Script Tags: <# e #> 
 Allows usage of C# / VB.Net within BIML 
 The “=” symbol allows “in-line” code injection 
13.12.2014
Automation with BIMLScript 
 Metadata is needed in order to define what to 
generate 
 Metadata can be extracted by 
 BIML Engine (Hadron) 
 T-SQL Queries 
13.12.2014
Automation with BIMLScript 
 Metadata via BIML Engine (Hadron) 
13.12.2014
Automation with BIMLScript 
 Metadata via SQL Query 
13.12.2014
DEMO 
 BIMLScript RULES! 
13.12.2014
Debugging BIML 
 With complex BIML Script it can be difficult to 
“see” what’s happening behind the scenes 
 With MIST you can see the resulting BIML 
generated from BIML Script 
 But with BIDS Helper you’re on your own. 
 NLog can help a lot here! 
13.12.2014
Debugging BIML 
 Nlog: free, powerful & flexible logging 
infrastructure 
 http://nlog-project.org/ 
 Stand-Alone Assembly 
 Just reference the assembly in the BIML Script (T4) 
template and then use Nlog objects & methods 
 http://sqlblog.com/blogs/davide_mauri/default.aspx 
13.12.2014
DEMO 
 BIMLScript & NLog 
13.12.2014
BIML & PowerShell 
 What if you don’t like C#... 
 Or if BIMLScript looks to complex? 
 Especially without MIST? 
 One option is to generate BIML using PowerShell 
 Is just XML after all…. 
13.12.2014
DEMO 
 BIML & PowerShell 
13.12.2014
Conclusions 
 Use BIML!!!! 
 It helps to 
 Make better use of your time 
 Create your own ETL patterns 
 http://www.slideshare.net/davidemauri/automating-dwh-patterns- 
13.12.2014 
through-metadata 
 Support Refactoring & Enables Agility 
 Favor use of metadata
References 
 BIML Script 
 http://bimlscript.com/ 
 Stairway to BIML 
 http://www.sqlservercentral.com/stairway/100550/ 
 Automating DWH Patterns Through Metadata 
 http://www.slideshare.net/davidemauri/automating-dwh- 
13.12.2014 
patterns-through-metadata
Q&A 
Questions? 
13.12.2014
Thanks! 
13.12.2014

More Related Content

What's hot

Biml for Beginners: Speed up your SSIS development (SQLSaturday Iceland)
Biml for Beginners: Speed up your SSIS development (SQLSaturday Iceland)Biml for Beginners: Speed up your SSIS development (SQLSaturday Iceland)
Biml for Beginners: Speed up your SSIS development (SQLSaturday Iceland)
Cathrine Wilhelmsen
 
Microsoft 365 for Edu
Microsoft 365 for EduMicrosoft 365 for Edu
Microsoft 365 for Edu
Dennis Bottjer
 
Biml Academy 2 - Lesson 5: Importing source metadata into Biml
Biml Academy 2 - Lesson 5: Importing source metadata into BimlBiml Academy 2 - Lesson 5: Importing source metadata into Biml
Biml Academy 2 - Lesson 5: Importing source metadata into Biml
Cathrine Wilhelmsen
 
SPSNYC - Visio 2013 and Visio Services a quick guide
SPSNYC - Visio 2013 and Visio Services a quick guideSPSNYC - Visio 2013 and Visio Services a quick guide
SPSNYC - Visio 2013 and Visio Services a quick guide
Knut Relbe-Moe [MVP, MCT]
 
Overview of DITA 1.3
Overview of DITA 1.3Overview of DITA 1.3
Overview of DITA 1.3
IXIASOFT
 
Don't Drop ACID - Data Love - April 2021
Don't Drop ACID - Data Love - April 2021Don't Drop ACID - Data Love - April 2021
Don't Drop ACID - Data Love - April 2021
Matthew Groves
 
The DITA Iceberg, DITA Europe 2016
The DITA Iceberg, DITA Europe 2016The DITA Iceberg, DITA Europe 2016
The DITA Iceberg, DITA Europe 2016
IXIASOFT
 
Demystifying NoSQL - All Things Open - October 2020
Demystifying NoSQL - All Things Open - October 2020Demystifying NoSQL - All Things Open - October 2020
Demystifying NoSQL - All Things Open - October 2020
Matthew Groves
 
Applied progressive decoupling weather.com, angular, and drupal
Applied progressive decoupling  weather.com, angular, and drupalApplied progressive decoupling  weather.com, angular, and drupal
Applied progressive decoupling weather.com, angular, and drupal
Acquia
 
Full Trust Solution Development in SharePoint 2013
Full Trust Solution Development in SharePoint 2013Full Trust Solution Development in SharePoint 2013
Full Trust Solution Development in SharePoint 2013
Ed Musters
 
5 Reasons not to use Dita from a CCMS Perspective
5 Reasons not to use Dita from a CCMS Perspective5 Reasons not to use Dita from a CCMS Perspective
5 Reasons not to use Dita from a CCMS Perspective
Marcus Kesseler
 
Using Web Standards to create Interactive Data Visualizations for the Web
Using Web Standards to create Interactive Data Visualizations for the WebUsing Web Standards to create Interactive Data Visualizations for the Web
Using Web Standards to create Interactive Data Visualizations for the Web
philogb
 
Webinar: Windows Server 2003 End of Support
Webinar: Windows Server 2003 End of SupportWebinar: Windows Server 2003 End of Support
Webinar: Windows Server 2003 End of Support
Zynstra
 
O365Engage17 - What You Need to Know About Migrating to Exchange Online in 2017
O365Engage17 - What You Need to Know About Migrating to Exchange Online in 2017O365Engage17 - What You Need to Know About Migrating to Exchange Online in 2017
O365Engage17 - What You Need to Know About Migrating to Exchange Online in 2017
NCCOMMS
 
Building a Better Web with HTML5 and CSS3
Building a Better Web with HTML5 and CSS3Building a Better Web with HTML5 and CSS3
Building a Better Web with HTML5 and CSS3
Karambir Singh Nain
 
Delve and the Office Graph for IT- Pros & Admins
Delve and the Office Graph for IT- Pros & AdminsDelve and the Office Graph for IT- Pros & Admins
Delve and the Office Graph for IT- Pros & Admins
SPC Adriatics
 
Azure Umbraco workshop
Azure Umbraco workshopAzure Umbraco workshop
Azure Umbraco workshop
Orbit One - We create coherence
 
Grails At Linked
Grails At LinkedGrails At Linked
Grails At Linked
LinkedIn
 
The Superhero’s Method of Modern HTML5 Development by RapidValue Solutions
The Superhero’s Method of Modern HTML5 Development by RapidValue SolutionsThe Superhero’s Method of Modern HTML5 Development by RapidValue Solutions
The Superhero’s Method of Modern HTML5 Development by RapidValue Solutions
RapidValue
 
SharePoint Saturday St. Louis - SharePoint & jQuery
SharePoint Saturday St. Louis - SharePoint & jQuerySharePoint Saturday St. Louis - SharePoint & jQuery
SharePoint Saturday St. Louis - SharePoint & jQuery
Mark Rackley
 

What's hot (20)

Biml for Beginners: Speed up your SSIS development (SQLSaturday Iceland)
Biml for Beginners: Speed up your SSIS development (SQLSaturday Iceland)Biml for Beginners: Speed up your SSIS development (SQLSaturday Iceland)
Biml for Beginners: Speed up your SSIS development (SQLSaturday Iceland)
 
Microsoft 365 for Edu
Microsoft 365 for EduMicrosoft 365 for Edu
Microsoft 365 for Edu
 
Biml Academy 2 - Lesson 5: Importing source metadata into Biml
Biml Academy 2 - Lesson 5: Importing source metadata into BimlBiml Academy 2 - Lesson 5: Importing source metadata into Biml
Biml Academy 2 - Lesson 5: Importing source metadata into Biml
 
SPSNYC - Visio 2013 and Visio Services a quick guide
SPSNYC - Visio 2013 and Visio Services a quick guideSPSNYC - Visio 2013 and Visio Services a quick guide
SPSNYC - Visio 2013 and Visio Services a quick guide
 
Overview of DITA 1.3
Overview of DITA 1.3Overview of DITA 1.3
Overview of DITA 1.3
 
Don't Drop ACID - Data Love - April 2021
Don't Drop ACID - Data Love - April 2021Don't Drop ACID - Data Love - April 2021
Don't Drop ACID - Data Love - April 2021
 
The DITA Iceberg, DITA Europe 2016
The DITA Iceberg, DITA Europe 2016The DITA Iceberg, DITA Europe 2016
The DITA Iceberg, DITA Europe 2016
 
Demystifying NoSQL - All Things Open - October 2020
Demystifying NoSQL - All Things Open - October 2020Demystifying NoSQL - All Things Open - October 2020
Demystifying NoSQL - All Things Open - October 2020
 
Applied progressive decoupling weather.com, angular, and drupal
Applied progressive decoupling  weather.com, angular, and drupalApplied progressive decoupling  weather.com, angular, and drupal
Applied progressive decoupling weather.com, angular, and drupal
 
Full Trust Solution Development in SharePoint 2013
Full Trust Solution Development in SharePoint 2013Full Trust Solution Development in SharePoint 2013
Full Trust Solution Development in SharePoint 2013
 
5 Reasons not to use Dita from a CCMS Perspective
5 Reasons not to use Dita from a CCMS Perspective5 Reasons not to use Dita from a CCMS Perspective
5 Reasons not to use Dita from a CCMS Perspective
 
Using Web Standards to create Interactive Data Visualizations for the Web
Using Web Standards to create Interactive Data Visualizations for the WebUsing Web Standards to create Interactive Data Visualizations for the Web
Using Web Standards to create Interactive Data Visualizations for the Web
 
Webinar: Windows Server 2003 End of Support
Webinar: Windows Server 2003 End of SupportWebinar: Windows Server 2003 End of Support
Webinar: Windows Server 2003 End of Support
 
O365Engage17 - What You Need to Know About Migrating to Exchange Online in 2017
O365Engage17 - What You Need to Know About Migrating to Exchange Online in 2017O365Engage17 - What You Need to Know About Migrating to Exchange Online in 2017
O365Engage17 - What You Need to Know About Migrating to Exchange Online in 2017
 
Building a Better Web with HTML5 and CSS3
Building a Better Web with HTML5 and CSS3Building a Better Web with HTML5 and CSS3
Building a Better Web with HTML5 and CSS3
 
Delve and the Office Graph for IT- Pros & Admins
Delve and the Office Graph for IT- Pros & AdminsDelve and the Office Graph for IT- Pros & Admins
Delve and the Office Graph for IT- Pros & Admins
 
Azure Umbraco workshop
Azure Umbraco workshopAzure Umbraco workshop
Azure Umbraco workshop
 
Grails At Linked
Grails At LinkedGrails At Linked
Grails At Linked
 
The Superhero’s Method of Modern HTML5 Development by RapidValue Solutions
The Superhero’s Method of Modern HTML5 Development by RapidValue SolutionsThe Superhero’s Method of Modern HTML5 Development by RapidValue Solutions
The Superhero’s Method of Modern HTML5 Development by RapidValue Solutions
 
SharePoint Saturday St. Louis - SharePoint & jQuery
SharePoint Saturday St. Louis - SharePoint & jQuerySharePoint Saturday St. Louis - SharePoint & jQuery
SharePoint Saturday St. Louis - SharePoint & jQuery
 

Viewers also liked

Don't Repeat Yourself - An Introduction to Agile SSIS Development (24 Hours o...
Don't Repeat Yourself - An Introduction to Agile SSIS Development (24 Hours o...Don't Repeat Yourself - An Introduction to Agile SSIS Development (24 Hours o...
Don't Repeat Yourself - An Introduction to Agile SSIS Development (24 Hours o...
Cathrine Wilhelmsen
 
Sql bits creating a meta data driven ssis solution with biml
Sql bits   creating a meta data driven ssis solution with bimlSql bits   creating a meta data driven ssis solution with biml
Sql bits creating a meta data driven ssis solution with biml
Marco Schreuder
 
Generate SSIS packages automatically with Biml and BimlScript (SQLKonferenz 2...
Generate SSIS packages automatically with Biml and BimlScript (SQLKonferenz 2...Generate SSIS packages automatically with Biml and BimlScript (SQLKonferenz 2...
Generate SSIS packages automatically with Biml and BimlScript (SQLKonferenz 2...
Cathrine Wilhelmsen
 
Bring your data to life with Power BI
Bring your data to life with Power BIBring your data to life with Power BI
Bring your data to life with Power BI
Microsoft Österreich
 
Biml for Beginners: Speed up your SSIS development (SQLSaturday Chicago)
Biml for Beginners: Speed up your SSIS development (SQLSaturday Chicago)Biml for Beginners: Speed up your SSIS development (SQLSaturday Chicago)
Biml for Beginners: Speed up your SSIS development (SQLSaturday Chicago)
Cathrine Wilhelmsen
 
Real Time Power BI
Real Time Power BIReal Time Power BI
Real Time Power BI
Davide Mauri
 
Dashboarding with Microsoft: Datazen & Power BI
Dashboarding with Microsoft: Datazen & Power BIDashboarding with Microsoft: Datazen & Power BI
Dashboarding with Microsoft: Datazen & Power BI
Davide Mauri
 
Overview of Agile Methodology
Overview of Agile MethodologyOverview of Agile Methodology
Overview of Agile Methodology
Haresh Karkar
 

Viewers also liked (8)

Don't Repeat Yourself - An Introduction to Agile SSIS Development (24 Hours o...
Don't Repeat Yourself - An Introduction to Agile SSIS Development (24 Hours o...Don't Repeat Yourself - An Introduction to Agile SSIS Development (24 Hours o...
Don't Repeat Yourself - An Introduction to Agile SSIS Development (24 Hours o...
 
Sql bits creating a meta data driven ssis solution with biml
Sql bits   creating a meta data driven ssis solution with bimlSql bits   creating a meta data driven ssis solution with biml
Sql bits creating a meta data driven ssis solution with biml
 
Generate SSIS packages automatically with Biml and BimlScript (SQLKonferenz 2...
Generate SSIS packages automatically with Biml and BimlScript (SQLKonferenz 2...Generate SSIS packages automatically with Biml and BimlScript (SQLKonferenz 2...
Generate SSIS packages automatically with Biml and BimlScript (SQLKonferenz 2...
 
Bring your data to life with Power BI
Bring your data to life with Power BIBring your data to life with Power BI
Bring your data to life with Power BI
 
Biml for Beginners: Speed up your SSIS development (SQLSaturday Chicago)
Biml for Beginners: Speed up your SSIS development (SQLSaturday Chicago)Biml for Beginners: Speed up your SSIS development (SQLSaturday Chicago)
Biml for Beginners: Speed up your SSIS development (SQLSaturday Chicago)
 
Real Time Power BI
Real Time Power BIReal Time Power BI
Real Time Power BI
 
Dashboarding with Microsoft: Datazen & Power BI
Dashboarding with Microsoft: Datazen & Power BIDashboarding with Microsoft: Datazen & Power BI
Dashboarding with Microsoft: Datazen & Power BI
 
Overview of Agile Methodology
Overview of Agile MethodologyOverview of Agile Methodology
Overview of Agile Methodology
 

Similar to BIML: BI to the next level

Share point 2013 sartuday, SharePoint & ERP Integrations
Share point 2013 sartuday, SharePoint & ERP IntegrationsShare point 2013 sartuday, SharePoint & ERP Integrations
Share point 2013 sartuday, SharePoint & ERP Integrations
Dicky Kimeu
 
Real-Time PowerBI
Real-Time PowerBIReal-Time PowerBI
Real-Time PowerBI
SolidQIT
 
Bim pres 120319
Bim pres  120319Bim pres  120319
Bim pres 120319
nadia1w
 
Snowflake: The most cost-effective agile and scalable data warehouse ever!
Snowflake: The most cost-effective agile and scalable data warehouse ever!Snowflake: The most cost-effective agile and scalable data warehouse ever!
Snowflake: The most cost-effective agile and scalable data warehouse ever!
Visual_BI
 
Making the Most of Data in Multiple Data Sources (with Virtual Data Lakes)
Making the Most of Data in Multiple Data Sources (with Virtual Data Lakes)Making the Most of Data in Multiple Data Sources (with Virtual Data Lakes)
Making the Most of Data in Multiple Data Sources (with Virtual Data Lakes)
DataWorks Summit
 
20151112 CITA BIM Gathering Keynote Dublin
20151112 CITA BIM Gathering Keynote Dublin20151112 CITA BIM Gathering Keynote Dublin
20151112 CITA BIM Gathering Keynote Dublin
Léon Berlo
 
The New Basics of Business Intelligence Lesson 5: Embedded Analytics
The New Basics of Business Intelligence Lesson 5: Embedded AnalyticsThe New Basics of Business Intelligence Lesson 5: Embedded Analytics
The New Basics of Business Intelligence Lesson 5: Embedded Analytics
Zoomdata
 
Extend the Value of Your BIM Data with FME: Part 1
Extend the Value of Your BIM Data with FME: Part 1Extend the Value of Your BIM Data with FME: Part 1
Extend the Value of Your BIM Data with FME: Part 1
Safe Software
 
[DSC Europe 22] Show Me Your MVP! - Liliya Akhtyamova
[DSC Europe 22] Show Me Your MVP! - Liliya Akhtyamova[DSC Europe 22] Show Me Your MVP! - Liliya Akhtyamova
[DSC Europe 22] Show Me Your MVP! - Liliya Akhtyamova
DataScienceConferenc1
 
John adams viewpoint
John adams viewpointJohn adams viewpoint
John adams viewpoint
Hanna Wincenciak
 
Power BI for Developers
Power BI for DevelopersPower BI for Developers
Power BI for Developers
Jan Pieter Posthuma
 
Dashboard and apps - part 1
Dashboard and apps - part 1Dashboard and apps - part 1
Dashboard and apps - part 1
tasmc
 
Creating custom visuals with Power BI Visuals CLI
Creating custom visuals with Power BI Visuals CLICreating custom visuals with Power BI Visuals CLI
Creating custom visuals with Power BI Visuals CLI
Denys Chamberland
 
Introduction to open source BIM tools from opensourcebim.org
Introduction to open source BIM tools from opensourcebim.orgIntroduction to open source BIM tools from opensourcebim.org
Introduction to open source BIM tools from opensourcebim.org
Léon Berlo
 
Automating Screenshot Testing Component Library
Automating Screenshot Testing Component LibraryAutomating Screenshot Testing Component Library
Automating Screenshot Testing Component Library
Applitools
 
A Site for All Eyes: Considerations for Responsive Design
A Site for All Eyes: Considerations for Responsive DesignA Site for All Eyes: Considerations for Responsive Design
A Site for All Eyes: Considerations for Responsive Design
Dori Kelner
 
Addressing RFQ Stage by SOLIDWORKS Design Automation
Addressing RFQ Stage by SOLIDWORKS Design AutomationAddressing RFQ Stage by SOLIDWORKS Design Automation
Addressing RFQ Stage by SOLIDWORKS Design Automation
EGS Computers India Private Limited
 
CVCC - Data Visualization and VisiFire
CVCC - Data Visualization and VisiFireCVCC - Data Visualization and VisiFire
CVCC - Data Visualization and VisiFire
ryanaoliveira
 
April Partner Bootcamp 2022
April Partner Bootcamp 2022April Partner Bootcamp 2022
April Partner Bootcamp 2022
Acquia
 
BIMserver.org snippets from the bim acceleration workshop 2014 Orlando, Florida
BIMserver.org snippets from the bim acceleration workshop 2014 Orlando, FloridaBIMserver.org snippets from the bim acceleration workshop 2014 Orlando, Florida
BIMserver.org snippets from the bim acceleration workshop 2014 Orlando, Florida
Léon Berlo
 

Similar to BIML: BI to the next level (20)

Share point 2013 sartuday, SharePoint & ERP Integrations
Share point 2013 sartuday, SharePoint & ERP IntegrationsShare point 2013 sartuday, SharePoint & ERP Integrations
Share point 2013 sartuday, SharePoint & ERP Integrations
 
Real-Time PowerBI
Real-Time PowerBIReal-Time PowerBI
Real-Time PowerBI
 
Bim pres 120319
Bim pres  120319Bim pres  120319
Bim pres 120319
 
Snowflake: The most cost-effective agile and scalable data warehouse ever!
Snowflake: The most cost-effective agile and scalable data warehouse ever!Snowflake: The most cost-effective agile and scalable data warehouse ever!
Snowflake: The most cost-effective agile and scalable data warehouse ever!
 
Making the Most of Data in Multiple Data Sources (with Virtual Data Lakes)
Making the Most of Data in Multiple Data Sources (with Virtual Data Lakes)Making the Most of Data in Multiple Data Sources (with Virtual Data Lakes)
Making the Most of Data in Multiple Data Sources (with Virtual Data Lakes)
 
20151112 CITA BIM Gathering Keynote Dublin
20151112 CITA BIM Gathering Keynote Dublin20151112 CITA BIM Gathering Keynote Dublin
20151112 CITA BIM Gathering Keynote Dublin
 
The New Basics of Business Intelligence Lesson 5: Embedded Analytics
The New Basics of Business Intelligence Lesson 5: Embedded AnalyticsThe New Basics of Business Intelligence Lesson 5: Embedded Analytics
The New Basics of Business Intelligence Lesson 5: Embedded Analytics
 
Extend the Value of Your BIM Data with FME: Part 1
Extend the Value of Your BIM Data with FME: Part 1Extend the Value of Your BIM Data with FME: Part 1
Extend the Value of Your BIM Data with FME: Part 1
 
[DSC Europe 22] Show Me Your MVP! - Liliya Akhtyamova
[DSC Europe 22] Show Me Your MVP! - Liliya Akhtyamova[DSC Europe 22] Show Me Your MVP! - Liliya Akhtyamova
[DSC Europe 22] Show Me Your MVP! - Liliya Akhtyamova
 
John adams viewpoint
John adams viewpointJohn adams viewpoint
John adams viewpoint
 
Power BI for Developers
Power BI for DevelopersPower BI for Developers
Power BI for Developers
 
Dashboard and apps - part 1
Dashboard and apps - part 1Dashboard and apps - part 1
Dashboard and apps - part 1
 
Creating custom visuals with Power BI Visuals CLI
Creating custom visuals with Power BI Visuals CLICreating custom visuals with Power BI Visuals CLI
Creating custom visuals with Power BI Visuals CLI
 
Introduction to open source BIM tools from opensourcebim.org
Introduction to open source BIM tools from opensourcebim.orgIntroduction to open source BIM tools from opensourcebim.org
Introduction to open source BIM tools from opensourcebim.org
 
Automating Screenshot Testing Component Library
Automating Screenshot Testing Component LibraryAutomating Screenshot Testing Component Library
Automating Screenshot Testing Component Library
 
A Site for All Eyes: Considerations for Responsive Design
A Site for All Eyes: Considerations for Responsive DesignA Site for All Eyes: Considerations for Responsive Design
A Site for All Eyes: Considerations for Responsive Design
 
Addressing RFQ Stage by SOLIDWORKS Design Automation
Addressing RFQ Stage by SOLIDWORKS Design AutomationAddressing RFQ Stage by SOLIDWORKS Design Automation
Addressing RFQ Stage by SOLIDWORKS Design Automation
 
CVCC - Data Visualization and VisiFire
CVCC - Data Visualization and VisiFireCVCC - Data Visualization and VisiFire
CVCC - Data Visualization and VisiFire
 
April Partner Bootcamp 2022
April Partner Bootcamp 2022April Partner Bootcamp 2022
April Partner Bootcamp 2022
 
BIMserver.org snippets from the bim acceleration workshop 2014 Orlando, Florida
BIMserver.org snippets from the bim acceleration workshop 2014 Orlando, FloridaBIMserver.org snippets from the bim acceleration workshop 2014 Orlando, Florida
BIMserver.org snippets from the bim acceleration workshop 2014 Orlando, Florida
 

More from Davide Mauri

Azure serverless Full-Stack kickstart
Azure serverless Full-Stack kickstartAzure serverless Full-Stack kickstart
Azure serverless Full-Stack kickstart
Davide Mauri
 
Agile Data Warehousing
Agile Data WarehousingAgile Data Warehousing
Agile Data Warehousing
Davide Mauri
 
Dapper: the microORM that will change your life
Dapper: the microORM that will change your lifeDapper: the microORM that will change your life
Dapper: the microORM that will change your life
Davide Mauri
 
When indexes are not enough
When indexes are not enoughWhen indexes are not enough
When indexes are not enough
Davide Mauri
 
Building a Real-Time IoT monitoring application with Azure
Building a Real-Time IoT monitoring application with AzureBuilding a Real-Time IoT monitoring application with Azure
Building a Real-Time IoT monitoring application with Azure
Davide Mauri
 
SSIS Monitoring Deep Dive
SSIS Monitoring Deep DiveSSIS Monitoring Deep Dive
SSIS Monitoring Deep Dive
Davide Mauri
 
Azure SQL & SQL Server 2016 JSON
Azure SQL & SQL Server 2016 JSONAzure SQL & SQL Server 2016 JSON
Azure SQL & SQL Server 2016 JSON
Davide Mauri
 
SQL Server & SQL Azure Temporal Tables - V2
SQL Server & SQL Azure Temporal Tables - V2SQL Server & SQL Azure Temporal Tables - V2
SQL Server & SQL Azure Temporal Tables - V2
Davide Mauri
 
SQL Server 2016 Temporal Tables
SQL Server 2016 Temporal TablesSQL Server 2016 Temporal Tables
SQL Server 2016 Temporal Tables
Davide Mauri
 
SQL Server 2016 What's New For Developers
SQL Server 2016  What's New For DevelopersSQL Server 2016  What's New For Developers
SQL Server 2016 What's New For Developers
Davide Mauri
 
Azure Stream Analytics
Azure Stream AnalyticsAzure Stream Analytics
Azure Stream Analytics
Davide Mauri
 
Azure Machine Learning
Azure Machine LearningAzure Machine Learning
Azure Machine Learning
Davide Mauri
 
Azure ML: from basic to integration with custom applications
Azure ML: from basic to integration with custom applicationsAzure ML: from basic to integration with custom applications
Azure ML: from basic to integration with custom applications
Davide Mauri
 
Event Hub & Azure Stream Analytics
Event Hub & Azure Stream AnalyticsEvent Hub & Azure Stream Analytics
Event Hub & Azure Stream Analytics
Davide Mauri
 
SQL Server 2016 JSON
SQL Server 2016 JSONSQL Server 2016 JSON
SQL Server 2016 JSON
Davide Mauri
 
SSIS Monitoring Deep Dive
SSIS Monitoring Deep DiveSSIS Monitoring Deep Dive
SSIS Monitoring Deep Dive
Davide Mauri
 
AzureML - Creating and Using Machine Learning Solutions (Italian)
AzureML - Creating and Using Machine Learning Solutions (Italian)AzureML - Creating and Using Machine Learning Solutions (Italian)
AzureML - Creating and Using Machine Learning Solutions (Italian)
Davide Mauri
 
Datarace: IoT e Big Data (Italian)
Datarace: IoT e Big Data (Italian)Datarace: IoT e Big Data (Italian)
Datarace: IoT e Big Data (Italian)
Davide Mauri
 
Azure Machine Learning (Italian)
Azure Machine Learning (Italian)Azure Machine Learning (Italian)
Azure Machine Learning (Italian)
Davide Mauri
 
Back to the roots - SQL Server Indexing
Back to the roots - SQL Server IndexingBack to the roots - SQL Server Indexing
Back to the roots - SQL Server Indexing
Davide Mauri
 

More from Davide Mauri (20)

Azure serverless Full-Stack kickstart
Azure serverless Full-Stack kickstartAzure serverless Full-Stack kickstart
Azure serverless Full-Stack kickstart
 
Agile Data Warehousing
Agile Data WarehousingAgile Data Warehousing
Agile Data Warehousing
 
Dapper: the microORM that will change your life
Dapper: the microORM that will change your lifeDapper: the microORM that will change your life
Dapper: the microORM that will change your life
 
When indexes are not enough
When indexes are not enoughWhen indexes are not enough
When indexes are not enough
 
Building a Real-Time IoT monitoring application with Azure
Building a Real-Time IoT monitoring application with AzureBuilding a Real-Time IoT monitoring application with Azure
Building a Real-Time IoT monitoring application with Azure
 
SSIS Monitoring Deep Dive
SSIS Monitoring Deep DiveSSIS Monitoring Deep Dive
SSIS Monitoring Deep Dive
 
Azure SQL & SQL Server 2016 JSON
Azure SQL & SQL Server 2016 JSONAzure SQL & SQL Server 2016 JSON
Azure SQL & SQL Server 2016 JSON
 
SQL Server & SQL Azure Temporal Tables - V2
SQL Server & SQL Azure Temporal Tables - V2SQL Server & SQL Azure Temporal Tables - V2
SQL Server & SQL Azure Temporal Tables - V2
 
SQL Server 2016 Temporal Tables
SQL Server 2016 Temporal TablesSQL Server 2016 Temporal Tables
SQL Server 2016 Temporal Tables
 
SQL Server 2016 What's New For Developers
SQL Server 2016  What's New For DevelopersSQL Server 2016  What's New For Developers
SQL Server 2016 What's New For Developers
 
Azure Stream Analytics
Azure Stream AnalyticsAzure Stream Analytics
Azure Stream Analytics
 
Azure Machine Learning
Azure Machine LearningAzure Machine Learning
Azure Machine Learning
 
Azure ML: from basic to integration with custom applications
Azure ML: from basic to integration with custom applicationsAzure ML: from basic to integration with custom applications
Azure ML: from basic to integration with custom applications
 
Event Hub & Azure Stream Analytics
Event Hub & Azure Stream AnalyticsEvent Hub & Azure Stream Analytics
Event Hub & Azure Stream Analytics
 
SQL Server 2016 JSON
SQL Server 2016 JSONSQL Server 2016 JSON
SQL Server 2016 JSON
 
SSIS Monitoring Deep Dive
SSIS Monitoring Deep DiveSSIS Monitoring Deep Dive
SSIS Monitoring Deep Dive
 
AzureML - Creating and Using Machine Learning Solutions (Italian)
AzureML - Creating and Using Machine Learning Solutions (Italian)AzureML - Creating and Using Machine Learning Solutions (Italian)
AzureML - Creating and Using Machine Learning Solutions (Italian)
 
Datarace: IoT e Big Data (Italian)
Datarace: IoT e Big Data (Italian)Datarace: IoT e Big Data (Italian)
Datarace: IoT e Big Data (Italian)
 
Azure Machine Learning (Italian)
Azure Machine Learning (Italian)Azure Machine Learning (Italian)
Azure Machine Learning (Italian)
 
Back to the roots - SQL Server Indexing
Back to the roots - SQL Server IndexingBack to the roots - SQL Server Indexing
Back to the roots - SQL Server Indexing
 

Recently uploaded

Acumatica vs. Sage Intacct vs. NetSuite _ NOW CFO.pdf
Acumatica vs. Sage Intacct vs. NetSuite _ NOW CFO.pdfAcumatica vs. Sage Intacct vs. NetSuite _ NOW CFO.pdf
Acumatica vs. Sage Intacct vs. NetSuite _ NOW CFO.pdf
BrainSell Technologies
 
find out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challengesfind out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challenges
huseindihon
 
“Deploying Large Language Models on a Raspberry Pi,” a Presentation from Usef...
“Deploying Large Language Models on a Raspberry Pi,” a Presentation from Usef...“Deploying Large Language Models on a Raspberry Pi,” a Presentation from Usef...
“Deploying Large Language Models on a Raspberry Pi,” a Presentation from Usef...
Edge AI and Vision Alliance
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
RaminGhanbari2
 
Salesforce AI & Einstein Copilot Workshop
Salesforce AI & Einstein Copilot WorkshopSalesforce AI & Einstein Copilot Workshop
Salesforce AI & Einstein Copilot Workshop
CEPTES Software Inc
 
Vulnerability Management: A Comprehensive Overview
Vulnerability Management: A Comprehensive OverviewVulnerability Management: A Comprehensive Overview
Vulnerability Management: A Comprehensive Overview
Steven Carlson
 
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptxDublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
Kunal Gupta
 
Use Cases & Benefits of RPA in Manufacturing in 2024.pptx
Use Cases & Benefits of RPA in Manufacturing in 2024.pptxUse Cases & Benefits of RPA in Manufacturing in 2024.pptx
Use Cases & Benefits of RPA in Manufacturing in 2024.pptx
SynapseIndia
 
CHAPTER-8 COMPONENTS OF COMPUTER SYSTEM CLASS 9 CBSE
CHAPTER-8 COMPONENTS OF COMPUTER SYSTEM CLASS 9 CBSECHAPTER-8 COMPONENTS OF COMPUTER SYSTEM CLASS 9 CBSE
CHAPTER-8 COMPONENTS OF COMPUTER SYSTEM CLASS 9 CBSE
kumarjarun2010
 
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
alexjohnson7307
 
The Rise of AI in Cybersecurity How Machine Learning Will Shape Threat Detect...
The Rise of AI in Cybersecurity How Machine Learning Will Shape Threat Detect...The Rise of AI in Cybersecurity How Machine Learning Will Shape Threat Detect...
The Rise of AI in Cybersecurity How Machine Learning Will Shape Threat Detect...
digitalxplive
 
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
Priyanka Aash
 
July Patch Tuesday
July Patch TuesdayJuly Patch Tuesday
July Patch Tuesday
Ivanti
 
BLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
BLOCKCHAIN TECHNOLOGY - Advantages and DisadvantagesBLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
BLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
SAI KAILASH R
 
Opencast Summit 2024 — Opencast @ University of Münster
Opencast Summit 2024 — Opencast @ University of MünsterOpencast Summit 2024 — Opencast @ University of Münster
Opencast Summit 2024 — Opencast @ University of Münster
Matthias Neugebauer
 
Using LLM Agents with Llama 3, LangGraph and Milvus
Using LLM Agents with Llama 3, LangGraph and MilvusUsing LLM Agents with Llama 3, LangGraph and Milvus
Using LLM Agents with Llama 3, LangGraph and Milvus
Zilliz
 
Uncharted Together- Navigating AI's New Frontiers in Libraries
Uncharted Together- Navigating AI's New Frontiers in LibrariesUncharted Together- Navigating AI's New Frontiers in Libraries
Uncharted Together- Navigating AI's New Frontiers in Libraries
Brian Pichman
 
Types of Weaving loom machine & it's technology
Types of Weaving loom machine & it's technologyTypes of Weaving loom machine & it's technology
Types of Weaving loom machine & it's technology
ldtexsolbl
 
Evolution of iPaaS - simplify IT workloads to provide a unified view of data...
Evolution of iPaaS - simplify IT workloads to provide a unified view of  data...Evolution of iPaaS - simplify IT workloads to provide a unified view of  data...
Evolution of iPaaS - simplify IT workloads to provide a unified view of data...
Torry Harris
 
Litestack talk at Brighton 2024 (Unleashing the power of SQLite for Ruby apps)
Litestack talk at Brighton 2024 (Unleashing the power of SQLite for Ruby apps)Litestack talk at Brighton 2024 (Unleashing the power of SQLite for Ruby apps)
Litestack talk at Brighton 2024 (Unleashing the power of SQLite for Ruby apps)
Muhammad Ali
 

Recently uploaded (20)

Acumatica vs. Sage Intacct vs. NetSuite _ NOW CFO.pdf
Acumatica vs. Sage Intacct vs. NetSuite _ NOW CFO.pdfAcumatica vs. Sage Intacct vs. NetSuite _ NOW CFO.pdf
Acumatica vs. Sage Intacct vs. NetSuite _ NOW CFO.pdf
 
find out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challengesfind out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challenges
 
“Deploying Large Language Models on a Raspberry Pi,” a Presentation from Usef...
“Deploying Large Language Models on a Raspberry Pi,” a Presentation from Usef...“Deploying Large Language Models on a Raspberry Pi,” a Presentation from Usef...
“Deploying Large Language Models on a Raspberry Pi,” a Presentation from Usef...
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
 
Salesforce AI & Einstein Copilot Workshop
Salesforce AI & Einstein Copilot WorkshopSalesforce AI & Einstein Copilot Workshop
Salesforce AI & Einstein Copilot Workshop
 
Vulnerability Management: A Comprehensive Overview
Vulnerability Management: A Comprehensive OverviewVulnerability Management: A Comprehensive Overview
Vulnerability Management: A Comprehensive Overview
 
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptxDublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
 
Use Cases & Benefits of RPA in Manufacturing in 2024.pptx
Use Cases & Benefits of RPA in Manufacturing in 2024.pptxUse Cases & Benefits of RPA in Manufacturing in 2024.pptx
Use Cases & Benefits of RPA in Manufacturing in 2024.pptx
 
CHAPTER-8 COMPONENTS OF COMPUTER SYSTEM CLASS 9 CBSE
CHAPTER-8 COMPONENTS OF COMPUTER SYSTEM CLASS 9 CBSECHAPTER-8 COMPONENTS OF COMPUTER SYSTEM CLASS 9 CBSE
CHAPTER-8 COMPONENTS OF COMPUTER SYSTEM CLASS 9 CBSE
 
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
 
The Rise of AI in Cybersecurity How Machine Learning Will Shape Threat Detect...
The Rise of AI in Cybersecurity How Machine Learning Will Shape Threat Detect...The Rise of AI in Cybersecurity How Machine Learning Will Shape Threat Detect...
The Rise of AI in Cybersecurity How Machine Learning Will Shape Threat Detect...
 
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
 
July Patch Tuesday
July Patch TuesdayJuly Patch Tuesday
July Patch Tuesday
 
BLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
BLOCKCHAIN TECHNOLOGY - Advantages and DisadvantagesBLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
BLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
 
Opencast Summit 2024 — Opencast @ University of Münster
Opencast Summit 2024 — Opencast @ University of MünsterOpencast Summit 2024 — Opencast @ University of Münster
Opencast Summit 2024 — Opencast @ University of Münster
 
Using LLM Agents with Llama 3, LangGraph and Milvus
Using LLM Agents with Llama 3, LangGraph and MilvusUsing LLM Agents with Llama 3, LangGraph and Milvus
Using LLM Agents with Llama 3, LangGraph and Milvus
 
Uncharted Together- Navigating AI's New Frontiers in Libraries
Uncharted Together- Navigating AI's New Frontiers in LibrariesUncharted Together- Navigating AI's New Frontiers in Libraries
Uncharted Together- Navigating AI's New Frontiers in Libraries
 
Types of Weaving loom machine & it's technology
Types of Weaving loom machine & it's technologyTypes of Weaving loom machine & it's technology
Types of Weaving loom machine & it's technology
 
Evolution of iPaaS - simplify IT workloads to provide a unified view of data...
Evolution of iPaaS - simplify IT workloads to provide a unified view of  data...Evolution of iPaaS - simplify IT workloads to provide a unified view of  data...
Evolution of iPaaS - simplify IT workloads to provide a unified view of data...
 
Litestack talk at Brighton 2024 (Unleashing the power of SQLite for Ruby apps)
Litestack talk at Brighton 2024 (Unleashing the power of SQLite for Ruby apps)Litestack talk at Brighton 2024 (Unleashing the power of SQLite for Ruby apps)
Litestack talk at Brighton 2024 (Unleashing the power of SQLite for Ruby apps)
 

BIML: BI to the next level

  • 1. BI Markup Language: BI to the next level Davide Mauri SolidQ – Founder & Mentor @mauridb www.solidq.com dmauri@solidq.com 13.12.2014
  • 2. Thank you to all our SPONSORS! 13.12.2014
  • 3. Davide Mauri  20 Years of experience on the SQL Server Platform  Specialized in Data Solution Architecture, Database Design, Performance Tuning, Business Intelligence  Projects, Consulting, Mentoring & Training  Regular Speaker @ SQL Server events  Microsoft SQL Server MVP  President of UGISS (Italian SQL Server UG)  Mentor @ SolidQ  Find me here:  Blog: http://sqlblog.com/blogs/davide_mauri/default.aspx  Twitter: @mauridb 13.12.2014
  • 4. Agenda  BI, DWH & ETL today  BIML – What’s that?  Tools  BIDS Helper  MIST  BIML Kick Off  Basic Concepts  Automation With “Embedded” C#  BIML & PowerShell 13.12.2014
  • 5. Building a BI/DWH/ETL in 2014 Is still a (almost) manual process A *lot* of repetitive low-value work No (or very few) standard tools available 13.12.2014
  • 6. How it should be Semi-automatic process  “develop by intent” Define the mapping logic from a semantic perspective  Source to Dimensions / Measures  (Metadata anyone?) Design the model and let the tool build it for you 13.12.2014
  • 7. How it should be Semi-automatic process  “develop by intent” Define the mapping logic from a semantic perspective  Source to Dimensions / Measures  (Metadata anyone?) Design the model and let the tool build it for you 13.12.2014 CREATE DIMENSION Customer FROM SourceCustomerTable MAP USING CustomerMetadata ALTER DIMENSION Customers ADD ATTRIBUTE LoyaltyLevel AS TYPE 1 CREATE FACT Orders FROM SourceOrdersTable MAP USING OrdersMetadata ALTER FACT Orders ADD DIMENSION Customer
  • 8. The perfect BI process & architecture 13.12.2014 Iterative!
  • 9. Design Pattern “A general reusable solution to a commonly occurring problem within a given context” 13.12.2014
  • 10. No Monkey Work! 13.12.2014 Let the people think and let the machines do the «monkey» work.
  • 11. BIML – What’s that?  Business Intelligence Markup Language  XML-Based  BI Object-Generator  SQL Server  Integration Services  Analysis Services 13.12.2014
  • 12. BIML – What’s that?  Allows a declarative approach to define BI objects  Favor automation  Human-readable  Compatible with SCC system  Allows merge of files  Born from “Project Vulcan”  Still available on CodePlex 13.12.2014
  • 13. BIML – What’s that?  Once objects are generated, BIML is not needed anymore  No additional runtime/components required  Support for SQL Server 2008 & 2012 objects  2014 is coming very soon  Anyway generated packages are automatically converted into 2014 packages by Visual Studio 2013, without problems  13.12.2014
  • 14. BIML – What’s that?  BIMLScript is based on the T4 templating engine. Allows the generation of BIML using  C#  VB.NET  BIML + BIMLScript = HTML + ASP Classic 13.12.2014
  • 15. Tools  BIDS Helper  http://bidshelper.codeplex.com/  Visual Studio Plugin  Free  Source Code Available  Not all BIML features are supported  “Limited” to SSIS generation only 13.12.2014
  • 16. Tools  MIST  Full-Featured BIML IDE  Buy or Rent  Made by BIML creator: Varigence 13.12.2014
  • 17. DEMO  First Contact with BIML 13.12.2014
  • 18. Basic Concepts  A single BIML file can generate more than one SSIS Package  All SSIS object and related properties are exposed via BIML elements  Additional specific attribute: ConstraintMode  Linear or Parallel 13.12.2014
  • 19. Basic Concepts  Parallel Constraint Mode  “Inputs” connected to “Outputs”  SSIS Variables: “dot” notation 13.12.2014
  • 20. Basic Concepts  Control Flow and Data Flow 100% supported  In Data Flow it’s mandatory to define input and outputs  Since they aren’t constraints, but data streams  13.12.2014
  • 21. DEMO  BIML is your friend! 13.12.2014
  • 22. Automation with BIMLScript  BIML Script (T4) Directives: <#@ and #> 13.12.2014
  • 23. Automation with BIMLScript  BIML Script Tags: <# e #>  Allows usage of C# / VB.Net within BIML  The “=” symbol allows “in-line” code injection 13.12.2014
  • 24. Automation with BIMLScript  Metadata is needed in order to define what to generate  Metadata can be extracted by  BIML Engine (Hadron)  T-SQL Queries 13.12.2014
  • 25. Automation with BIMLScript  Metadata via BIML Engine (Hadron) 13.12.2014
  • 26. Automation with BIMLScript  Metadata via SQL Query 13.12.2014
  • 27. DEMO  BIMLScript RULES! 13.12.2014
  • 28. Debugging BIML  With complex BIML Script it can be difficult to “see” what’s happening behind the scenes  With MIST you can see the resulting BIML generated from BIML Script  But with BIDS Helper you’re on your own.  NLog can help a lot here! 13.12.2014
  • 29. Debugging BIML  Nlog: free, powerful & flexible logging infrastructure  http://nlog-project.org/  Stand-Alone Assembly  Just reference the assembly in the BIML Script (T4) template and then use Nlog objects & methods  http://sqlblog.com/blogs/davide_mauri/default.aspx 13.12.2014
  • 30. DEMO  BIMLScript & NLog 13.12.2014
  • 31. BIML & PowerShell  What if you don’t like C#...  Or if BIMLScript looks to complex?  Especially without MIST?  One option is to generate BIML using PowerShell  Is just XML after all…. 13.12.2014
  • 32. DEMO  BIML & PowerShell 13.12.2014
  • 33. Conclusions  Use BIML!!!!  It helps to  Make better use of your time  Create your own ETL patterns  http://www.slideshare.net/davidemauri/automating-dwh-patterns- 13.12.2014 through-metadata  Support Refactoring & Enables Agility  Favor use of metadata
  • 34. References  BIML Script  http://bimlscript.com/  Stairway to BIML  http://www.sqlservercentral.com/stairway/100550/  Automating DWH Patterns Through Metadata  http://www.slideshare.net/davidemauri/automating-dwh- 13.12.2014 patterns-through-metadata

Editor's Notes

  1. http://en.wikipedia.org/wiki/Software_design_pattern
  2. 1 - Dimostrazione BIDS Helper 2 - Creazione di un file BIML che esegue un ExecuteSQL command
  3. Dimostrazione ConstraintMode Dimostrazione uso Variabili, Project Connections Dimostrazione DataFlow
  4. Dimostrazione ConstraintMode Dimostrazione uso Variabili, Project Connections Dimostrazione DataFlow
  5. Dimostrazione ConstraintMode Dimostrazione uso Variabili, Project Connections Dimostrazione DataFlow
  6. 1 - Dimostrazione BIDS Helper 2 - Creazione di un file BIML che esegue un ExecuteSQL command