© 2012 Progress Software Corporation. All rights reserved. 1 Click to edit Master title style Remove Performance Bottlenecks in Your SQL Connections -

Slides:



Advertisements
Similar presentations
Microsoft Dynamics® AX 2012
Advertisements

Chapter 9. Performance Management Enterprise wide endeavor Research and ascertain all performance problems – not just DBMS Five factors influence DB performance.
Module 13: Performance Tuning. Overview Performance tuning methodologies Instance level Database level Application level Overview of tools and techniques.
Database Architectures and the Web
DEV-2: Getting Started with OpenEdge® Architect – Part I
VMware Capacity Planner 2.7 Discussion and Demo from Engineering May 2009.
Copyright © 200\8 Quest Software High Performance PL/SQL Guy Harrison Chief Architect, Database Solutions.
Performance and Scalability. Optimizing PerformanceScaling UpScaling Out.
1. Aim High with Oracle Real World Performance Andrew Holdsworth Director Real World Performance Group Server Technologies.
INTRODUCTION TO CLOUD COMPUTING CS 595 LECTURE 6 2/13/2015.
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
Communicating with the Outside. Hardware [Processor(s), Disk(s), Memory] Operating System Concurrency ControlRecovery Storage Subsystem Indexes Query.
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 11 Database Performance Tuning and Query Optimization.
©Company confidential 1 Performance Testing for TM & D – An Overview.
Chapter 9 Overview  Reasons to monitor SQL Server  Performance Monitoring and Tuning  Tools for Monitoring SQL Server  Common Monitoring and Tuning.
Capacity Planning in SharePoint Capacity Planning Process of evaluating a technology … Deciding … Hardware … Variety of Ways Different Services.
Ravi Sankar Technology Evangelist | Microsoft Corporation
State of Connecticut Core-CT Project Query 4 hrs Updated 1/21/2011.
MOVE-4: Upgrading Your Database to OpenEdge® 10 Gus Björklund Wizard, Vice President Technology.
Cross Platform Mobile Backend with Mobile Services James
CHAPTER 9 DATABASE MANAGEMENT © Prepared By: Razif Razali.
Chapter 2. Creating the Database Environment
1 Progress Software’s OpenEdge Platform Which database is right for your environment? Simon Epps.
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 10 Database Performance Tuning and Query Optimization.
© D. Wong  Indexes  JDBC  JDBC in J2EE (Java 2 Enterprise Edition)
Sofia, Bulgaria | 9-10 October SQL Server 2005 High Availability for developers Vladimir Tchalkov Crossroad Ltd. Vladimir Tchalkov Crossroad Ltd.
1 Robert Wijnbelt Health Check your Database A Performance Tuning Methodology.
Copyright © 2010, Scryer Analytics, LLC. All rights reserved. Optimizing SAS System Performance − A Platform Perspective Patrick McDonald Scryer Analytics,
Cloud Computing & Amazon Web Services – EC2 Arpita Patel Software Engineer.
© Dennis Shasha, Philippe Bonnet – 2013 Communicating with the Outside.
I Copyright © 2004, Oracle. All rights reserved. Introduction Copyright © 2004, Oracle. All rights reserved.
DEV-5: Introduction to WebSpeed ® Stephen Ferguson Sr. Training Program Manager.
OPS-6: Beginners Guide to OpenEdge ® SQL via ODBC or JDBC Brian Werne Sr. Engineering Manager OpenEdge SQL and OpenEdge Management.
Oracle Tuning Considerations. Agenda Why Tune ? Why Tune ? Ways to Improve Performance Ways to Improve Performance Hardware Hardware Software Software.
Learningcomputer.com SQL Server 2008 – Profiling and Monitoring Tools.
Middleware for FIs Apeego House 4B, Tardeo Rd. Mumbai Tel: Fax:
A Brief Documentation.  Provides basic information about connection, server, and client.
By Shanna Epstein IS 257 September 16, Cnet.com Provides information, tools, and advice to help customers decide what to buy and how to get the.
Srik Raghavan Principal Lead Program Manager Kevin Cox Principal Program Manager SESSION CODE: DAT206.
Full and Para Virtualization
Infrastructure for Data Warehouses. Basics Of Data Access Data Store Machine Memory Buffer Memory Cache Data Store Buffer Bus Structure.
Your Data Any Place, Any Time Performance and Scalability.
1 Copyright © 2005, Oracle. All rights reserved. Following a Tuning Methodology.
Performance/Scalability with JDBC, UCP & Oracle Database 12c
1 Chapter 9 Tuning Table Access. 2 Overview Improve performance of access to single table Explain access methods – Full Table Scan – Index – Partition-level.
Oracle Business Intelligence Foundation – Testing and Deploying OBI Repository.
Dynamics Tech Conference 2015 PART 1. Dynamics R3 CU8 Retail warehouse Built-in modules for warehouse efficiency License plating.
Copyright Sammamish Software Services All rights reserved. 1 Prog 140  SQL Server Performance Monitoring and Tuning.
I NTRODUCTION OF W EEK 2  Assignment Discussion  Due this week:  1-1 (Exam Proctor): everyone including in TLC  1-2 (SQL Review): review SQL  Review.
Dynamic SQL Writing Efficient Queries on the Fly ED POLLACK AUTOTASK CORPORATION DATABASE OPTIMIZATION ENGINEER.
Amazon Web Services. Amazon Web Services (AWS) - robust, scalable and affordable infrastructure for cloud computing. This session is about:
This document is provided for informational purposes only and Microsoft makes no warranties, either express or implied, in this document. Information.
11 Copyright © 2009, Oracle. All rights reserved. Enhancing ETL Performance.
 1- Definition  2- Helpdesk  3- Asset management  4- Analytics  5- Tools.
Building Enterprise Applications Using Visual Studio®
Unit 3 Virtualization.
SQL Best Practices Chandra Sekhar
Installation and database instance essentials
Real-Time Data Replication From Your Progress DB (Pro2 Enterprise)
Software Architecture in Practice
Database Performance Tuning and Query Optimization
9/17/2018 Future TIME Kevin R Banning, R&D Director Sept 17, 2014.
Introduction of Week 6 Assignment Discussion
Introduction of Week 3 Assignment Discussion
Power Apps & Flow for Microsoft Dynamics SL
Chapter 11 Database Performance Tuning and Query Optimization
Windows Azure Hybrid Architectures and Patterns
CIS MS Windows Operating System
Advanced Database Topics
Presentation transcript:

© 2012 Progress Software Corporation. All rights reserved. 1 Click to edit Master title style Remove Performance Bottlenecks in Your SQL Connections - Data Connectivity Performance Best Practices Steve Pittman, Architect OpenEdge SQL PUG Challenge Americas –

© 2012 Progress Software Corporation. All rights reserved. 2 Disclaimer The future features described in this presentation are under consideration by Progress Software and are not commitments for future products, technologies, or services. Any forward looking statements represent our estimates only as of today and should not be relied upon as representing our estimates as of any subsequent date. While we may elect to update forward looking statements at some point in the future, we specifically disclaim any obligation to do so, even if our estimates change.

© 2012 Progress Software Corporation. All rights reserved. 3 Agenda  Where did all that data come from?  What can we do?  A systematic approach to performance  An OpenEdge perspective  Questions?

© 2012 Progress Software Corporation. All rights reserved. 4 A Brief Audience Survey  # using ODBC –Tools – Crystal?  # using JDBC –Tools – DbVis?  # using Java  Java appservers –WebLogic?

© 2012 Progress Software Corporation. All rights reserved. 5 Humans are information machines  Humans are now storing over 988 Exabytes of information (at the end of 2010)  15 petabytes of information generated every day  Scientific, Engineering, Financial, Social – all areas of our lives continue to generate and store the world’s data at an increasing rate.

© 2012 Progress Software Corporation. All rights reserved. 6 Making this data useable  Performance trends in were centered around making this data more quickly accessible (and more useful).  Sorting, cataloging, querying, inserting…all these are required for making the data mean something – and it has to be fast!

© 2012 Progress Software Corporation. All rights reserved. 7 Performance trends in 2012  Virtualization made efficiency a way of life  Concurrency will gain steam in 2012 –Research on multi-core has been building –New tools by chip makers will help –Additional Language constructs and compiler directives will come –Java application development frameworks –Application servers – WebLogic, JBoss  Larger buffers and algorithm changes will take place to fully utilize 64 bit processors.

© 2012 Progress Software Corporation. All rights reserved. 8 How did we get here? The advance of information technology (hardware and software) gives you a dizzying array of choices on how to store your data…. …and not everyone has the same opinion. Multi-tenant db

© 2012 Progress Software Corporation. All rights reserved. 9 A typical Enterprise App Architecture Database Buffers, I/O, etc.. Network efficiency Database Settings Application UI Business Logic & Data Access Code Driver

© 2012 Progress Software Corporation. All rights reserved. 10 Time is of the essence  Large amounts of data require long processing times – small percentage gains result in large time savings  Performance tuning steps remain the same

© 2012 Progress Software Corporation. All rights reserved. 11 So, what can we do to keep up? Just follow the PANDDa.

© 2012 Progress Software Corporation. All rights reserved. 12 Where Performance Bottlenecks Lie P.A.N.D.Da P latform A pplication Code N etwork D river D atabase Which element will give the most payback?

© 2012 Progress Software Corporation. All rights reserved. 13 Platform  Consider native calls into the Platform and whether you can do them more efficiently.  Varying client platform performance levels –Windows –Linux: 32bit, 64bit –Unix –Scale up, scale out  What are your optimization options? Are tools available? Ex. Intel Parallel Studio Consider Resource Usage when the Platform is Virtualized! Consider Resource Usage when the Platform is Virtualized!

© 2012 Progress Software Corporation. All rights reserved. 14 Platform – Virtualization On a machine that has much less available Memory and/or CPU, this graph will look different.

© 2012 Progress Software Corporation. All rights reserved. 15 Memory Usage Scalability – from the Lab Application #1 Application #2 Application #3 Application #4 Application #5 Still consumes less Memory!!

© 2012 Progress Software Corporation. All rights reserved. 16 Virtualization Update  Updated Performance Lab to scale Virtual machines to measure VM Impact. VM1VM2VM3TotalComparison DDCompDDCompDDCompDDCompVM1VM2VM3Total %49.40%88.00%58.80% %44.40%121.50%67.30% %70.80%123.50%82.00% %89.00%132.30%97.30% %94.30%139.10%106.00% %167.90%171.50%169.50% %105.70%178.60%132.80% %138.00%305.70%164.90% %125.00%262.00%159.70% %144.00%340.00%184.20% The Competition needs 3 virtual machines to achieve the same performance as 1 of our virtual machines! + + =

© 2012 Progress Software Corporation. All rights reserved rps 15229rps 14649rps 15317rps Virtualized Optimizations give you options! Increase throughput Machine Consolidation 6294rps 3329rps Total = rps Total = rps Add Progress | DataDirect

© 2012 Progress Software Corporation. All rights reserved. 18 Application Code & Infrastructure  Faster communication –Caching & Object Reuse (avoiding comm!)  Increase Parallelism –Threading, Concurrency –Network async streams –Not for basic reporting!  Minimize Slow operations –Disk I/O, blocking operations  Re-architect when ? –Reference architectures  Tools – latest versions It’s like the Tower of Babel; we have great infrastructure… but we still can’t communicate

© 2012 Progress Software Corporation. All rights reserved. 19 Network Physical Location Security is expensive How many Hops? At what speed? Co-locate, Same country, City, etc..

© 2012 Progress Software Corporation. All rights reserved. 20 The Network has much to tune…

© 2012 Progress Software Corporation. All rights reserved. 21 The Driver is the network

© 2012 Progress Software Corporation. All rights reserved. 22 Database  Utilize OpenEdge Tools if available –E.g., promon statement cache options  Data Layout –Tune your SQL queries –Eliminate unnecessary calls and scans –Save MetaData  Memory tuning –Buffer sizes, pre-fetch, etc.  Disk Usage –Striping, storing more data in memory  Logging and health monitors – look in the OpenEdge documentation

© 2012 Progress Software Corporation. All rights reserved. 23 OpenEdge sql techniques – better connectivity  Quick ordering – “SELECT TOP”  Minimize round trips –Stored procedures  Capturing preferred query form –Views  Managing variable sized data –dbtool for column width –Network buffer memory impact –Rows per network message  Managing concurrency effects –Lockwait timeout

© 2012 Progress Software Corporation. All rights reserved. 24 SELECT TOP – Order and Time db App TOP ordering Optimized ordering ORDER BY Sorting machine

© 2012 Progress Software Corporation. All rights reserved. 25 Push network traffic to server Java Stored Procedure – logic on the server App Stored Proc SQL db

© 2012 Progress Software Corporation. All rights reserved. 26 Pushing best query elements into sql views  Views can be a toolbox of nicely working query components –Pre-fab join relationships for naturally related tables The right tables with the right join predicates The right WHERE clause predicates to choose correct data Avoid those queries missing a vital WHERE predicate  Views can be a storehouse of totally built queries –End users pick the view vs. end users built query from scratch  Accelerate those ad-hoc reports with views as building blocks  Views can provide security –Expose only “need to know” tables, columns –Screen out data which must be private or secured away  Simple to setup and use –CREATE VIEW myview AS –SELECT * FROM myview WHERE myview.region = ‘NW’

© 2012 Progress Software Corporation. All rights reserved. 27 Failing transactions – the problem 12345,Smith Trucking, Westford,MA,02423,….. Customer table UPDATE customer SET city = ‘Northboro’ WHERE custnum = SELECT * FROM customer WHERE custnum BETWEEN AND lockWaitTimeout expires

© 2012 Progress Software Corporation. All rights reserved. 28 Failing transactions – some help  Global lockwait timeout –Environment variable PROSQL_LOCKWAIT_TIMEOUT export PROSQL_LOCKWAIT_TIMEOUT=30 Significant shortcomings  JDBC Connection property –“lockWaitTimeout” –As of 10.2B04 String url = "jdbc:datadirect:openedge://localhost:9878;" + "databaseName=mys2k;lockWaitTimeout=60"; Connection conn = DriverManager.getConnection(url, ….. );  FUTURE: ODBC Connection property –“lockWaitTimeout”, same format –Target delivery in OE 11.2 –In ODBC Data Admin “Advanced” Tab

© 2012 Progress Software Corporation. All rights reserved. 29  Power of the ABL –ABL: size unlimited – TEXT –Sql: size limited – VARCHAR (61)  Result: “over-stuffed” columns OE sql error: “Column XXX has value exceeding it’s max length”  Server side fixes –Data Dictionary Options - SQL Properties - Adjust Field Width –OE SQL as DBA ALTER TABLE ALTER COL SET PRO_SQL_WIDTH ….. –dbtool High performance, multi-threaded db maintenance Menu choice: SQL Width Scan w/Fix Option Online schema updater Coping with column sizes

© 2012 Progress Software Corporation. All rights reserved. 30  Client side fixes –Find column which has size problem from error text “Column Name in table PUB.Customer has value exceeding its max length or precision.” –Change sql statement column reference to “substring()” SELECT Name, city, state, country FROM pub.customer …… SELECT SUBSTR( Name, 1, 84) AS ‘Name’, city, state, country, …… –OR, truncate over-stuffed value to column defined size SELECT SUBSTR( Name, 1) AS ‘Name’, city, state, country, …… Coping with column sizes - more

© 2012 Progress Software Corporation. All rights reserved K * 100 cols * 50 rows = 160M Coping with column sizes – maxing out App db Table2 result set rows Table1 result set rows Table3 result set rows Query network buffers

© 2012 Progress Software Corporation. All rights reserved. 32 New Challenges & Research in 2012  More 2012 Enterprise Performance Research –Caching, Concurrency, Cloud deployment  Mobile devices –3g to 4g to wiMax –Hardware upgrades coming fast  Services still the norm – what’s next? –SaaS –PaaS  SQL vs NoSQL “Cloud”

© 2012 Progress Software Corporation. All rights reserved. 33 In Summary  Humans continue to create copious amounts of data at breakneck speed. This data must be cataloged, sorted, and queried – the latest improvements in data access middleware will ensure this remains scalable for your applications in the enterprise!  R&D trends in 2011 give way to actionable development changes in Follow the P.A.N.D.Da model to keep your application up to date!

© 2012 Progress Software Corporation. All rights reserved. 34 For More Information  Progress|DataDirect Website:  More than a Driver:  Progress|DataDirect Performance Data:  Progress|DataDirect Virtualization:  Documentation: Contact Us: NA Tel Number: Intl Tel Number: +44 (0)