Roadshow Architecting for Performance

50 %
50 %
Information about Roadshow Architecting for Performance
Entertainment

Published on September 27, 2007

Author: GenX

Source: authorstream.com

Boston | New York | Washington D.C. | Chicago :  Boston | New York | Washington D.C. | Chicago Peer Source Road Show Architecting for Performance:  Architecting for Performance Kathryn Webster (née Hunt), Independent Consultant Robert Horne, Business Objects Topics:  Finding Performance in Report Design Scaling Component Web Applications Scaling for Enterprise Performance Q&A Topics Report Design Process:  Requires development (like applications) Specs/Requirements Formal Process Start as soon as possible Reports are NOT afterthoughts. Design with the end (.RPTs) in mind Make no assumptions Confirm and Cover Report Design Process Start as Early as Possible:  Begin with the end in mind Reporting is not an afterthought Many cases, it is the only external point of view for the consumer. Requires extra special care and attention for success. Start as Early as Possible Ask Questions:  End Users Consumers of the reports All levels Subject Matter Experts Understand the data Signatories Confirm and Cover In other words: “Don’t assume but ask” Ask Questions Take Detailed Notes:  Document The more that is written down, the more likely you’ll design what the user wants. More accurate in the end. Draw Picture = 1K words White-board Take picture and use in documents Take Detailed Notes Input/Output:  Understand what the data looks like: Going in Resulting output Draw Sample result sets Linking diagrams Subject Matter Experts can help. Input/Output 3 R’s:  Re-Use Refine Repository 3 R’s Performance Tuning:  Now that the reports are done, it’s time to tune them for high performance Use Report | Performance Information for detailed information on your report’s overall performance Performance Tuning Performance 1/3:  Remove unused: Formulas Parameters Tables Use borders instead of lines and boxes Keep images to a minimum Use repository objects Avoids mistakes Avoids duplicates Central updated location Performance 1/3 Performance 2/3:  Avoid Subreports in repetitive sections Avoid use of Group Selection formula to suppress logic if the logic can be used in the record selection. Push as much filter logic as possible down to the server SQL Command objects Performance 2/3 Performance 3/3:  Use built-in functions (like summaries and running totals) as much as possible Avoid formulas and variables if possible. Use group charts (using CR summaries) instead of “Advanced”. Also cross-tab and OLAP Run Dependency Checker on your reports Use Workbench for success Performance 3/3 Topics:  Finding Performance in Report Design Scaling Component Web Applications Scaling for Enterprise Performance Q&A Topics Component Web Applications:  Crystal Report Component Web Applications Crystal Reports for Java Crystal Reports for .NET Components Bundled with Crystal Reports Developer XI R2 Crystal Reports for Visual Studio Crystal Reports for Eclipse Crystal Reports for BEA WebLogic Workshop Crystal Reports for IBM Rational Application Developer Components run inside the Application Server process Component Web Applications Component Web Applications:  For increased Performance add more Servers Web Farm Both Crystal Reports for Java and Crystal Reports for .NET support multi-server clustering. Each report engine can handle independent page requests because of the browser view state. Report Engine lives in the Application Server Memory Space Make sure your Application Server has enough RAM to handle all the report requests. Component Web Applications Component Web Applications:  To offload Report Processing to a separate machine and memory space we need to look to Crystal Reports Server or Business Objects Enterprise Component Web Applications Topics:  Finding Performance in Report Design Scaling Component Web Applications Scaling for Enterprise Performance Q&A Topics Enterprise Performance Topics:  Architecture Overview Applying Sizing Concepts Configuration Concepts System Tuning and Top 5 Performance Tuning List Enterprise Performance Topics BusinessObjects Enterprise XI R2 Architecture :  BusinessObjects Enterprise XI R2 Architecture Scalable and Fault Tolerant Architecture:  BI Platform Scalable and Fault Tolerant Architecture Specialized Service Oriented Architecture for flexible deployments Scale up: multiple service instances on one machine Scale out: services operating on many machines Built-in clustering, caching, and load balancing Fully fault tolerant system Schedule Services Page Viewing Services Cache Services Report Services Report Modification Services Central Management Server Event Services File Repository Services System repository Audit repository Query & Analysis Services Performance Management Services Central Configuration Manager – XIR2 Platform Services:  Central Configuration Manager – XIR2 Platform Services Extensibility:  Extensibility New services are easily added to the platform Add or remove services without restarting the server Configure individual services on distributed hardware Automatically inherit scalability, load balancing, and fault tolerance BI Platform Schedule Services Page Viewing Services Cache Services Report Services Report Modification Services Central Management Server Event Services File repository Services System repository Audit repository Query & Analysis Services Performance Management Services Desktop Intelligence Services Enterprise Performance Topics:  Architecture Overview Applying Sizing Concepts Configuration Concepts System Tuning and Top 5 Performance Tuning List Enterprise Performance Topics The 4 Key Basic Steps to Sizing and Configuration:  The 4 Key Basic Steps to Sizing and Configuration Determine total number of potential users, concurrent active users, and simultaneous user requests Determine number of services required to support load, based on individual service thresholds Listed in BusinessObjects XI R2 Sizing Guide Determine number of processors and machines and deploy for desired performance and failover Tune the Central Management Server (CMS) system database Enterprise Performance Topics:  Architecture Overview Applying Sizing Concepts Configuration Concepts System Tuning and Top 5 Performance Tuning List Enterprise Performance Topics Distribution of Services:  Distribution of Services Distribute for greater hardware fault tolerance – e.g. “Microsoft Data Center Configuration” Distribute for greater performance - intelligence tier separated from processing tier Distribute for a blend of fault tolerance and performance Scalability: What Does It Mean?:  Core Concepts Linear scalability Horizontal scalability Vertical scalability (e.g. 64CPU e10K) Scalability: What Does It Mean? Scalability is the capacity to address additional users or transactions by adding resources while maintaining performance, usability, and functionality BusinessObjects XI R2 Scalability (Vertical):  BusinessObjects XI R2 Scalability (Vertical) Ability to add BusinessObjects XI R2 Services Ability to increase/adjust # of Service Threads Self-Tuning BusinessObjects XI R2 Scalability (Vertical):  BusinessObjects XI R2 Scalability (Vertical) Ability to add BusinessObjects XI R2 Services Ability to increase/adjust # of service threads Self-Tuning BusinessObjects XI R2 Scalability (Vertical):  BusinessObjects XI R2 Scalability (Vertical) Ability to add BusinessObjects XI R2 Services Ability to increase/adjust # of service threads Self-Tuning BusinessObjects XI R2 Scalability (Vertical):  BusinessObjects XI R2 Scalability (Vertical) Ability to add BusinessObjects XI R2 Services Ability to increase/adjust # of service threads Self-Tuning Scalability: What Does It Mean?:  Scalability: What Does It Mean? Scalability is the capacity to address additional users or transactions by adding resources while maintaining performance, usability, and functionality Core Concepts Linear scalability Horizontal scalability Vertical scalability BusinessObjects XI R2 Scalability (Horizontal):  4 CPU 4 CPU 4 CPU 4 CPU BusinessObjects XI R2 Scalability (Horizontal) 1 Central Management Server 1 Cache Server 1 Event Server 4 WEBI Servers 1 PageServer 1 I/O File Repository Server Tuned for Performance! Ability to add BusinessObjects XI Services Ability to increase/adjust # of service threads Self-Tuning 1 Desk Intelligence Server 1 PageServer 1 I/O File repository Server BusinessObjects XI R2 Scalability (Horizontal):  4 CPU 4 CPU 4 CPU 4 CPU BusinessObjects XI R2 Scalability (Horizontal) 1 CMS 1 WEBi 1 DESKi 1 CacheServer 1 Event Server 1 JobServer 1 PageServer Tuned for Fault Tolerance! Ability to add Business Objects XI Services Ability to increase/adjust # of Service Threads Self-Tuning 1 CMS 1 WEBi 1 DESKi 1 CacheServer 1 Event Server 1 JobServer 1 PageServer 1 CMS 1 WEBi 1 DESKi 1 CacheServer 1 Event Server 1 JobServer 1 PageServer 1 CMS 1 WEBi 1 DESKi 1 CacheServer 1 Event Server 1 JobServer 1 PageServer System repository Clustered Platform and Web Server Support:  Clustered Platform and Web Server Support Enterprise Performance Topics:  Architecture Overview Sizing Concepts Applying Sizing Concepts Configuration Concepts System Tuning and Top 5 Performance Tuning List Enterprise Performance Topics Things to Remember:  Things to Remember Tuning is by definition an iterative process You’re either very lucky or very experienced if you tune perfectly the first time - the exception, not the norm Performance is perception, to a point Improper tuning can lead to poor performance and availability User expectation must be set - even a properly tuned system can be perceived as running too slow Understand the user This can be another department, division or company Their requirements (spoken and unspoken) Their organizational (political) issues The stakeholders, decision makers, influencers All of this is critical in achieving success beyond a successful deployment Top 5 Performance Factors:  Top 5 Performance Factors Top 5 things we can do to ensure optimal performance Test the network Optimize the database Fastest storage (e.g. SAN Disk) Central Management Server optimal configuration Adjust number of BusinessObjects XI R2 Enterprise services Other considerations For large deployments with complex documents and many users allow at least 2Gb of memory per CPU Make sure there is sufficient disk space and that it is sufficiently defragmented 1. Test the Network :  1. Test the Network BusinessObjects XI R2 relies heavily on network responsiveness Fast network will improve throughput more than nearly anything else Run a few simple tests – for example, ftp a very large file (50MB) and time it Check to make sure all network settings on switches and network cards match (most likely auto-auto, 100Full etc) 2. Optimize the (CMS System) Database :  2. Optimize the (CMS System) Database Database server must run on adequate hardware and must be tuned for optimal performance Main hardware consideration: enough RAM Fastest possible storage device for physical memory Run a statistical analysis on the working set of data Ensure there are sufficient database connections Get the DBA involved early 3. Take Advantage of the Fastest Storage :  3. Take Advantage of the Fastest Storage Assure that significant file I/O is configured to take advantage of fastest possible storage File repository servers - the input and output folder as well as the temp files folder Web Intelligence server – temp file folder Report server - temp files folder Page server - temp files folder Cache server - cached files folder Other servers - any temp 4. Important CMS Configuration Options 1/3:  4. Important CMS Configuration Options 1/3 -maxobjectsincache Default is 10,000 This should be set to a number greater than the size of the working set being used to minimize database reads -ndbqthreads Default is 1 This controls both the number of connections held open to the database server for the life of the CMS, and it controls the number of concurrent operations that can be sent to the database 4. Important CMS Configuration Options 2/3:  4. Important CMS Configuration Options 2/3 4. Important CMS Configuration Options 3/3:  4. Important CMS Configuration Options 3/3 5. Adjust Number of Business Objects Services:  5. Adjust Number of Business Objects Services As the number of users, requests, and load changes Adjust the number of BusinessObjects XI R2 services (CMS, Web Intelligence Server, Desktop Intelligence Server, PageServer, CacheServer, Audit Server, etc.) Take advantage of flexible architecture See BusinessObjects XI R2 Sizing Guide (ask Sales Representative – Non-Disclosure Agreement required) A majority of this is now done automatically in BusinessObjects XI R2 BusinessObjects XI R2 Administrator’s Guide:  BusinessObjects XI R2 Administrator’s Guide Refer to the BusinessObjects XI R2 Administrator’s Guide Section called “Scaling Your System” Topics include: Increasing overall system capacity Increasing scheduled reporting capacity Delegating XSL transformation to Internet Explorer for Web Intelligence reports Increasing on-demand viewing capacity for Crystal Reports Enhancing custom web applications Optimizing network speed and database efficiency Etc, etc. Summary:  BusinessObjects XI R2 is a Service Oriented Architecture which can be scaled up or out Size your system based on user load and service thresholds Deploy and configure for a combination of performance and reliability Be aware of the “Top 5 performance tuning factors” and take advantage of built in technology Ask Sales Representative for BusinessObjects XI R2 administrator’s and sizing guides (Non-Disclosure Agreement Required) Summary Topics:  Finding Performance in Report Design Scaling Component Web Applications Scaling for Enterprise Performance Q&A Topics Q&A:  Questions Robert Horne, Developer Evangelist, Business Objects Kathryn Webster, Independent Consultant We will repeat questions to ensure everyone can hear Contact information (optional) Email: robert.horne@businessobjects.com Email: klwebster@shaw.ca Q&A

Add a comment

Related presentations

Related pages

Architecting for Big Data Analytics and Beyond

Architecting for Big Data Analytics and Beyond: ... - Linear performance Built-in analytics - Libraries of functions - Extensible SDK Less costly
Read more

Architecting For Performance | SCN

Architecting For Performance - Learn best practices around designing custom reporting applications for performance. This session will cover report design ...
Read more

Peer Source Road Show - SAP Community Network

Architecting for PerformanceArchitecting for Performance Kathryn Webster (née Hunt), Independent Consultant Robert Horne, Business Objects
Read more

Recruiting Optimization Roadshow

See first-hand what companies like Pinterest, Zenefits, and Imgur are doing to build strong teams and continuously improve their recruiting performance!
Read more

New Business Objects Enterprise Sizing Guide No... | SCN

Recently at the Diamond Developer conference and the Peer Source Road Show I gave a presentation entitled Architecting for Performance. Part of my ...
Read more

NICF- Architecting Software Solutions - IT & Innovation ...

NICF- Architecting Software Solutions. ... Software Engineers who aspire to be equipped with skills in solution architecting ... Meeting the Performance of ...
Read more

Transforming the Datacenter | ZDNet

Architecting for High Performance. Virtualizing works well for small workloads, and can be a great advantage in high-performance computing applications ...
Read more

MySQL Newsletter October 2011 - MySQL :: The world's most ...

MySQL Newsletter October 2011 ... JAPAC Roadshow: ... Architecting for Real-Time Performance and 99.999% Availability;
Read more