Building Performant Dossiers: Tips and Best Practices - #analytics19 - MicroStrategy
←
→
Page content transcription
If your browser does not render page correctly, please read the page content below
Safe Harbor Notice This presentation may include statements that constitute “forward-looking statements” for purposes of the safe harbor provisions under the Private Securities Litigation Reform Act of 1995, including descriptions of technology and product features that are under development and estimates of future business prospects. Forward-looking statements inherently involve risks and uncertainties that could cause actual results of MicroStrategy Incorporated and its subsidiaries (collectively, the “Company”) to differ materially from the forward-looking statements. Factors that could contribute to such differences include: the Company’s ability to meet product development goals while aligning costs with anticipated revenues; the Company’s ability to develop, market, and deliver on a timely and cost-effective basis new or enhanced offerings that respond to technological change or new customer requirements; the extent and timing of market acceptance of the Company’s new offerings; continued acceptance of the Company’s other products in the marketplace; the timing of significant orders; competitive factors; general economic conditions; and other risks detailed in the Company’s Form 10-Q for the three months ended September 30, 2018 and other periodic reports filed with the Securities and Exchange Commission. By making these forward-looking statements, the Company undertakes no obligation to update these statements for revisions or changes after the date of this presentation. Copyright © 2019 MicroStrategy Incorporated. All Rights Reserved.
Agenda • Who’s responsible for performance? • Learning the Dossier Execution Workflow • Potential bottlenecks • Strategies to achieve good performance | Analytics and Mobility M ic ro S tra te g y C o n fid e n tia l. C o p y rig h t © 2 0 1 9 M icro S tra te g y In c o rp o ra te d . A ll R ig h ts R e se rve d .
USERS Executives Management Sales Reps Workforce Vendors Influencers VIP Clientele Customers Citizens TECHNOLOGY REGULATORY OPPORTUNITIES FUNCTIONS Sales Marketing Customer Service Manufacturing Field Service Finance HR IT Facilities Vendors Customers REQUIREMENTS DEVICES Wall TV Desktop Web Tablet Phone Watch Voice C lo u d Mobile Identity, D a ta P riv a cy C o m p u tin g Enterprise Enterprise Embedded Enterprise Mobile Mobile Security, and Mobile Telemetry a n d S e cu rity APPLICATIONS Analytics Reporting Big Data Data Discovery Analytics Mobility Analytics Productivity External Apps Communications and IoT Google TOOLS Email Search Excel PowerPoint Power BI Qlik Tableau Alteryx Paxata Trifacta Datawatch Jupyter Matlab R Studio SAS SPSS Eclipse Python IDE Visual Studio xCode M a c h in e A d v e rtis in g L e a rn in g a n d M a rk e tin g EXECUTIVES BUSINESS USERS ANALYSTS DATA SCIENTISTS DEVELOPERS ROLES T h e B u s in e s s E x e c u tive s e ts th e a n a ly tic s a n d m o b ility stra te g y fo r th e fu n c tio n . T h e y e s ta b lis h th e fu n ctio n ’s p rio ritie s , p ro g ra m s , b u d g e t, a n d p la n , E x p lo re a n d in te ra ct w ith p u b lis h e d a n a ly tic s . E n h a n c e a p p lic a tio n s u sin g s e lf-s e rv ic e d a ta d is co ve ry to cre a te cu sto m g ro u p s , d e rive d m e trics, a n d C re a te , s h a re , a n d m a in ta in in te llig e n c e a p p lic a tio n s fo r th e d e p a rtm e n t u sin g e n te rp rise se c u rity , d a ta , a n d a p p lica tio n o b je cts B u ild a n d p u b lis h a d va n c e d s ta tis tics , p re d ictiv e m o d e ls , a n d m a c h in e le a rn in g a lg o rith m s u s in g lib ra rie s su ch a s T e n so rF lo w , R , P yth o n , a n d In je ct, e xte n d , a n d e m b e d in te llig e n ce in to cu sto m a n d th ird -p a rty a p p lica tio n s u sin g p ro g ra m m in g la n g u a g e s su c h a s Ja v a S c rip t, Ja v a , P H P , P y th o n , S W IF T , O b je ctiv e -C , C # , w h ils t m a in ta in in g ju stifica tio n fo r th e p la tfo rm a s s e ts a n d re s o u rc e s b y d y n a m ic filte rs. F o ste r a d o p tio n th ro u g h co lla b o ra tio n a n d sh a rin g . to h e lp e n s u re a sin g le ve rsio n o f th e tru th . M A T L A B , th a t a re le ve ra g e d b y A n a lys ts a n d D e ve lo p e rs . .N e t, a n d o th e r co m m o n la n g u a g e s. tra c k in g a n d p u b lis h in g a d o p tio n , im p a ct, a n d u ltim a te ly re tu rn -o n -in ve s tm e n t. M o b ile C o m p u tin g C o rp o ra te G o v e rn a n c e INTELLIGENCE CENTER PROGRAM S A R C H IT E C T U R E PERSONAS B lo ck c h a in O n - p r e m is e s , c lo u d , o r h y b r id E n v ir o n m e n ts d e p lo y e d in m in u te s E m p lo y m e n t DEVELOPMENT Intelligence Director and Labor V e r tic a l a n d h o r iz o n ta l s c a lin g C re a te In te llig e n c e e n viro n m e n ts b y d e p lo y in g th e In te llig e n ce Applications Mobility Intelligence A rch ite ctu re , su p e rvis in g th e In te llig e n c e C e n te r a n d ru n n in g P u b lis h a n a p p lic a tio n fra m e w o rk a n d b e s t p ra c tic e s th a t E s ta b lis h a fra m e w o rk , d is c ip lin e , a n d a rc h ite ctu re s o A n a lys ts In je ct a rtific ia l in te llig e n ce , m a ch in e le a rn in g , d e e p le a rn in g , M u lti- n o d e c lu s te r in g In te llig e n ce P ro g ra m s to s u p p o rt e n te rp ris e a n d d e p a rtm e n ta l B ig e n a b le a ll fu n c tio n s to b u ild c o n s is te n tly im p a c tfu l a p p lic a tio n s . a n d D e v e lo p e rs c a n b u ild a n d d e p lo y m o b ile a p p lica tio n s. a n d p re d ictive a n a lytic s a lg o rith m s in to e n te rp rise a p p lica tio n s D e p a rtm e n ta l a n a lytic s a n d m o b ility a p p lica tio n s fo r a ll c o n stitu e n ts. M u lti- r e g io n s u p p o r t D a ta E s ta b lis h a fo u n d a tio n o f s h a re d c o m p o n e n ts to s p e e d d e p a rtm e n ta l a p p lic a tio n d e v e lo p m e n t. E s ta b lis h p ro c e s s e s , p ro to c o ls , a n d p ro g ra m s s o th e In te llig e n t E n te rp ris e c a n c o n s u m e a p p s o n m o b ile d e vice s . a n d fe d e ra te d d a ta s e ts . P u b lis h a n d c u ra te a lib ra ry o f m o d e ls fo r A n a ly s ts a n d d e p a rtm e n ta l D a ta S c ie n tis ts. H o t, w a r m , a n d c o ld fa ilo v e r F in a n cia l Services Departmental Enterprise D e v e lo p m e n t U s e r A cc e p ta n ce T e s tin g R e lia b le d r a g - a n d - d r o p p r o m o tio n C o n v e rt d a ta s e ts a n d a p p lic a tio n c o m p o n e n ts in to p u b lis h e d E m p o w e r d e p a rtm e n ts to ra p id ly b u ild a p p lica tio n s o n s e rv ic e s fo r D e v e lo p e rs to in je c t in te llig e n c e in to th e ir c u s to m fe d e ra te d tru s te d d a ta u s in g M ic ro S tra te g y o r o th e r to o ls (i.e . (U A T ) In te g r ity te s tin g o f a p p s a n d u p g r a d e s H a rn e s s th e p o w e r o f y o u r o th e r B I in v e s tm e n ts a n d a p p lic a tio n s . P u b lis h s a m p le s a n d d o c u m e n ta tio n a n d T a b le a u , P o w e r B I, E x c e l). O rch e s tra te c o lla b o ra tio n w ith th e 3 6 0 d e g r e e m o n ito r in g b u ilt in In te rn e t e m p o w e r D e v e lo p e rs to u s e th e ir p re fe rre d p ro g ra m m in g to o ls in te llig e n c e c e n te r s o d a ta s e ts a re c o n tin u a lly a p p ra is e d , e x te n d th e v a lu e to a ll c o n s titu e n ts o n v a rio u s d e vice s. M ig ra te le g a cy S A P B u sin e s sO b je cts a n d IB M C o g n o s E n te rp ris e a n d la n g u a g e s . o p tim iz e d , a n d u p d a te d . o f T h in g s a p p lic a tio n s o n to a m o d e rn p la tfo rm . Application Architect Analytics Architect Mobile Architect Identity Architect E n v iro n m e n ta l C re a te , sh a re , a n d m a in ta in in te llig e n ce C re a te , p u b lish , a n d o p tim ize a fe d e ra te d d a ta B u ild , co m p ile , d e p lo y, a n d m a in ta in m o b ile B u ild , co m p ile , d e p lo y, a n d m a in ta in d ig ita l FOUNDATION DEPLOYM ENT a p p lica tio n s fo r th e e n te rp ris e . la y e r a s th e e n te rp rise ’s sin g le ve rsio n o f th e e n v iro n m e n ts a n d a p p lica tio n s. O p tim ize th e id e n tity a p p lica tio n s, in te g ra te d w ith P u b lis h sta n d a rd ize d a p p lica tio n o b je c ts, tru th . B u ild a n d m a in ta in th e sc h e m a o b je cts a n d u s e r e xp e rie n ce w h e n a cce ssin g a p p lic a tio n s via e n te rp ris e d ire cto rie s. D ig ita lly se cu re a ll a n d p ro m o te d e p a rtm e n ta l a p p lica tio n s fro m a b s tra ctio n la ye r o n to p o f v a rio u s , ch a n g in g m o b ile d e vice s. In te g ra te w ith p re fe rre d V P N , e x istin g a n d n e w lo g ica l a n d p h ysica l a sse ts. Platforms Analytics Administration se lf-se rvice in to th e e n te rp rise e n viro n m e n t. e n te rp ris e a s se ts . S S O , a n d E M M p ro to co ls. In te g ra te a u th e n tic a tio n , co m m u n ica tio n , a n d D ig ita l A rc h ite c t, in s ta ll, c o n fig u re , a n d d e p lo y th e In te llig e n t E n te rp ris e a rc h ite c tu re . D e s ig n th e o p tim u m D e s ig n th e o p tim a l fe d e ra te d e n te rp ris e d a ta la ye r a n d p u b lis h it to A n a ly s ts , D a ta S c ie n tis ts , D e v e lo p e rs , a n d M o n ito r, s u p p o rt, a n d m a in ta in th e In te llig e n t E n te rp rise a rch ite ctu re to fa c ilita te o n g o in g s e c u rity , s ta b ility, a n d Amazon Web Services On-Premises Microsoft Azure te le m e try in to o th e r a p p lica tio n s . Id e n tity a rc h ite c tu re to d e liv e r s e c u rity , s ta b ility , s c a la b ility , A rc h ite c ts . W o rk w ith D e p a rtm e n ts to e vo lv e th e d a ta e c o n o m y . M o n ito r s ys te m u s e , a u to m a te ta s k s, a n d im p le m e n t a n d e c o n o m y b y c o m b in in g p la tfo rm c a p a b ilitie s w ith a rc h ite c tu re to m e e t c h a n g in g b u s in e s s n e e d s . u p g ra d e s to h e lp e n su re a n o p tim a l, re lia b le , a n d m o d e rn u s e r H e a lth o n -p re m is e s , c lo u d , a n d /o r h y b rid s e rv ic e s . e x p e rie n c e . a n d S a fe ty Identity Database Systems Alibaba Cloud CenturyLink Google Cloud IBM Cloud Oracle Cloud Rackspace D e s ig n a n d p u b lis h a d ig ita l id e n tity a rc h ite c tu re th a t C o n fig u re th e in te llig e n c e p la tfo rm to o p tim iz e In te g ra te d a ta fro m e n te rp rise s ys te m s (i.e . E R P , C R M , e n a b le s e n te rp ris e -w id e m u lti-fa c to r g e o -s p e c ific p e rfo rm a n c e a g a in s t v a rio u s d a ta b a s e te c h n o lo g ie s (i.e . M R P , H R ) a n d b le n d w ith o th e r d a ta s o u rce s to b u ild Services Architect Database Architect Platform Administrator System Administrator d ig ita l a u th e n tic a tio n fo r in te rn a l a n d e x te rn a l u s e rs . O ra c le , S Q L , S n o w fla k e , H D F S ), in c lu d in g re la tio n a l, c u s to m a n a ly tic s a n d m o b ility a p p lic a tio n s . D e sig n , Docker Kubernetes vmware In je ct, e xte n d , a n d e m b e d a n a ly tics in to D e sig n a n d m a in ta in d a ta b a se e n te rp rise a sse ts . In s ta ll a n d c o n fig u re th e In te llig e n ce A rc h ite ctu re S e t u p , m a in ta in , m o n ito r, a n d c o n tin u o u s ly Im p le m e n t th e d ig ita l id e n tity a rc h ite c tu re a n d O L A P , b ig d a ta , u n s tru c tu re d , v e c to r, a n d stre a m in g im p le m e n t, a n d o p tim iz e a n in te g ra te d a rc h ite ctu re to p o rta ls, th ird -p a rty, m o b ile , a n d w h ite -la b e le d O p tim iz e d a ta b a s e p e rfo rm a n ce a n d u tiliza tio n o n -p re m ise s a n d /o r in th e c lo u d . M a in ta in th e su p p o rt th e in fra stru ctu re e n viro n m e n t g a te w a y s o n to p o f a ll lo g ic a l a n d p h y s ic a l a s s e ts . p la tfo rm s . T ra c k th ro u g h p u t a n d p e rfo rm a n c e , a n d o v e rco m e th e re p o rtin g lim ita tio n s a n d e x te n d th e a p p lica tio n s . P u b lis h w e b se rvic e s a n d d a ta b a s e d o n q u e ry ty p e , u s a g e p a tte rn s, a n d se cu rity la y e r, m o n ito r syste m u sa g e , a n d th ro u g h d e p lo ym e n t o n A W S , W in d o w s, o r p ro v id e a rc h ite c tu re d e s ig n a n d o p tim iz a tio n c a p a b ilitie s o f e n te rp ris e s y ste m s o f re c o rd . se rvice s fo r u se b y D e ve lo p e rs in b u ild in g a p p lica tio n d e sig n re q u ire m e n ts . o p tim iz e a rc h ite c tu re in o rd e r to re d u ce e rro rs, L in u x, a ll w h ile o p tim izin g p e rfo rm a n ce a n d re c o m m e n d a tio n s to th e d a ta b a s e a d m in istra to r. Linux Windows MARKET d e p a rtm e n ta l a p p lica tio n s. m a xim ize u p tim e , a n d b o o s t p e rfo rm a n ce . co n tro llin g c o sts . COMPETITIVE DISRUPTORS FORCES IN T E L L IG E N C E CLIENT PRODUCTS C lie n ts th a t e n a b le in tu itive , fa st, a n d e n jo y a b le a n a lytic s a n d m o b ility Architect Desktop Web x Reporter Mobile Communicator Badge Hyper Application H IE R A R C H Y O F N E E D S PLATFORM e x p e rie n c e s a c ro ss w e b , d e s k to p , a n d m o b ile in te rfa ce s. Functionality A p p le An Intelligence Platform helps E n a b le B u s in e s s U s e r s , A n a ly s ts , a n d D e v e lo p e r s to p e r fo r m a ll ta s k s ( b u ild , make every device, application, SECURITY d e p lo y , a n a ly z e , s h a r e ) a c r o s s v a r io u s d e v ic e s ( d e s k to p , w e b , m o b ile , v o ic e ) and person more intelligent. C a p a b ilitie s th a t e n a b le th e d e v e lo p m e n t o f p e rs o n a lize d a n d s e c u re d Library Users Groups Badges Privileges Permissions Roles Security Filters w ith o u t r e s tr ic tio n o r lim ita tio n . a p p lic a tio n s in c o rp o ra tin g m u lti-fa cto r, m u lti-la ye r a u th e n tic a tio n . N ew It creates an enterprise semantic E n tra n ts graph that connects, indexes, Popularity Am azon abstracts, and federates your APPLICATION S u r fa c e in te g r a te d c o lla b o r a tio n a n d s h a r in g c a p a b ilitie s w ith in a p p lic a tio n s th a t organization’s data, telemetry, and C o n ta in e rs o f a ctio n a b le in te llig e n c e , p a c ka g e d a n d p u b lish e d Dossiers Dashboards Documents Distributions Custom Apps Web Services Data Services Cards p r o m o te v ir a l a d o p tio n a n d u s a g e b y d e s ig n . to th e e n te rp rise a n d d e p a rtm e n ts . usage. Users can rapidly build contextual applications and deploy them anywhere, anytime, Economy and on any standard device— M a n a g e m u ltip le e n te r p r is e e n v ir o n m e n ts u s in g a s in g le p o w e r fu l w o r k s ta tio n to o l S u p p lie r delivering trusted answers to DATA fo r o n e - ta p d e p lo y m e n t, ta s k a u to m a tio n , a r c h ite c tu r e m a n a g e m e n t, B a rg a in in g G o o g le constituents based on who they F e d e ra te d , c e rtifie d c o lle c tio n s o f d a ta p u b lish e d to e n te rp ris e Dictionaries Lineage Views Cubes Marts a n d s y s te m m o n ito r in g . Pow er a rc h ite c ts a n d d e p a rtm e n ta l a n a lys ts , d a ta s cie n tis ts , a n d d e ve lo p e rs . are, where they are, and what they need. Simplicity D e liv e r u s e r e x p e r ie n c e s , lik e v o ic e , c h a tb o ts , a n d n a tu r a l la n g u a g e , th a t fe e l SCHEMA fa m ilia r a n d e ffo r tle s s e v e n u p o n fir s t u s e , s u p p o r te d w ith to o ls th a t r e q u ir e A s e m a n tic g ra p h c o n ta in in g re u s a b le o b je cts, ca p tu re d in b u sin e ss te rm s, th a t Models Attributes Metrics Templates Filters Sets Visualizations Prompts Forms z e r o tr a in in g . m a p to e n te rp ris e a ss e ts, a n d a b s tra ct co m p le x itie s o f th e u n d e rly in g d a ta . Facebook Buyer M ETADATA B a rg a in in g Scalability Pow er APPLICATION SERVICES S h a r e s o p h is tic a te d p e r s o n a liz e d a p p lic a tio n s , b u ilt o n b illio n s o f r o w s o f d a ta , A s u ite o f e n te rp rise -c a lib e r a d d -o n s e rv ic e s a va ila b le fo r Intelligence Analytics Transaction Distribution Telemetry Identity Collaboration Geospatial Language w ith 1 0 0 ,0 0 0 s u s e r s w h ile m a in ta in in g s u b - s e c o n d r e s p o n s e s . a rc h ite c ts to q u ic kly a n d e a s ily in te g ra te in to a n y a p p lic a tio n . A lib a b a Stability D e p lo y a p p lic a tio n s o n a r o b u s t a r c h ite c tu r e w ith h o t, w a r m , a n d c o ld fa ilo v e r PLATFORM SERVICES Optimized T h re a t o f C ritic a l c a p a b ilitie s to d e p lo y a n a lytic s a n d m o b ility a p p lic a tio n s w ith h ig h Multi-Source Parallel Multi-node Multi-Level Dynamic Platform Multi-Tenancy Usage Compute s tr a te g ie s , c lu s te r in g , a n d r e lia b le g o v e r n o r s c o m b in in g to a v e r t s y s te m c r a s h e s S u b s titu te p e rfo rm a n c e a n d s ca la b ility o n to p o f e n te rp rise a ss e ts. Connectivity Processing Server Cluster Caching Sourcing Analytics Telemetry Elasticity u n d e r p e a k u s a g e a n d d a ta lo a d s . P ro d u cts T w itte r S E R V IC E S Security F a c ilita te s e a m le s s m a n a g e d a c c e s s to e n te r p r is e a s s e ts , c o n tr o lle d v ia a DRIVERS AND GATEWAYS O u t-o f-th e -b o x g a te w a y s a n d d rive rs th a t m a k e it e a sy to c o n n e ct Relational OLAP Big Data EMM PACS Logical Application g r a n u la r s e c u r ity m o d e l, v ia c o n v e n ie n t m u lti- fa c to r d ig ita l c r e d e n tia ls . to a lm o s t a n y e n te rp ris e in fo rm a tio n re so u rce . In te n s ity o f M icro s o ft R iv a lry a m o n g C o m p e tito rs ENTERPRISE ASSETS (1 5 0 + D R IV E R S + G A T E W A Y S ) SQL MDX HADOOP NOSQL APPLICATIONS
Building performant dossiers Aim at a 5s response time, keeping a maximum of 10s (end-to-end) Every role of the Intelligent Enterprise matters • Systems Administrator • Platform Administrator • Analytics Architect • Applications Architect • Developers, Analysts, Business Users Developing a mindset is the key! • Thinking of performance implications with every dossier design decision • Intelligence Center working together with users to improve the overall system 6
Systems and Platform Administrators Enable performant (network) access to enterprise datasets Ensure enough Server resources to leverage In-Memory capabilities, including Caching Manage environments for enterprise and departmental applications • Enterprise environment requiring 99% uptime and meeting all ü Use job prioritization mechanisms already in company performance Service Level Agreements (SLAs) place to isolate users, including User Fencing • Departmental environment with own governance allowing ad-hoc and Workload fencing on clustered reporting & self-service environments 7
Applications Architect Enterprise Applications standards and guidelines Performance tuning and troubleshooting • Criteria for application datasets • Application caching strategy Work with business users, analysts, developers, data scientists 8
Understanding the dossier execution Datasets Execution • Reports and View Reports • In Memory Cubes or Cached Reports • Live Connection Dossier Schema • Joins and Global Lookup Tables Populate Filters • Calculate Derived Attributes and Groups Visualizations • Get Visualization data • Visualization level calculations (e.g. DM’s) • Rendering 9
Running Datasets Datasets that require time to query data • Reports run SQL against the Warehouse (unless already cached). • View Reports run CSI against a Cube (unless cached – new!) Datasets that do not consume time at this stage • In Memory Cubes (already loaded / published) • Reports that were pre-cached • Live Connection datasets 10
Dossier Schema The layer that organizes the data available to the dossier globally • Deals with Attribute linking (data blending across datasets) • Attribute relationships • Creation of Lookup Tables • Derived Attributes • Groups 11
Attribute Element List Filters Avoiding heavy attributes on Filter styles that get populated with a list of elements 12
Running visualizations What goes into executing each visualization? Getting the data • In-Memory datasets: Data is subset from the Cube (CSI Engine) • Live datasets: Data is queried directly from the external source (SQL Engine) Performing In-Memory calculations • Calculating Derived Metrics • With Live datasets, Derived Metrics are pushed to the external data source. Some Derived Attributes calculations too. JSON Generation + Transfer through Network 13
In-Memory vs Live Connection What goes into executing each visualization? 14
Rendering visualizations Rendering time depends on number of data points and your machine resources • Grids have incremental fetching, so only the first 100 rows render • However, other visualizations may attempt to render every data point 15
Strategies to achieve good performance Dataset Caching & Dossier Caching (Cache Subscription) Narrowing down the data for the dossier Blending your Data the right way Using In-Memory calculations wisely and remove unused objects Limiting the amount of individual data points rendered in each visualization
Dataset Caching Dataset Caching for Reports and View Reports (new!)
Dossier Caching Caching all the dossier data and definition
Caching in Library Configurable from Workstation (highly personalized!)
Caching Subscriptions Schedule a recurrent cache update subscription to speed up first response time
Narrowing down the data Dataset-level filters vs dossier-level filters Using Prompts If using Reports, having a dataset-level Report Filter limits the data volume from the start Filtering data at the individual visualization level
Narrowing down the data Dataset-level filters • Report Filters • Filters in View Report Dossier-level filters • Filter Panel • Advanced Filter • Filters at the Metric level (or Conditional Metrics)
Narrowing down the data with Prompts Prompting Reports to limit the data they must fetch from the source
Using Data Blending the right way Splitting your data in several datasets vs single consolidated dataset Data Blending and Global Lookup tables. How does this matter? Multiple joins across datasets and their performance implications Controlling join behavior across datasets
Multiple Datasets vs a Single Consolidated Dataset Consider implications of blending data from multiple datasets
OLAP vs Multi-Table Data Import Cubes Two types of Cubes: • OLAP: Governed project schema, typically created by BI department. Data is denormalized. • MTDI Cubes: Sometimes created by business users. Mini-schema in- memory. Should be certified by Admin so they are governed (that way this data can be federated to others). Data can be normalized.
Using Data Blending the right way One OLAP Cube (denormalized data) vs many smaller datasets
Using Data Blending the right way Blending through a Multi-Table Data Import Cube (aka Super Cube)
Data blending between multiple datasets Data Combination settings • Dossier-level lookup tables for linked attributes: this allows populating full sets of distinct elements present in all datasets. Load Chapters on Demand • Run visualizations only of the currently viewed Chapter. Switching Chapters may be slower.
OLAP vs MTDI OLAP Cubes vs Multi-Table Data Import Cubes
Multi-Table Data Import Cubes What can impact performance? (Hint: joins) • One-to-many relationships. Correctly set relationships to avoiding more expensive joins. • Number of tables joined in query. Retrieving metric data from many tables in the MTDI cube. • Security filters. CSI/SQL engine may “auto-join” table with user-requested data with necessary tables that contain secured attributes. • Complex filters that will result in multiple passes and joins; especially if based on multiple attributes not present in the same table. • Many-to-Many relationships usually unnecessary, so avoid defining them in the MTDI cube.
Cube Partitioning Leverage parallel aggregation on multiple CPU’s by enabling partitioning
Data Blending on multiple datasets Join Settings controlled via each dataset context menu
In-Memory calculations vs pre-calculated Columns Derived Attributes and Groups are useful for ad-hoc reporting and self-service, but how do they scale? Performance considerations of Derived Attributes vs Data Blending (when they get calculated against a Global Lookup) How to make a dossier more scalable and better performing by moving these calculations to an In-Memory dataset, so they don’t have to calculate at the dossier execution time. Using data wrangling instead of Derived Attributes, and why this may perform better. Considerations with Derived Metrics (mention of “Use Lookup for Attributes” setting)
In-Memory calculations vs pre-calculated Columns Using Data Wrangling instead of Derived Attributes
Visualization rendering time Incremental fetch on Grid, but not in other visualizations Performance considerations of Bar Charts, Scatter plot, Heatmap and other visualizations. Use filters to limit the volume of data points that the visualization will render. Performance considerations with Maps. Using clustering. Using Image (png or jpg) thresholds
In a nutshell Watch for joins! Especially between unrelated attributes. Prefer inner joins. Prefer In Memory cubes or cached Reports as datasets. Consider cache subscriptions. One big dataset generally better than multiple smaller ones. Use Derived Attributes, Groups and Derived Metrics only if necessary. Prefer having these calculations built on the dataset (pushed to DB, or done when publishing the Cube). Try to avoid complex functions. Watch for “Smart Metrics”. The more tables have to be accessed, the longer it takes to run. Clean up your dossier. Remove unused objects and datasets.
Tips for Troubleshooting Simple “binary search” on on Chapters, Pages, Visualizations, Derived Calculations, Filters and Datasets Using Chrome’s Developer Tools to break down the response time (time on Server side vs time on client/browser used for rendering) Turning on Performance Statistics on MicroStrategy Web Intelligent Server logs that can be used to further break down the response time. • Datasets execution time • Time spent on calculations of Derived Attributes, Groups • Time spent on each individual visualization, including Derived Metrics calculations and other. • MCE Trace for Data Blending Capacity Planning Tool (Administrators)
Platform Analytics and other Tips for Troubleshooting Platform Analytics Captures telemetry from the MicroStrategy Platform in real-time and makes it available to administrators, developers and analysts to help them optimize performance
MicroStrategy Consulting Application Performance Tuning Advisory Best practice guidance to ensure your application performs seamlessly. MicroStrategy.com/Services 44
Enterprise Support Program Because we are vested in your success Reinvesting in you. Visit microstrategy.com/request-benefits to explore consulting services custom-built to help you become a more Intelligent Enterprise—and available at no cost to you.
Q+A 46
You can also read