CygNet Database Service Diagnostics and Performance Tuning

Slides:



Advertisements
Similar presentations
Adam Jorgensen Pragmatic Works Performance Optimization in SQL Server Analysis Services 2008.
Advertisements

Best Practice for Performance Edward M. Kwang President.
Presented by Jacob Wilson SharePoint Practice Lead Bross Group 1.
DB Audit Expert v1.1 for Oracle Copyright © SoftTree Technologies, Inc. This presentation is for DB Audit Expert for Oracle version 1.1 which.
Backup & Recovery 1.
Database Storage Considerations Adam Backman White Star Software DB-05:
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 10 Database Performance Tuning and Query Optimization.
Key Perf considerations & bottlenecks Windows Azure VM characteristics Monitoring TroubleshootingBest practices.
By Lecturer / Aisha Dawood 1.  You can control the number of dispatcher processes in the instance. Unlike the number of shared servers, the number of.
Physical Database Design & Performance. Optimizing for Query Performance For DBs with high retrieval traffic as compared to maintenance traffic, optimizing.
© 2008 Quest Software, Inc. ALL RIGHTS RESERVED. Perfmon and Profiler 101.
INTRODUCTION TO DBS Database: a collection of data describing the activities of one or more related organizations DBMS: software designed to assist in.
University of Sunderland COM 220 Lecture Ten Slide 1 Database Performance.
The Million Point PI System – PI Server 3.4 The Million Point PI System PI Server 3.4 Jon Peterson Rulik Perla Denis Vacher.
Infrastructure for Data Warehouses. Basics Of Data Access Data Store Machine Memory Buffer Memory Cache Data Store Buffer Bus Structure.
IMS 4212: Database Implementation 1 Dr. Lawrence West, Management Dept., University of Central Florida Physical Database Implementation—Topics.
Bigtable: A Distributed Storage System for Structured Data
Database Systems, 8 th Edition SQL Performance Tuning Evaluated from client perspective –Most current relational DBMSs perform automatic query optimization.
How to kill SQL Server Performance Håkan Winther.
Configuring SQL Server for a successful SharePoint Server Deployment Haaron Gonzalez Solution Architect & Consultant Microsoft MVP SharePoint Server
.NET Application Development in the CygNet ® Ecosystem Mike Borland, Senior Software Development Manager Dan Snyder, Staff Software Engineer.
Lesson 4 – Cache, virtual and flash memory
Doing More Cool Things in CygNet ® Blake Miller, Principal Software Engineer Walter Goodwater, Lead Software Engineer.
 1- Definition  2- Helpdesk  3- Asset management  4- Analytics  5- Tools.
Understanding and Improving Server Performance
SharePoint 2010 Performance and Capacity Planning Best Practices
Overview What’s a DTF file all about?
Practical Database Design and Tuning
Blue Collar SQL Tricks - Make Standard Edition Work for you.
SQL Replication for RCSQL 4.5
Storage Access Paging Buffer Replacement Page Replacement
CS 540 Database Management Systems
SharePoint Solutions Architect, Protiviti
CygNet Operator Mobile App
Lecture 16: Data Storage Wednesday, November 6, 2006.
Indexing ? Why ? Need to locate the actual records on disk without having to read the entire table into memory.
1 Overview 8 Backup&Recovery 2 Software Maintenance 9 Optimizer 3
Secondary Storage Data Retrieval.
Informatica PowerCenter Performance Tuning Tips
Physical Database Design and Performance
External Sorting Chapter 13
Solving the Hard Problems
IBM Tivoli Support Technical Exchange Event: Troubleshooting Gateways for TNPMW By: Sharina Shahir September 17, 2009.
Optimizing Device Communication and Analyzing UIS Performance
Database Management Systems (CS 564)
Bomgar Remote support software
Software Architecture in Practice
Let’s Do Something Noteworthy:
Marcos Freccia Stop everything! Top T-SQL tricks to a developer
TechEd /14/2018 6:26 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered.
Database Implementation Issues
GCSE Computing Databases.
More about Databases.
KISS-Tree: Smart Latch-Free In-Memory Indexing on Modern Architectures
Steve Hood SimpleSQLServer.com
Practical Database Design and Tuning
Turbo-Charged Transaction Logs
External Sorting Chapter 13
Indexing For Optimal Performance
Database Systems (資料庫系統)
DATABASE IMPLEMENTATION ISSUES
Indexing Lecture 15.
Database Implementation Issues
Database administration
Blue Collar SQL Tricks - Make Standard Edition Work for you.
External Sorting Chapter 13
Database Implementation Issues
Survey Results Respondents: 39 of 51 – 76%
Index Structures Chapter 13 of GUW September 16, 2019
Presentation transcript:

CygNet Database Service Diagnostics and Performance Tuning Rick Stember and Dan Snyder

Agenda In this session we’re going to talk about: CygNet Database Services (DBS) Common functionality DBS Server-side caching Client-side diagnostics/tuning Indexes

DBS 101 – What’s a DBS? Built on Microsoft Extensible Storage Engine (ESE) ESE is used with Microsoft Exchange and can support databases up to 16 TB Database Services: ACS, BSS, AUD, DDS, ELS, FAC, GNS, GRP, NOTE, PNT, TRS VHS: not a DBS, but built on ESE

DBS Common Functionality ESE goodness Caching, logging, utilities, ACID reliability DDL (Database Definition Language) Defines records, fields, indexes Common messages, info items, utilities “DBS-based” service

ESE Caching This is the number 1 takeaway of this talk! What is a cache? Main idea: Physical memory access > Disk I/O When fetching data from the disk, why not read extra data (“page”) so that the next read is more efficient? The ESE cache will store recently used pages in memory in anticipation of future access Caching especially helps with sequential access

Caching (Continued…) 64-bit services > 4GB per process Strawpoll Production CygNet host w/ least physical memory Production CygNet host w/ most physical memory Anecdote: We know of a customer that has access to a machine with 1TB of physical mem

Cache Tuning How do you determine the minimum and maximum sizes? Art, not a science Requires physical memory Bigger is usually better Direct correlation between DB size and cache requirements All services are not of equal importance Cache settings are configured per service

When to Increase your Cache When would you want to increase your cache usage? When your database size has increased When you need faster read/write rates Symptoms: Nav Bar is taking too long to load, etc. Don’t blindly increase cache sizes on all services! Competition Prioritize Often databases grow slowly, but over time they may change significantly. “Important”

Distributing Cache Example How should we distribute 20 GB of physical memory between these services? Evenly = 2 GB per service (WRONG) Note: 20 GB is not much. This is just an example. Service ACS AUD BSS/APPS DDS ELS/ELSALM FAC GRP PNT TRS VHS

Distributing Cache Example Service DB+Inx Size (GB) VHS 150 ELS/ELSALM 50 AUD DDS 20 PNT 2 BSS/APPS GRP 1 FAC .2 ACS .01 TRS First, order by Database size + Index size Service Diags:

Distributing Cache Example Service Perf. Criticality VHS HIGH ELS/ELSALM Medium AUD DDS PNT BSS/APPS Low GRP FAC ACS TRS Second, determine “performance criticality” Message rate Screen dependencies (Grids, Trends) Polling (DDS)

Distributing Cache Example Service DB+Inx Size (GB) Min Cache (GB) Max Cache (GB) Perf. Criticality VHS 150 10 20 HIGH ELS/ELSALM 50 1 2 Medium AUD DDS 3 4 PNT BSS/APPS Low GRP FAC .2 ACS .01 .1 TRS Focus on the MIN cache setting. ESE is aggressive in allocating up to the MIN amount Monitor cache “active” and re-balance as necessary.

How to Increase Your Cache Config file keywords: DBS_DISK_CACHE_IN_MEGS DBS_MIN_DISK_CACHE_IN_MEGS The MIN keyword is relatively new and is key

Monitoring Cache Usage Info items DBS_FILE_CACHE_ACTIVE, MAX, MIN ServiceMon-able info items Service Details Dialog Service Daigs

Demo: Point Report

Diagnostics / Tuning: Point Report v1 Select * from WESCAPI_PNT.pnt_header_record Full table scan GET_TABLE_ROW ~50 points per message

Diagnostics / Tuning: Point Report v2 Select just the columns that you need Still a full table scan… DBS_GET_VIEW ~500 points per message

Diagnostics / Tuning: Point Report v3 Qualify the points (where clause) No longer a full table scan! DBS_GET_VIEW_BY_INDEX_LIST ~300 points per message

Diagnostics / Tuning: Point Report v4 Add custom index to the PNT (PntAppl.ddl) DBS_GET_VIEW_BY_INDEX_LIST PNT only needs to scan the index

Custom Indexes (Continued…) Why would you want a custom index? Performance! Why not add indexes for EVERYTHING? Index database size Writes become less efficient If I have 100 indexes that include Attribute X, when I update the attribute, 100 indexes need to be updated

Custom Indexes (Continued…) How do you configure them? Modify Appl.ddl Stop service Run ReindexESE Start service

Don’t excessively update your DBS data FAC and PNT records should not be updated frequently Client-side cache effectiveness

Recap DBS Common functionality DBS Server-side caching Client-side diagnostics/tuning Indexes

Questions?

For more information visit: www.cygnetblog.com

Event Survey and Prizes Online survey QR code or go to http://ep-weatherford.com/events/2015_WESC/WESC_Survey.html 2 laptops in registration area Hardcopies Registration desk Please stop by the registration desk to get your ticket for the drawing once you have completed the survey Survey prizes will be drawn at the end of Wednesday in the Session Close! You must be present to win Speaker to remind the audience their feedback is important and to complete and submit the surveys. Two options: either online, QR codes available on signage and at the registration desk. Or pick up a hard copy and complete, turn in to WFT staff at registration desk and pickup a ticket for the drawing. Prize drawn at EOD Wednesday during closing session, must be present to win.