Andrew Fryer Technical Evangelist Microsoft UK Ltd
Mission Critical BI Behind every cloud is another cloud
The cloud infrastructure is made available to the general public or a large industry group and is owned by an organization selling cloud services. The cloud infrastructure is operated solely for an organization. It may be managed by the organization or a third party and may exist on premise or off premise. The cloud infrastructure is a composition of two or more clouds (private, community, or public) that remain unique entities but are bound together by standardized or proprietary technology that enables data and application portability (e.g., cloud bursting for load- balancing between clouds).
SQL Azure Azure Reporting Services Azure Storage SQL Server 2012 Appliances Azure Data Sync Azure Data Market
© 2011, Enterprise Strategy Group, Inc. All Rights Reserved.
ENSURE COMPLIANCE CONTRO L ACCESS PROTEC T DATA Protect data-at-rest Transparent Data Encryption Data/Key separation Extensible Key Managements Use strong authentication Kerberos authentication enhancements Monitor all activity SQL Server Audit Detect non-compliant configurations Policy-Based Management Change Data Capture Industry Certification Common Criteria Certification (EAL4+) User-Defined Server Roles Default Schema for Groups Audit Resilience Audit in all SKUs User-Defined Audit Audit Filtering Crypto Enhancements T-SQL Stack Info Contained Database Authentication
Cloud Mission Critical BI
AlwaysOn protects multiple databases at once
Always On provides read only copies of databases
Cloud Mission Critical BI Lies damn lies and statistics
Microsoft BI components Business Collaboration Platform Data Infrastructure & BI Platform Business User Experience
Flexible: Can model anything Powerful: Enterprise scale Secure: Fine grain control Near real time: 15 minute refresh Control: Process & versions Rigid: hard to change Hard: MDX isn’t easy Familiar: Lots of expertise
Easy to Use: users get it Mashups: make your own Agile: Deploy in a click or 2 Collaboration: Between IW & IT Chaos: IT can’t manage it Refresh: Could be a day out
No Downsides Easy to Use: users get it Mashups: make your own Agile: Deploy in a click or 2 Collaboration: Between IW & IT Secure: Fine grain control Control: Process & versions Powerful: Enterprise scale Cool: End user analysis
17
18
21 Crescent only works from Tabular BISM for now Crescent and alerting depend on SharePoint Silverlight based BIN 202, BINHOL271
ArchitectureUsage BIN 302, 311
Unified Dimensional Model Report Model BI Semantic Model PowerPivot
BI Semantic Model Data model Business logic & queries Data access ROLAPMOLAP MDX Multi-dimensional VertiPaqDirect Query DAX Tabular 3 rd Party apps PowerPivot DatabasesLOB ApplicationsFiles OData Feeds Cloud Services Reporting SharePointExcel
Tools BISM Reporting Services Data Feeds Data Sets Align to the Azure Data Market
Still in BIDSStill in Excel
The case for the data warehouse Still need to combine and refine source data Improve consistency and accuracy Capture History Near real time BI
Reference Data Definition Values/Rules New Records Corrections & Suggestions Correct Records Invalid Records SSIS Data Flow Source + Mapping Data correction Component SSIS Package Destination Reference Data Services DQS Server Data Quality Services
MDS Excel add-in New MDS Interface
CrawlersapiIndex server Interfaces
Cleanse, match DQS Curate MDS Match, de-duplicate DQS Acquire SSIS Publish SSIS Discover Barcelona Inventory Barcelona Data Sources
ISDQSMDSBarcelona
Columnstore Uses VertiPaq compression C1C2C3C5 C6 C4 … Row store: Column store: Pages
Columnstore Performance Performance Illustration 32-logical processors 256GB RAM, 1Tb database with 1.4 billion rows Column store whitepaper Total CPU time Elapsed time Columnstore No columnstore Speedup16X455X select w_city, w_state, d_year, SUM(cs_sales_price) as cs_sales_price from warehouse, catalog_sales, date_dim where w_warehouse_sk = cs_warehouse_sk and cs_sold_date_sk = d_date_sk and w_state in ('SD','OH') and d_year in (2001,2002,2003) group by w_city, w_state, d_year order by d_year, w_state, w_city;