The Developer Side of the MS Business Intelligence Stack



Similar documents
The Developer Side of Master Data Service 2012

SQL Server 2012 End-to-End Business Intelligence Workshop

Microsoft Data Warehouse in Depth

SQL SERVER DEVELOPER Available Features and Tools New Capabilities SQL Services Product Licensing Product Editions Will teach in class room

SQL Server Administrator Introduction - 3 Days Objectives

MS 50511A The Microsoft Business Intelligence 2010 Stack

IT-Pruefungen.de. Hochwertige Qualität, neueste Prüfungsunterlagen.

LearnFromGuru Polish your knowledge

$99.95 per user. SQL Server 2008/R2 Reporting Services CourseId: 162 Skill level: Run Time: 37+ hours (195 videos)

Would-be system and database administrators. PREREQUISITES: At least 6 months experience with a Windows operating system.

BI on Cloud using SQL Server on IaaS

Google AdWords, 248 Google Analytics tools, 248 GoogleAdsExtract.xlsx file, 161 GoogleAnalytics, 161

Microsoft SQL Database Administrator Certification

Expert Reference Series of White Papers. Unlock the Power of Microsoft SQL Server 2012

SQL Server Business Intelligence

Business Intelligence for Dynamics GP. Presented By: Rob Jackson, Business Intelligence Consultant Brent Keilin, GP Consultant

Armanino McKenna LLP Welcomes You To Today s Webinar:

PRODUCT OVERVIEW SUITE DEALS. Combine our award-winning products for complete performance monitoring and optimization, and cost effective solutions.

Combined Knowledge Business Intelligence with SharePoint 2013 and SQL 2012 Course

SQL 2016 and SQL Azure

Microsoft SQL Business Intelligence Boot Camp

What is the BI DBA? Jorge Segarra Sr. DBA Consultant, SQL Server MVP

VB.NET - DATABASE ACCESS

ASP.NET Programming with C# and SQL Server

A Tutorial on SQL Server CMPT 354 Fall 2007

Application Development

TS:MS SQL Server 2005 Business Intelligence-Implem & Mainte

Click Here -> El poder de la Programación de Excel y Visual Basic - Scam or Work?

MS Design, Optimize and Maintain Database for Microsoft SQL Server 2008

Developing Business Intelligence and Data Visualization Applications with Web Maps

Implementing a Data Warehouse with Microsoft SQL Server 2012

Connectivity Pack for Microsoft Guide

Pro SQL Server Reporting Services. Third Edition. mm m. Brian McDonald. Shawn McGehee. Rodney Landrum. Apress*

SQL Server What s New? Christopher Speer. Technology Solution Specialist (SQL Server, BizTalk Server, Power BI, Azure) v-cspeer@microsoft.

SharePoint 2013 PerformancePoint Services Course 55057; 3 Days

MS 10977B Upgrading Your SQL Server Skills to Microsoft SQL Server 2014

Creating Pivot Tables and Diagrams with Microsoft Excel, Visio and SQL Server 2008

Cloud2 History and Meson BI Vision. Mark Robinson. BI Lead: Cloud2. Successful SharePoint delivered fast

Business Intelligence with AxCMS.net

Business Intelligence SharePoint 2013 Solutions

SQL Server Introduction to SQL Server SQL Server 2005 basic tools. SQL Server Configuration Manager. SQL Server services management

Reporting. Microsoft Dynamics GP enterpri se. Dynamics GP. Christopher Liley. Create and manage business reports with.

SSIS Training: Introduction to SQL Server Integration Services Duration: 3 days

Designing, Optimizing and Maintaining a Database Administrative Solution for Microsoft SQL Server 2008

Course Outline: Course: Implementing a Data Warehouse with Microsoft SQL Server 2012 Learning Method: Instructor-led Classroom Learning

Professional Profile

Implementing a Data Warehouse with Microsoft SQL Server 2012 (70-463)

und ch/

Excel 2013 for Business Intelligence (Part 1) Tom Jones President, Iridium Technology LLC

Microsoft SQL Server 2008 Step by Step

Microsoft Training and Certification Guide. Current as of December 31, 2013

Datawarehouse testing using MiniDBs in IT Industry Narendra Parihar Anandam Sarcar

Implementing a Data Warehouse with Microsoft SQL Server 2012 MOC 10777

How To Write Powerpivot For Excel

Microsoft SQL Server Security & Auditing. March 23, 2011 ISACA Chapter Meeting

Knight's Microsoft Business Intelligence 24-Hour Trainer

SQL SERVER BUSINESS INTELLIGENCE (BI) - INTRODUCTION

<Insert Picture Here> Extending Hyperion BI with the Oracle BI Server

DETAILED LOOK AT IFS BUSINESS INTELLIGENCE

East Asia Network Sdn Bhd

Microsoft Services Exceed your business with Microsoft SharePoint Server 2010

Business Benefits From Microsoft SQL Server Business Intelligence Solutions How Can Business Intelligence Help You? PTR Associates Limited

SQL Server 2008 Administration

SAP BO 4.1 COURSE CONTENT

COURSE SYLLABUS COURSE TITLE:

Avoiding Common Analysis Services Mistakes. Craig Utley

AppDev OnDemand Cloud Computing Learning Library

Project Server hardware and software requirements

SharePoint 2013 Business Intelligence

Course: SharePoint 2013 Business Intelligence

Administering Microsoft SQL Server Databases

SQL Server Integration Services. Design Patterns. Andy Leonard. Matt Masson Tim Mitchell. Jessica M. Moss. Michelle Ufford

End to End Microsoft BI with SQL 2008 R2 and SharePoint 2010

Analyzing the Customer Experience. With Q-Flow and SSAS

Managed Self-Service BI & Data As A Service

Microsoft Corporation. Project Server 2010 Installation Guide

Job Description Senior Consultant (BI)

SharePoint 2013 PerformancePoint Services

ADOBE READER AND ACROBAT

Presented by: Jose Chinchilla, MCITP

SQL SERVER TRAINING CURRICULUM

Course Outline. Module 1: Introduction to Data Warehousing

Power Update - Documentation Power Update Manager

W I S E. SQL Server 2012 Database Engine Technical Update WISE LTD.

Data Access Guide. BusinessObjects 11. Windows and UNIX

COURSE 20463C: IMPLEMENTING A DATA WAREHOUSE WITH MICROSOFT SQL SERVER

SQL Server Developer Training Program. Topics Covered

Course 20462C: Administering Microsoft SQL Server Databases

Creating Dashboards for Microsoft Project Server 2010

SharePoint 2013 Business Intelligence Course 55042; 3 Days

SQL Server Integration Services Design Patterns

Implementing a Data Warehouse with Microsoft SQL Server

Sai Phanindra. Summary. Experience. SQL Server, SQL DBA and MSBI SQL School saiphanindrait@gmail.com

Working with SQL Server Integration Services

Enterprise Manager 12c for Middleware

Transcription:

The Developer Side of the MS Business Intelligence Stack by Sascha Lorenz (PSG) Strategy Architecture Lifecycle

About me Sascha Lorenz Senior Consultant, Coach & Trainer PSG Projekt Service GmbH, Hamburg Our Customers are German Federal Agencies, Shipping Companies and Banks (Fonds Administration & NPL) Engaged in German PASS Chapter (Hamburg) Follow me on Facebook and http://saschalorenz.blogspot.com Strategy Architecture Lifecycle

Why talking about a developer side of Microsoft Business Intelligence? We have powerful services in SQL Server! We have powerful tools in SQL Server! But we have no framework(s) to tied all these services and tools together! Strategy Architecture Lifecycle

SQL Server Services Database/ DWH SSIS SSRS SSAS Strategy Architecture Lifecycle

Framework? We need a MS Middleware! Aims to achieve with our Middleware: Central Repository for all services DWH, SSIS, SSAS & SSRS Control of processing SSIS & Cubes Transport & Storage System Central Logging Strategy Architecture Lifecycle

MS Middleware DWH SSIS SSAS SSRS Service Bus Repository (DB) Strategy Architecture Lifecycle

Yes, we are talking about coding in.net! No kidding! There are no limitations, because SQL Server provides only services! There are no cool-all-in-one-tools! This is a big advantage of the platform! DS only creates descriptions (Meta Data). The services makes the real job! Strategy Architecture Lifecycle

MS Middleware DWH SSIS SSAS SSRS Service Bus Repository (DB) Our Descriptions! Strategy Architecture Lifecycle

A closer look at the services Database Engine Integration Services Reporting Services (Master Data Services) Strategy Architecture Lifecycle

What are we looking for? Data about the Data & Structure Meta Data!! A documented way to read these! A documented way to create and edit objects!? Strategy Architecture Lifecycle

Database Engine Strategy Architecture Lifecycle

Database Engine Easy Job! Meta Data yepp Read create and edit objects yepp Strategy Architecture Lifecycle

Integration Services Hmmm, Meta Data? How to get these? And, how to create objects and edit objects?? But wait, there is a documented way to achieve this! Strategy Architecture Lifecycle

Integration Services Strategy Architecture Lifecycle

A SSIS Package Strategy Architecture Lifecycle

A new SSIS Package using Microsoft.SqlServer.Dts.Runtime; using Microsoft.SqlServer.Dts.Pipeline.Wrapper; using wrap = Microsoft.SqlServer.Dts.Runtime.Wrapper; Package p = new Package(); <here add magic > Microsoft.SqlServer.Dts.Runtime.Application a = new Microsoft.SqlServer.Dts.Runtime.Application(); a.savetoxml(@"c:\ssisdemos\demo001.dtsx", p, null); Strategy Architecture Lifecycle

A new SSIS Package II ConnectionManager adventureworks = p.connections.add("oledb"); adventureworks.name = "OLEDBPASS"; adventureworks.connectionstring = @"Provider=SQLNCLI;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=AdventureWorks;Data Source=(local);Auto Translate=False;"; TaskHost th = p.executables.add("stock:sqltask") as TaskHost; th.name = "mysqltask 1"; th.description = "Execute a SQL Query"; th.properties["sqlstatementsource"].setvalue(th, "Select * from Person.Address"); th.properties["connection"].setvalue(th, "OLEDBPASS"); Strategy Architecture Lifecycle

A new SSIS Package III TaskHost th = p.executables.add("stock:sqltask") as TaskHost; th.name = "mysqltask 1"; th.description = "Execute a SQL Query"; <add more properties> TaskHost th1 = p.executables.add("stock:sqltask") as TaskHost; th1.name = "mysqltask 2"; th1.description = "Execute a SQL Query"; <add more properties> PrecedenceConstraint pctasks = p.precedenceconstraints.add((executable)th, (Executable)th1); pctasks.value = DTSExecResult.Success; //.Completion /.Failure Strategy Architecture Lifecycle

A new SSIS Package IV Strategy Architecture Lifecycle

Demo SSIS Strategy Architecture Lifecycle

SSIS But wait, there is much more Of course, you can read SSIS Packages and modify them! Strategy Architecture Lifecycle

An used SSIS Package Application app = new Application(); Package p = app.loadpackage(@ c:\...\p1.dtsx, null); int n = p.configurations.count; DtsProperty p2 = p.properties["versionguid"]; DTSProtectionLevel pl = p.protectionlevel; Console.WriteLine("Number of configurations = " + n); Console.WriteLine("VersionGUID = " + p2); Console.WriteLine("ProtectionLevel = " + pl); <And so on > Strategy Architecture Lifecycle

Hmmm, Meta Data? How to get these? And, how to create and edit objects?? But wait, there is a documented way to achieve this, too! Strategy Architecture Lifecycle

Strategy Architecture Lifecycle

A quick glance at a cube project SSAS is not centered on cubes! There is always a SSAS database around the cube(s) and the dimensions! So we first need a database! Strategy Architecture Lifecycle

using Microsoft.AnalysisServices; using (Server svr = new Server()) { svr.connect( myserver"); Database db = svr.databases.add(pdatabasename); db.datasourceimpersonationinfo = new ImpersonationInfo(ImpersonationMode.ImpersonateServiceAccount); db.update(); DataSource ds = db.datasources.add(pdsname); ds.connectionstring = pdsconnstring; ds.update(); Strategy Architecture Lifecycle

DataSourceView dsv = db.datasourceviews.add(pdsvname); dsv.datasourceid = pdsname; dsv.schema = new DataSet(); OleDbConnection connection = new OleDbConnection(dsv.DataSource.ConnectionString); connection.open(); rows = tbl.select("keypath = 'Database/DSV/Table'"); foreach (DataRow row in rows) AddTable(dsv, connection, row["keyvalue"].tostring());? Strategy Architecture Lifecycle

Strategy Architecture Lifecycle

rows = tbl.select("keypath = 'Database/DSV/Relation'"); foreach (DataRow row in rows) { } string[] prelation = row["keyvalue"].tostring().split(';'); AddRelation(dsv, prelation[0],prelation[1],prelation[2],prelation[3]); dsv.update(); Strategy Architecture Lifecycle

dim = db.dimensions.add(pdimensionname); dim.source = new DataSourceViewBinding(pDSVName); attr = dim.attributes.add(pattributename); attr.keycolumns.add(createdataitem(db.datasourceviews[0], pkeycolumn[1], pkeycolumn[2])); attr.namecolumn = CreateDataItem(db.DataSourceViews[0], pnamecolumn[0], pnamecolumn[1]); Strategy Architecture Lifecycle

Demo SSAS Strategy Architecture Lifecycle

Repository (express edition) Strategy Architecture Lifecycle

Demo SSAS Strategy Architecture Lifecycle

Recap: We can modify the structure of a cube (Database, Dimensions, Attributes, Measures and so on ) by using simple SQL DML Statements! Strategy Architecture Lifecycle

But, how to take a look into a SSAS Database without a solution/project? Import it in DS! Strategy Architecture Lifecycle

Demo SSAS Import Strategy Architecture Lifecycle

One last point about SSAS There is ADOMD.NET! Strategy Architecture Lifecycle

Reporting Services Hmmm, Meta Data? How to get these? And, how to create and edit objects?? But wait, there is a documented way to achieve this, of course! Strategy Architecture Lifecycle

Reporting Services Strategy Architecture Lifecycle

Demo SSRS View & Create RDL Files Strategy Architecture Lifecycle

Reporting Services Recap: We can view, edit and create RDL Files with simple XMLDocument commands in C#. Strategy Architecture Lifecycle

Tools & Services Summary SSMS DS DB Engine AS DB.dtsx.rdl DS DSV Cube DIM Strategy Architecture Lifecycle

Your benefits.. You are faster You are smarter Avoiding manual work Strategy Architecture Lifecycle

But, there is a gap There are two szenarios: Starting from greenfield You are thrown in at the deep end! Strategy Architecture Lifecycle

Starting with MS is very easy MS Business Intelligence Studio (DS) Third Party Tools for the MS Stack Wizards Assistants Accelerators Strategy Architecture Lifecycle

Back in real live Month or years later, our MS environment is still growing! The starting point is nevertheless our PoC or Pilot Perhaps we are building an Enterprise Environment Now we need a way to maintaining the whole environment! Strategy Architecture Lifecycle

Challenges in Enterprise Business Intelligence Environments many reports many cubes complex Enterprise DWH damn many SSIS packages & SQL Agent Jobs on different servers Strategy Architecture Lifecycle

Lifecycle Management Version 1.0 Strategy Architecture Lifecycle

Lifecycle Management Version 1.5 Strategy Architecture Lifecycle

Lifecycle Management Version 2.0 Strategy Architecture Lifecycle

Lifecycle Management Version 2.5 Strategy Architecture Lifecycle

Lifecycle Management Version 2.5 Strategy Architecture Lifecycle

Reporting for Audits Compliance Security Impact Analysis Strategy Architecture Lifecycle

Every time we works with SQL Sources (Queries) DWH Reporting Tools (third Party) SSIS SSAS SSRS Strategy Architecture Lifecycle

Revisiting Database Engine Data Sources SSIS SSAS Named Tables Computed Columns SSRS Query Statements Strategy Architecture Lifecycle

Solve Data Sources SQL Queries Strategy Architecture Lifecycle

Get estimeted Queryplan SqlConnection con = new SqlConnection(tbConStr.Text); con.open(); SqlCommand showplan_on = new SqlCommand("set showplan_xml on", con); showplan_on.executenonquery(); SqlCommand query = new SqlCommand(tbQuery.Text, con); SqlDataReader showplan_results = query.executereader(); if (showplan_results.read()) tboutput.text = showplan_results[0].tostring(); showplan_results.close(); SqlCommand showplan_off = new SqlCommand("set showplan_xml off", con); showplan_off.executenonquery(); con.close(); Strategy Architecture Lifecycle

Get Query Plan Attention! It works not for all situations, but it is an easy and cheap way to achieve our aim! Strategy Architecture Lifecycle

Tools & Services Summary SSMS DS DB Engine AS DB.dtsx.rdl DS DSV Cube DIM Strategy Architecture Lifecycle

MS Middleware DWH SSIS SSAS SSRS Service Bus Repository (DB) Strategy Architecture Lifecycle

Service Bus Job Job Job Job Strategy Architecture Lifecycle Job

Service Bus Agent for SSIS Job, Job, Job, Job, Job, Job Strategy Architecture Lifecycle

Service Bus Job Pool RZ 1 RZ 2 RZ n Strategy Architecture Lifecycle

Service Bus Job Pool RZ 1 RZ 2 RZ n DB 2 DB 5 DB 1 DB 3 DB 4 DB 6 Strategy Architecture Lifecycle DB n DB n DB n

Service Bus Repository RZ 1 RZ 2 RZ n DB 1 DB 2 DB 3 DB 4 DB 5 DB 6 DB n DB n DB n Strategy Architecture Lifecycle

User Interfaces WinForms Buttons, Listbox, Tree -> good for RAD! Command line Powershell Excel?! Visio! Silverlight Services / WCF Strategy Architecture Lifecycle

Recap dynssis Analysis Management Objects ADOMD.NET Reporting Services -> RDL Files SQL Query Solver Transport & Store Engine (Cloud) Job pool / Repository User Interface Strategy Architecture Lifecycle

So long Any Questions? Strategy Architecture Lifecycle

The End Thank you! Follow me on Facebook and http://saschalorenz.blogspot.com Send me a mail -> lorenz@psg.de Strategy Architecture Lifecycle

Coming up In the exhibition area: 17:30 Prize draws till 19:30 Group by - After event part Games Beer Food more Beer X Boxes Networking more Beer #SQLTS