Common mistakes developers make in SQL Server Amateurs work until they get it right. Professionals work until they can't get it wrong.

Size: px
Start display at page:

Download "Common mistakes developers make in SQL Server Amateurs work until they get it right. Professionals work until they can't get it wrong."

Transcription

1 Common mistakes developers make in SQL Server Amateurs work until they get it right. Professionals work until they can't get it wrong.

2 Who am I? Self-employed 6 years, Visual Basic 3.0 to 6.0, Access 1.0 to 95. Long time consultant 15 years, Visual Basic 6.0, SQL Server 4.21 to 2008R2. Employed 3 years, SQL Server 2000 to 2008R2 and Denali (2011?). MVP Microsoft Valuable Professional SQL Server since Active on several forums as Peso, SwePeso or Pesomannen msdn.microsoft.com

3 Agenda Faster hardware Row By Agonizing Row (pronounced Ree-bar) Bad indexing Index misuse Triggers Indeterministic functions

4 Before we start Before you make any change on a production SQL Server, be sure you test it first in a test environment NO EXCEPTIONS! I mean it! Really! No kidding Iwouldn t lie to you You d be crazy not listening to this advice Never forget, DBAs and developers are the protectors of the organization s data You took this oath when you accepted the job

5 The golden bullet FASTER HARDWARE

6 Faster hardware You can throw faster hardware at a problem if you want but don't be surprised if it doesn't actually help much. True performance can only be found in the code and the design of the database. Let's stop and think about faster hardware to do the same thing Let's say the CPU speed and disk throughput is doubled. That would mean a 2 hour query might drop to 1 hour. Rewriting the old code could drop the query time to 3seconds.

7 Faster hardware More cores mean more queries can request massive numbers of locks simultaneously and the badly written queries need many locks that may cause performance to deteriorate under faster hardware. SQL Server spends more time waiting and less time working.

8 Faster hardware

9 Faster hardware

10 Faster hardware

11 Faster hardware

12 Faster hardware

13 Faster hardware

14 Faster hardware Query Index Parallellism Reads CPU Duration Old query No No 1,805, Old query No Yes 1,845, Old query Yes No 59, Old query Yes Yes 59, New query No No New query Yes No

15 Loops, cursors and triangular joins ROW BY AGONIZING ROW

16 Row By Agonizing Row Phrased by Jeff Moden Good friend and fellow SQL Server MVP from SQLServerCentral. Learn to recognize Triangular Joins They appear in the SELECT list as correlated subqueriesusually with a stand-alone inequality of some sort They can also appear in WHERE clauses with the same type of standalone inequality. Not all Triangular Joins are bad With some restraint and the right criteria, Triangular Joins can be used for some pretty remarkable things Make finite schedules Do high speed dupe checks But, you've really got to be careful. Improperly written Triangular Joins are worse than Cursors or While Loops and can bring a CPU and Disk System right to it's knees. Watch out for "Hidden RBAR"

17 Row By Agonizing Row Many folks think that set-based programming means one of two things It simply doesn't have a Cursor or a While Loop. It's all done in a single query. Both of those are very bad misconceptions as to what set based programming is Touch each row of data only once if you can and as few times as possible if you can't. A loop (cursor) Works row-by-agonizing-row. Overrides the natural abilities of the optimizer. Only operates on a single row instead of a set of rows. Most explicit loops are not set based programming and they just crush performance.

18 Row By Agonizing Row Cursor-based solution Set-based solution

19 Row By Agonizing Row SELECT a.rownum AS RowNum_A, b.rownum AS RowNum_B FROM TableA AS a, TableB AS b WHERE a.rownum <= b.rownum

20 Row By Agonizing Row Good examples from the Phil Factor Speed Phreak competitions Cursor 780 seconds (13 minutes). Set-based 0.3 seconds - 2,500 times faster! Cursor 2,400 seconds (40 minutes). Set-based 1.3 seconds 1,800 times faster! Cursor 4,000 4,500 seconds (70-75 minutes). Set-based 0.5 seconds 9,000 times faster! SQLCLR 0.4 seconds 11,000 times faster!

21 Row By Agonizing Row Kathi Kellenberger, former SQL Server MVP, provides in-depth descriptions and analyses of the different solutions here

22 The hidden performance crusher BAD INDEXING

23 Bad Indexing SELECT ent.entengagementid,thd.thdplaceofsale,count(*) FROM dbo.engagement ent INNER LOOP JOIN dbo.transactionhead thd ON thd.entengagementid = ent.entengagementid INNER JOIN dbo.engagementparameter epr ON epr.teptypeengagementparameterid = (SELECT teptypeengagementparameterid FROM TypeEngagementParameter WHERE tepcode = 'StorePeriodLen') AND DATEDIFF(MM, DATEADD(MM, -CONVERT(INT,eprParameterValue), GETDATE()), thd.thdtransactiondate) > 0 AND epr.tettypeengagementid = ent.tettypeengagementid INNER JOIN dbo.typetransactionhead tth ON tth.tthtypetransactionheadid = thd.tthtypetransactionheadid AND tth.tthcode IN ('Purchase', 'Return', 'Mixed') GROUP BY ent.entengagementid,thdplaceofsale

24 Bad Indexing

25 Bad Indexing SELECT ent.entengagementid, thd.thdplaceofsale, COUNT(*) FROM dbo.typeengagementparameter AS tep INNER JOIN dbo.engagementparameter AS epr ON epr.teptypeengagementparameterid = tep.teptypeengagementparameterid INNER JOIN dbo.engagement AS ent ON ent.tettypeengagementid = epr.tettypeengagementid INNER JOIN dbo.transactionhead AS thd ON thd.entengagementid = ent.entengagementid INNER JOIN dbo.typetransactionhead AS tth ON tth.tthtypetransactionheadid = thd.tthtypetransactionheadid AND tth.tthcode IN ('Purchase', 'Return', 'Mixed') WHERE thd.thdtransactiondate >= DATEADD(MONTH, DATEDIFF(MONTH, ' ', GETDATE()) - CONVERT(INT, epr.eprparametervalue), ' ') AND tep.tepcode = 'StorePeriodLen' GROUP BY ent.entengagementid, thdplaceofsale

26 Bad Indexing

27 Bad Indexing

28 Bad Indexing

29 O Index, Where Art Thou? INDEX MISUSE

30 Index misuse -- Query 1 SELECT * FROM dbo.testindexes WHERE YEAR(MyDate) = Query 2 SELECT * FROM dbo.testindexes WHERE MyDate >= ' ' AND MyDate < ' ' -- Query 3 SELECT * FROM dbo.testindexes WHERE CONVERT(CHAR(4), MyDate, 112) = '2005'

31 Index misuse

32 Index misuse

33 Index misuse

34 Index misuse

35 Index misuse Query Records Scan Count Logical Reads CPU Duration Query 1 1, Query 2 1, Query 3 1, Query 1 10, Query 2 10, Query 3 10, Query 1 100, Query 2 100, Query 3 100, Query 1 1,000, , Query 2 1,000, Query 3 1,000, , Query 1 10,000, ,679 3, Query 2 10,000, Query 3 10,000, ,679 10,

36 To batch or not to batch? TRIGGERS

37 Triggers Create TRIGGER [dbo].[fault_parked_update] ON [dbo].[detail] FOR INSERT, UPDATE AS INT datetime FROM inserted WHERE isdate(faultstart)=1 and isdate(faultend)=1 IS NOT NULL Begin = CASE WHEN ISDATE(@Park1Start)= 1 THEN Cast([ParkedDate1]+' '+[ParkedTime1] as datetime) ELSE CAST(' :00:00' as DateTime) END from detail Where callid = CASE WHEN ISDATE(@Park1End)= 1 THEN Cast([UnParkedDate1]+' '+[UnParkedTime1] as datetime) ELSE CAST(' :00:00' as DateTime) END from detail Where callid = datediff(ss,@park1start,@park1end)/60 = Cast([FaultStart]+' '+[FaultStartTime] as datetime) from detail Where callid = Cast([FaultEnd]+' '+[FaultEndTime] as datetime) from detail Where callid = datediff(ss,@faultstart,@faultend)/60 UPDATE CallLog set Park1 TotalParkedTime FaultMinusParked FaultTotal Where calllog.callid END

38 Triggers CREATE TRIGGER dbo.fault_parked_update ON dbo.detail FOR INSERT, UPDATE AS ;WITH ctevalid(callid, Park1, FaultTotal) AS ( SELECT CallID, CASE WHEN Park1End > Park1Start AND ISDATE(ParkedDate1) = 1 THEN DATEDIFF(SECOND, Park1Start, Park1End) / 60 ELSE 0 END AS Park1, DATEDIFF(SECOND, FaultStart, FaultEnd) / 60 AS FaultTotal FROM ( SELECT CallID, ParkedDate1, CAST(ParkedDate1 + ' ' + ParkedTime1 AS DATETIME) AS Park1Start, CAST(UnParkedDate1 + ' ' + UnParkedTime1 AS DATETIME) AS Park1End, CAST(FaultStart + ' ' + FaultStartTime AS DATETIME) AS FaultStart, CAST(FaultEnd + ' ' + FaultEndTime AS DATETIME) AS FaultEnd FROM inserted WHERE ISDATE(FaultStart) = 1 AND ISDATE(FaultEnd) = 1 AS d ) UPDATE cl SET cl.park1 = v.park1, cl.totalparkedtime = v.park1, cl.faultminusparked = v.faulttotal - v.park1, cl.faulttotal = v.faulttotal FROM dbo.calllog AS cl INNER JOIN ctevalid AS v ON v.callid = cl.callid

39 I didn t see that coming INDETERMINISTIC FUNCTIONS

40 Simple indeterministic function select top(10) case abs(checksum(newid()))%4 when 0 then 0 when 1 then 1 when 2 then 2 when 3 then 3 end from sys.objects CASE WHEN abs(checksum(newid())) % 4 = 0 THEN 0 ELSE WHEN abs(checksum(newid())) % 4 = 1 THEN 1 ELSE WHEN abs(checksum(newid())) % 4 = 2 THEN 2 ELSE WHEN abs(checksum(newid())) % 4 = 3 THEN 3 ELSE NULL END END END END

41 Advanced indeterministic function CASE WHEN datepart(month, dbo.fngetorderdate(salesorderid)) = 1 THEN 'Jan' ELSE CASE WHEN datepart(month, dbo.fngetorderdate(salesorderid)) = 2 THEN 'Feb' ELSE CASE WHEN datepart(month, dbo.fngetorderdate(salesorderid)) = 3 THEN 'Mar' ELSE CASE WHEN datepart(month, dbo.fngetorderdate(salesorderid)) = 4 THEN 'Apr' ELSE CASE WHEN datepart(month, dbo.fngetorderdate(salesorderid)) = 5 THEN 'May' ELSE CASE WHEN datepart(month, dbo.fngetorderdate(salesorderid)) = 6 THEN 'Jun' ELSE CASE WHEN datepart(month, dbo.fngetorderdate(salesorderid)) = 7 THEN 'Jul' ELSE CASE WHEN datepart(month, dbo.fngetorderdate(salesorderid)) = 8 THEN 'Aug' ELSE CASE WHEN datepart(month, dbo.fngetorderdate(salesorderid)) = 9 THEN 'Sept' ELSE CASE WHEN datepart(month, dbo.fngetorderdate(salesorderid)) = 10 THEN 'Oct' ELSE CASE WHEN datepart(month, dbo.fngetorderdate(salesorderid)) = 11 THEN 'Nov' ELSE CASE WHEN datepart(month, dbo.fngetorderdate(salesorderid)) = 12 THEN 'Dec' ELSE NULL END END END END END END END END END END END END

42 Want to know more? Married with children 6 year girl, 3 year girl and 1 year boy. One girl to be born on May 11. Live outside Helsingborg Blog at Homepage and contact peso@developerworkshop.net Co-founder of PASS Scania Now part of SQLUG Phil Factor Speed Phreak challenges 3 time winner Another presentation Execution Plan basics

AT&T Global Network Client for Windows Product Support Matrix January 29, 2015

AT&T Global Network Client for Windows Product Support Matrix January 29, 2015 AT&T Global Network Client for Windows Product Support Matrix January 29, 2015 Product Support Matrix Following is the Product Support Matrix for the AT&T Global Network Client. See the AT&T Global Network

More information

Analysis One Code Desc. Transaction Amount. Fiscal Period

Analysis One Code Desc. Transaction Amount. Fiscal Period Analysis One Code Desc Transaction Amount Fiscal Period 57.63 Oct-12 12.13 Oct-12-38.90 Oct-12-773.00 Oct-12-800.00 Oct-12-187.00 Oct-12-82.00 Oct-12-82.00 Oct-12-110.00 Oct-12-1115.25 Oct-12-71.00 Oct-12-41.00

More information

COMPARISON OF FIXED & VARIABLE RATES (25 YEARS) CHARTERED BANK ADMINISTERED INTEREST RATES - PRIME BUSINESS*

COMPARISON OF FIXED & VARIABLE RATES (25 YEARS) CHARTERED BANK ADMINISTERED INTEREST RATES - PRIME BUSINESS* COMPARISON OF FIXED & VARIABLE RATES (25 YEARS) 2 Fixed Rates Variable Rates FIXED RATES OF THE PAST 25 YEARS AVERAGE RESIDENTIAL MORTGAGE LENDING RATE - 5 YEAR* (Per cent) Year Jan Feb Mar Apr May Jun

More information

COMPARISON OF FIXED & VARIABLE RATES (25 YEARS) CHARTERED BANK ADMINISTERED INTEREST RATES - PRIME BUSINESS*

COMPARISON OF FIXED & VARIABLE RATES (25 YEARS) CHARTERED BANK ADMINISTERED INTEREST RATES - PRIME BUSINESS* COMPARISON OF FIXED & VARIABLE RATES (25 YEARS) 2 Fixed Rates Variable Rates FIXED RATES OF THE PAST 25 YEARS AVERAGE RESIDENTIAL MORTGAGE LENDING RATE - 5 YEAR* (Per cent) Year Jan Feb Mar Apr May Jun

More information

Case 2:08-cv-02463-ABC-E Document 1-4 Filed 04/15/2008 Page 1 of 138. Exhibit 8

Case 2:08-cv-02463-ABC-E Document 1-4 Filed 04/15/2008 Page 1 of 138. Exhibit 8 Case 2:08-cv-02463-ABC-E Document 1-4 Filed 04/15/2008 Page 1 of 138 Exhibit 8 Case 2:08-cv-02463-ABC-E Document 1-4 Filed 04/15/2008 Page 2 of 138 Domain Name: CELLULARVERISON.COM Updated Date: 12-dec-2007

More information

Enhanced Vessel Traffic Management System Booking Slots Available and Vessels Booked per Day From 12-JAN-2016 To 30-JUN-2017

Enhanced Vessel Traffic Management System Booking Slots Available and Vessels Booked per Day From 12-JAN-2016 To 30-JUN-2017 From -JAN- To -JUN- -JAN- VIRP Page Period Period Period -JAN- 8 -JAN- 8 9 -JAN- 8 8 -JAN- -JAN- -JAN- 8-JAN- 9-JAN- -JAN- -JAN- -JAN- -JAN- -JAN- -JAN- -JAN- -JAN- 8-JAN- 9-JAN- -JAN- -JAN- -FEB- : days

More information

Course 20461C: Querying Microsoft SQL Server Duration: 35 hours

Course 20461C: Querying Microsoft SQL Server Duration: 35 hours Course 20461C: Querying Microsoft SQL Server Duration: 35 hours About this Course This course is the foundation for all SQL Server-related disciplines; namely, Database Administration, Database Development

More information

Ashley Institute of Training Schedule of VET Tuition Fees 2015

Ashley Institute of Training Schedule of VET Tuition Fees 2015 Ashley Institute of Training Schedule of VET Fees Year of Study Group ID:DECE15G1 Total Course Fees $ 12,000 29-Aug- 17-Oct- 50 14-Sep- 0.167 blended various $2,000 CHC02 Best practice 24-Oct- 12-Dec-

More information

Introducing Microsoft SQL Server 2012 Getting Started with SQL Server Management Studio

Introducing Microsoft SQL Server 2012 Getting Started with SQL Server Management Studio Querying Microsoft SQL Server 2012 Microsoft Course 10774 This 5-day instructor led course provides students with the technical skills required to write basic Transact-SQL queries for Microsoft SQL Server

More information

MS SQL Performance (Tuning) Best Practices:

MS SQL Performance (Tuning) Best Practices: MS SQL Performance (Tuning) Best Practices: 1. Don t share the SQL server hardware with other services If other workloads are running on the same server where SQL Server is running, memory and other hardware

More information

Computing & Telecommunications Services Monthly Report March 2015

Computing & Telecommunications Services Monthly Report March 2015 March 215 Monthly Report Computing & Telecommunications Services Monthly Report March 215 CaTS Help Desk (937) 775-4827 1-888-775-4827 25 Library Annex helpdesk@wright.edu www.wright.edu/cats/ Last Modified

More information

Querying Microsoft SQL Server 2012

Querying Microsoft SQL Server 2012 Querying Microsoft SQL Server 2012 Duration: 5 Days Course Code: M10774 Overview: Deze cursus wordt vanaf 1 juli vervangen door cursus M20461 Querying Microsoft SQL Server. This course will be replaced

More information

About Me: Brent Ozar. Perfmon and Profiler 101

About Me: Brent Ozar. Perfmon and Profiler 101 Perfmon and Profiler 101 2008 Quest Software, Inc. ALL RIGHTS RESERVED. About Me: Brent Ozar SQL Server Expert for Quest Software Former SQL DBA Managed >80tb SAN, VMware Dot-com-crash experience Specializes

More information

SQL Server Database Coding Standards and Guidelines

SQL Server Database Coding Standards and Guidelines SQL Server Database Coding Standards and Guidelines http://www.sqlauthority.com Naming Tables: Stored Procs: Triggers: Indexes: Primary Keys: Foreign Keys: Defaults: Columns: General Rules: Rules: Pascal

More information

Querying Microsoft SQL Server 2012

Querying Microsoft SQL Server 2012 Course 10774A: Querying Microsoft SQL Server 2012 Length: 5 Days Language(s): English Audience(s): IT Professionals Level: 200 Technology: Microsoft SQL Server 2012 Type: Course Delivery Method: Instructor-led

More information

Course 10774A: Querying Microsoft SQL Server 2012

Course 10774A: Querying Microsoft SQL Server 2012 Course 10774A: Querying Microsoft SQL Server 2012 About this Course This 5-day instructor led course provides students with the technical skills required to write basic Transact-SQL queries for Microsoft

More information

Accident & Emergency Department Clinical Quality Indicators

Accident & Emergency Department Clinical Quality Indicators Overview This dashboard presents our performance in the new A&E clinical quality indicators. These 8 indicators will allow you to see the quality of care being delivered by our A&E department, and reflect

More information

Course 10774A: Querying Microsoft SQL Server 2012 Length: 5 Days Published: May 25, 2012 Language(s): English Audience(s): IT Professionals

Course 10774A: Querying Microsoft SQL Server 2012 Length: 5 Days Published: May 25, 2012 Language(s): English Audience(s): IT Professionals Course 10774A: Querying Microsoft SQL Server 2012 Length: 5 Days Published: May 25, 2012 Language(s): English Audience(s): IT Professionals Overview About this Course Level: 200 Technology: Microsoft SQL

More information

Querying Microsoft SQL Server

Querying Microsoft SQL Server Course 20461C: Querying Microsoft SQL Server Module 1: Introduction to Microsoft SQL Server 2014 This module introduces the SQL Server platform and major tools. It discusses editions, versions, tools used

More information

Execution Plans: The Secret to Query Tuning Success. MagicPASS January 2015

Execution Plans: The Secret to Query Tuning Success. MagicPASS January 2015 Execution Plans: The Secret to Query Tuning Success MagicPASS January 2015 Jes Schultz Borland plan? The following steps are being taken Parsing Compiling Optimizing In the optimizing phase An execution

More information

Analyzing & Optimizing T-SQL Query Performance Part1: using SET and DBCC. Kevin Kline Senior Product Architect for SQL Server Quest Software

Analyzing & Optimizing T-SQL Query Performance Part1: using SET and DBCC. Kevin Kline Senior Product Architect for SQL Server Quest Software Analyzing & Optimizing T-SQL Query Performance Part1: using SET and DBCC Kevin Kline Senior Product Architect for SQL Server Quest Software AGENDA Audience Poll Presentation (submit questions to the e-seminar

More information

Whitepaper: performance of SqlBulkCopy

Whitepaper: performance of SqlBulkCopy We SOLVE COMPLEX PROBLEMS of DATA MODELING and DEVELOP TOOLS and solutions to let business perform best through data analysis Whitepaper: performance of SqlBulkCopy This whitepaper provides an analysis

More information

Response Time Analysis

Response Time Analysis Response Time Analysis A Pragmatic Approach for Tuning and Optimizing SQL Server Performance By Dean Richards Confio Software 4772 Walnut Street, Suite 100 Boulder, CO 80301 866.CONFIO.1 www.confio.com

More information

Course ID#: 1401-801-14-W 35 Hrs. Course Content

Course ID#: 1401-801-14-W 35 Hrs. Course Content Course Content Course Description: This 5-day instructor led course provides students with the technical skills required to write basic Transact- SQL queries for Microsoft SQL Server 2014. This course

More information

Querying Microsoft SQL Server 20461C; 5 days

Querying Microsoft SQL Server 20461C; 5 days Lincoln Land Community College Capital City Training Center 130 West Mason Springfield, IL 62702 217-782-7436 www.llcc.edu/cctc Querying Microsoft SQL Server 20461C; 5 days Course Description This 5-day

More information

Best Practices in SQL Programming. Madhivanan

Best Practices in SQL Programming. Madhivanan Best Practices in SQL Programming Madhivanan Do not use irrelevant datatype VARCHAR instead of DATETIME CHAR(N) instead of VARCHAR(N) etc Do not use VARCHAR instead of DATETIME create table #employee_master(emp_id

More information

Bookkeeping & Computerised Accounting September 2015 - December 2016 Southampton

Bookkeeping & Computerised Accounting September 2015 - December 2016 Southampton Bookkeeping & Computerised Accounting September 2015 December 2016 Southampton Last Updated 01/12/2015 The following pages detail the courses that our Birmingham ce AAT Information Your next steps: 3.

More information

Saskatoon Business College Corporate Training Centre 244-6340 corporate@sbccollege.ca www.sbccollege.ca/corporate

Saskatoon Business College Corporate Training Centre 244-6340 corporate@sbccollege.ca www.sbccollege.ca/corporate Microsoft Certified Instructor led: Querying Microsoft SQL Server (Course 20461C) Date: October 19 23, 2015 Course Length: 5 day (8:30am 4:30pm) Course Cost: $2400 + GST (Books included) About this Course

More information

Module 1: Getting Started with Databases and Transact-SQL in SQL Server 2008

Module 1: Getting Started with Databases and Transact-SQL in SQL Server 2008 Course 2778A: Writing Queries Using Microsoft SQL Server 2008 Transact-SQL About this Course This 3-day instructor led course provides students with the technical skills required to write basic Transact-

More information

Optimizing Performance. Training Division New Delhi

Optimizing Performance. Training Division New Delhi Optimizing Performance Training Division New Delhi Performance tuning : Goals Minimize the response time for each query Maximize the throughput of the entire database server by minimizing network traffic,

More information

MOC 20461 QUERYING MICROSOFT SQL SERVER

MOC 20461 QUERYING MICROSOFT SQL SERVER ONE STEP AHEAD. MOC 20461 QUERYING MICROSOFT SQL SERVER Length: 5 days Level: 300 Technology: Microsoft SQL Server Delivery Method: Instructor-led (classroom) COURSE OUTLINE Module 1: Introduction to Microsoft

More information

Writing Queries Using Microsoft SQL Server 2008 Transact-SQL

Writing Queries Using Microsoft SQL Server 2008 Transact-SQL Course 2778A: Writing Queries Using Microsoft SQL Server 2008 Transact-SQL Length: 3 Days Language(s): English Audience(s): IT Professionals Level: 200 Technology: Microsoft SQL Server 2008 Type: Course

More information

Best Practices Every SQL Server DBA Must Know

Best Practices Every SQL Server DBA Must Know The World s Largest Community of SQL Server Professionals Best Practices Every SQL Server DBA Must Know Brad M McGehee SQL Server MVP Director of DBA Education Red Gate Software www.bradmcgehee.com My

More information

Based on Chapter 11, Excel 2007 Dashboards & Reports (Alexander) and Create Dynamic Charts in Microsoft Office Excel 2007 and Beyond (Scheck)

Based on Chapter 11, Excel 2007 Dashboards & Reports (Alexander) and Create Dynamic Charts in Microsoft Office Excel 2007 and Beyond (Scheck) Reporting Results: Part 2 Based on Chapter 11, Excel 2007 Dashboards & Reports (Alexander) and Create Dynamic Charts in Microsoft Office Excel 2007 and Beyond (Scheck) Bullet Graph (pp. 200 205, Alexander,

More information

Comparing share-price performance of a stock

Comparing share-price performance of a stock Comparing share-price performance of a stock A How-to write-up by Pamela Peterson Drake Analysis of relative stock performance is challenging because stocks trade at different prices, indices are calculated

More information

DB2 for z/os: Utilities and Application Development

DB2 for z/os: Utilities and Application Development TRAINING & CONSULTING DB2 for z/os: Utilities and Application ABIS Training & Consulting www.abis.be training@abis.be 2005, 2006 Document number: 0092_03b.fm 11 January 2006 Address comments concerning

More information

Enhancing SQL Server Performance

Enhancing SQL Server Performance Enhancing SQL Server Performance Bradley Ball, Jason Strate and Roger Wolter In the ever-evolving data world, improving database performance is a constant challenge for administrators. End user satisfaction

More information

CENTERPOINT ENERGY TEXARKANA SERVICE AREA GAS SUPPLY RATE (GSR) JULY 2015. Small Commercial Service (SCS-1) GSR

CENTERPOINT ENERGY TEXARKANA SERVICE AREA GAS SUPPLY RATE (GSR) JULY 2015. Small Commercial Service (SCS-1) GSR JULY 2015 Area (RS-1) GSR GSR (LCS-1) Texarkana Incorporated July-15 $0.50690/Ccf $0.45450/Ccf $0.00000/Ccf $2.85090/MMBtu $17.52070/MMBtu Texarkana Unincorporated July-15 $0.56370/Ccf $0.26110/Ccf $1.66900/Ccf

More information

Bookkeeping & Computerised Accounting September 2015 - December 2016 Bristol

Bookkeeping & Computerised Accounting September 2015 - December 2016 Bristol Bookkeeping & Computerised Accounting September 2015 December 2016 Bristol Last Updated 04/01/2016 AAT Information Your next steps: 1. Read the information below. 3. Contact us if you have any questions:

More information

Querying Microsoft SQL Server Course M20461 5 Day(s) 30:00 Hours

Querying Microsoft SQL Server Course M20461 5 Day(s) 30:00 Hours Área de formação Plataforma e Tecnologias de Informação Querying Microsoft SQL Introduction This 5-day instructor led course provides students with the technical skills required to write basic Transact-SQL

More information

Consulting. Personal Attention, Expert Assistance

Consulting. Personal Attention, Expert Assistance Consulting Personal Attention, Expert Assistance 1 Writing Better SQL Making your scripts more: Readable, Portable, & Easily Changed 2006 Alpha-G Consulting, LLC All rights reserved. 2 Before Spending

More information

2015-16 BCOE Payroll Calendar. Monday Tuesday Wednesday Thursday Friday Jun 29 30 Jul 1 2 3. Full Force Calc

2015-16 BCOE Payroll Calendar. Monday Tuesday Wednesday Thursday Friday Jun 29 30 Jul 1 2 3. Full Force Calc July 2015 CM Period 1501075 July 2015 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 August 2015 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

More information

Writing Queries Using Microsoft SQL Server 2008 Transact-SQL

Writing Queries Using Microsoft SQL Server 2008 Transact-SQL Lincoln Land Community College Capital City Training Center 130 West Mason Springfield, IL 62702 217-782-7436 www.llcc.edu/cctc Writing Queries Using Microsoft SQL Server 2008 Transact-SQL Course 2778-08;

More information

Bookkeeping & Computerised Accounting September 2015 - December 2016 London Hammersmith

Bookkeeping & Computerised Accounting September 2015 - December 2016 London Hammersmith Bookkeeping & Computerised September 2015 December 2016 London Hammersmith Last Updated 01/12/2015 The following pages detail the courses that our Birmingham ce AAT Information Your next steps: The following

More information

A Performance Engineering Story

A Performance Engineering Story CMG'09 A Performance Engineering Story with Database Monitoring Alexander Podelko apodelko@yahoo.com 1 Abstract: This presentation describes a performance engineering project in chronological order. The

More information

MOC 20461C: Querying Microsoft SQL Server. Course Overview

MOC 20461C: Querying Microsoft SQL Server. Course Overview MOC 20461C: Querying Microsoft SQL Server Course Overview This course provides students with the knowledge and skills to query Microsoft SQL Server. Students will learn about T-SQL querying, SQL Server

More information

Oracle Database Security Myths

Oracle Database Security Myths Oracle Database Security Myths December 13, 2012 Stephen Kost Chief Technology Officer Integrigy Corporation Phil Reimann Director of Business Development Integrigy Corporation About Integrigy ERP Applications

More information

In this session, we use the table ZZTELE with approx. 115,000 records for the examples. The primary key is defined on the columns NAME,VORNAME,STR

In this session, we use the table ZZTELE with approx. 115,000 records for the examples. The primary key is defined on the columns NAME,VORNAME,STR 1 2 2 3 In this session, we use the table ZZTELE with approx. 115,000 records for the examples. The primary key is defined on the columns NAME,VORNAME,STR The uniqueness of the primary key ensures that

More information

Alexandria Overview. Sept 4, 2015

Alexandria Overview. Sept 4, 2015 Alexandria Overview Sept 4, 2015 Alexandria 1U System Block Diagram SAS Interface Board Zoneboard Zoneboard I2C UART SAS to SATA I2C 12V AC Power Supply Power 60w Supply Seagate Confidential Alexandria

More information

SQL Server Query Tuning

SQL Server Query Tuning SQL Server Query Tuning A 12-Step Program By Thomas LaRock, Technical Evangelist and Head Geek Confio Software 4772 Walnut Street, Suite 100 Boulder, CO 80301 www.confio.com Introduction Query tuning is

More information

Proposal to Reduce Opening Hours at the Revenues & Benefits Coventry Call Centre

Proposal to Reduce Opening Hours at the Revenues & Benefits Coventry Call Centre Proposal to Reduce Opening Hours at the Revenues & Benefits Coventry Call Centre Proposal To change the opening hours of the Revenues & Benefits Call Centre to 9am until 5pm Monday to Friday with effect

More information

Live Event Count Issue

Live Event Count Issue Appendix 3 Live Event Document Version 1.0 Table of Contents 1 Introduction and High Level Summary... 3 2 Details of the Issue... 4 3 Timeline of Technical Activities... 6 4 Investigation on Count Day

More information

Users are Complaining that the System is Slow What Should I Do Now? Part 1

Users are Complaining that the System is Slow What Should I Do Now? Part 1 Users are Complaining that the System is Slow What Should I Do Now? Part 1 Jeffry A. Schwartz July 15, 2014 SQLRx Seminar jeffrys@isi85.com Overview Most of you have had to deal with vague user complaints

More information

PERFORMANCE TIPS FOR BATCH JOBS

PERFORMANCE TIPS FOR BATCH JOBS PERFORMANCE TIPS FOR BATCH JOBS Here is a list of effective ways to improve performance of batch jobs. This is probably the most common performance lapse I see. The point is to avoid looping through millions

More information

Sage ERP MAS 90, 200, 200 SQL, and Sage ERP MAS 500. Supported Versions

Sage ERP MAS 90, 200, 200 SQL, and Sage ERP MAS 500. Supported Versions Sage ERP MAS 90, 200, 200 SQL, and Sage ERP MAS 500 Supported Versions Current Document: 2012... Page 1 Earlier Documents: 2011... Page 2 2010... Page 3 2009... Page 4 2008... Page 5 Sage ERP MAS 90, 200,

More information

Custom Support Options for Microsoft Customers By Paul DeGroot Principal Consultant Pica Communications and Senior Consultant Software Licensing

Custom Support Options for Microsoft Customers By Paul DeGroot Principal Consultant Pica Communications and Senior Consultant Software Licensing Custom Support Options for Microsoft Customers By Paul DeGroot Principal Consultant Pica Communications and Senior Consultant Software Licensing Advisors About Pica Communications & Software Licensing

More information

Detailed guidance for employers

Detailed guidance for employers April 2015 3 Detailed guidance for employers Appendix A: Pay reference periods This document accompanies: Detailed guidance no. 3 Assessing the workforce Pay reference period calendars where the definition

More information

Response Time Analysis

Response Time Analysis Response Time Analysis A Pragmatic Approach for Tuning and Optimizing Database Performance By Dean Richards Confio Software 4772 Walnut Street, Suite 100 Boulder, CO 80301 866.CONFIO.1 www.confio.com Introduction

More information

Response Time Analysis

Response Time Analysis Response Time Analysis A Pragmatic Approach for Tuning and Optimizing Oracle Database Performance By Dean Richards Confio Software, a member of the SolarWinds family 4772 Walnut Street, Suite 100 Boulder,

More information

CAFIS REPORT 2015.10

CAFIS REPORT 2015.10 CAFIS REPORT 2015.10 INDEX Message CAFIS Inbound 03-06 07-08 CAFIS Arch 09-10 CAFIS Brain 11-12 CAFIS Global 13-14 What We Do 15-16 About CAFIS 17-18 Services for Member Stores 19-34 Services for Card

More information

Creating Database Tables in Microsoft SQL Server

Creating Database Tables in Microsoft SQL Server Creating Database Tables in Microsoft SQL Server Microsoft SQL Server is a relational database server that stores and retrieves data for multi-user network-based applications. SQL Server databases are

More information

Performance Counters. Microsoft SQL. Technical Data Sheet. Overview:

Performance Counters. Microsoft SQL. Technical Data Sheet. Overview: Performance Counters Technical Data Sheet Microsoft SQL Overview: Key Features and Benefits: Key Definitions: Performance counters are used by the Operations Management Architecture (OMA) to collect data

More information

SQL Query Evaluation. Winter 2006-2007 Lecture 23

SQL Query Evaluation. Winter 2006-2007 Lecture 23 SQL Query Evaluation Winter 2006-2007 Lecture 23 SQL Query Processing Databases go through three steps: Parse SQL into an execution plan Optimize the execution plan Evaluate the optimized plan Execution

More information

DATA QUALITY VISUALIZATION TOOLS ON ARCHIVED HISTORICAL FREEWAY TRAFFIC DATA

DATA QUALITY VISUALIZATION TOOLS ON ARCHIVED HISTORICAL FREEWAY TRAFFIC DATA DATA QUALITY VISUALIZATION TOOLS ON ARCHIVED HISTORICAL FREEWAY TRAFFIC DATA Jothan P. Samuelson, Maricopa Association of Governments TRB NATMEC Conference June 6, 2012 2012, All Rights Reserved 1 Project

More information

Diskeeper Can Boost Your SQL Server's Performance

Diskeeper Can Boost Your SQL Server's Performance Diskeeper Can Boost Your SQL Server's Performance Software Spotlight by Brad M. McGehee One of the biggest hardware bottlenecks of any SQL Server is disk I/O. And anything that we, as DBAs, can do to reduce

More information

Query Performance Tuning: Start to Finish. Grant Fritchey

Query Performance Tuning: Start to Finish. Grant Fritchey Query Performance Tuning: Start to Finish Grant Fritchey Who? Product Evangelist for Red Gate Software Microsoft SQL Server MVP PASS Chapter President Author: SQL Server Execution Plans SQL Server 2008

More information

Top 25+ DB2 SQL Tuning Tips for Developers. Presented by Tony Andrews, Themis Inc. tandrews@themisinc.com

Top 25+ DB2 SQL Tuning Tips for Developers. Presented by Tony Andrews, Themis Inc. tandrews@themisinc.com Top 25+ DB2 SQL Tuning Tips for Developers Presented by Tony Andrews, Themis Inc. tandrews@themisinc.com Objectives By the end of this presentation, developers should be able to: Understand what SQL Optimization

More information

Microsoft SQL Server OLTP Best Practice

Microsoft SQL Server OLTP Best Practice Microsoft SQL Server OLTP Best Practice The document Introduction to Transactional (OLTP) Load Testing for all Databases provides a general overview on the HammerDB OLTP workload and the document Microsoft

More information

Dynamics NAV/SQL Server Configuration Recommendations

Dynamics NAV/SQL Server Configuration Recommendations Dynamics NAV/SQL Server Configuration Recommendations This document describes SQL Server configuration recommendations that were gathered from field experience with Microsoft Dynamics NAV and SQL Server.

More information

Beyond SEO: What to Do With Your Website Visitors

Beyond SEO: What to Do With Your Website Visitors Beyond SEO What To Do With Your Website Visitors Ron Stauffer Beyond SEO What To Do With Your Website Visitors Ron Stauffer Infront Webworks The Web in 1994 www.apple.com The Web in 1994 www.amazon.com

More information

A!Team!Cymru!EIS!Report:!Growing!Exploitation!of!Small! OfCice!Routers!Creating!Serious!Risks!

A!Team!Cymru!EIS!Report:!Growing!Exploitation!of!Small! OfCice!Routers!Creating!Serious!Risks! ATeamCymruEISReport:GrowingExploitationofSmall OfCiceRoutersCreatingSeriousRisks PoweredbyTeamCymru sthreatintelligencegroup Page 1of 14www.team-cymru.com www.team-cymru.com Threat'Intelligence'Group EXECUTIVE

More information

Resource Management Spreadsheet Capabilities. Stuart Dixon Resource Manager

Resource Management Spreadsheet Capabilities. Stuart Dixon Resource Manager Resource Management Spreadsheet Capabilities Stuart Dixon Resource Manager Purpose Single view of resource data Shows rolling demand vs supply for 14 months, 2 months back, current month, and 11 forward

More information

CHILDREN AND YOUNG PEOPLE'S PLAN: PLANNING AND PERFORMANCE MANAGEMENT STRATEGY

CHILDREN AND YOUNG PEOPLE'S PLAN: PLANNING AND PERFORMANCE MANAGEMENT STRATEGY CHILDREN AND YOUNG PEOPLE'S PARTNERSHIP BOARD CHILDREN AND YOUNG PEOPLE'S PLAN: PLANNING AND PERFORMANCE MANAGEMENT STRATEGY 1 Introduction 1.1 The purposes of this strategy are to set out: i) the arrangements

More information

DBMS / Business Intelligence, SQL Server

DBMS / Business Intelligence, SQL Server DBMS / Business Intelligence, SQL Server Orsys, with 30 years of experience, is providing high quality, independant State of the Art seminars and hands-on courses corresponding to the needs of IT professionals.

More information

Marsha Ingram, Head of Corporate Affairs

Marsha Ingram, Head of Corporate Affairs Date of Board meeting: 26 th November 2008 Subject: Annual Cycle of Board Business Trust Board lead: Marsha Ingram, Head of Corporate Affairs Presented by: Marsha Ingram, Head of Corporate Affairs Aim

More information

Improving SQL Server Performance

Improving SQL Server Performance Informatica Economică vol. 14, no. 2/2010 55 Improving SQL Server Performance Nicolae MERCIOIU 1, Victor VLADUCU 2 1 Prosecutor's Office attached to the High Court of Cassation and Justice 2 Prosecutor's

More information

Big Data, Fast Processing Speeds Kevin McGowan SAS Solutions on Demand, Cary NC

Big Data, Fast Processing Speeds Kevin McGowan SAS Solutions on Demand, Cary NC Big Data, Fast Processing Speeds Kevin McGowan SAS Solutions on Demand, Cary NC ABSTRACT As data sets continue to grow, it is important for programs to be written very efficiently to make sure no time

More information

Websense SQL Queries. David Buyer June 2009 Be281@bfn.org

Websense SQL Queries. David Buyer June 2009 Be281@bfn.org Websense SQL Queries David Buyer June 2009 Be281@bfn.org Introduction The SQL queries that are listed here I have been using for a number of years now. I use them almost exclusively as an alternative to

More information

Data Compression in Blackbaud CRM Databases

Data Compression in Blackbaud CRM Databases Data Compression in Blackbaud CRM Databases Len Wyatt Enterprise Performance Team Executive Summary... 1 Compression in SQL Server... 2 Perform Compression in Blackbaud CRM Databases... 3 Initial Compression...

More information

Business Name. Table of Contents. Entrepreneur(s) name: Course: LCA VPG Enterprise 1. Date: 1 st May 2009. Business Plan / Enterprise Task Report

Business Name. Table of Contents. Entrepreneur(s) name: Course: LCA VPG Enterprise 1. Date: 1 st May 2009. Business Plan / Enterprise Task Report Business Name Company Slogan/Statement Entrepreneur(s) name: Course: LCA VPG Enterprise 1 Business Plan / Enterprise Task Report Date: 1 st May 2009 Table of Contents Page Number 3. Personal Profile 4.

More information

The Sins of SQL Programming that send the DB to Upgrade Purgatory Abel Macias. 1 Copyright 2011, Oracle and/or its affiliates. All rights reserved.

The Sins of SQL Programming that send the DB to Upgrade Purgatory Abel Macias. 1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. The Sins of SQL Programming that send the DB to Upgrade Purgatory Abel Macias 1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. Who is Abel Macias? 1994 - Joined Oracle Support 2000

More information

Human Resources Management System Pay Entry Calendar

Human Resources Management System Pay Entry Calendar Human Resources Management System Pay Entry Calendar http://www1.umn.edu/ohr/payroll/calendars/index.html Important Information The system is unavailable for entry, due to maintenance, during the following

More information

OPTIMIZING QUERIES IN SQL SERVER 2008

OPTIMIZING QUERIES IN SQL SERVER 2008 Scientific Bulletin Economic Sciences, Vol. 9 (15) - Information technology - OPTIMIZING QUERIES IN SQL SERVER 2008 Professor Ph.D. Ion LUNGU 1, Nicolae MERCIOIU 2, Victor VLĂDUCU 3 1 Academy of Economic

More information

SAP HANA PLATFORM Top Ten Questions for Choosing In-Memory Databases. Start Here

SAP HANA PLATFORM Top Ten Questions for Choosing In-Memory Databases. Start Here PLATFORM Top Ten Questions for Choosing In-Memory Databases Start Here PLATFORM Top Ten Questions for Choosing In-Memory Databases. Are my applications accelerated without manual intervention and tuning?.

More information

DCF - CJTS WC Claim Count ACCT DCF CJTS - Restraints InjuryLocation (All)

DCF - CJTS WC Claim Count ACCT DCF CJTS - Restraints InjuryLocation (All) - CJTS WC Claim Count ACCT CJTS - Restraints InjuryLocation (All) Month Occur Mo Txt Loc Descr 2011 2012 2013 2014 2015 Grand Total 1 Jul CJTS Custody 8 12 5 8 11 44 2 CJTS Girls Unit 4 4 Jul Total 9 12

More information

SQL Server 200x Optimizing Stored Procedure Performance

SQL Server 200x Optimizing Stored Procedure Performance SQL Server 200x Optimizing Stored Procedure Performance Kimberly L. Tripp SQLskills.com Email: Kimberly@SQLskills.com Blog: http://www.sqlskills.com/blogs/kimberly http://www.sqlskills.com Speaker Kimberly

More information

North America Applications Sales Consulting Leadership Challenge Program - Virtually

North America Applications Sales Consulting Leadership Challenge Program - Virtually North America Applications Sales Consulting Leadership Challenge Program - Virtually Lee Paulino, Group Vice President John Schmeisser, Senior Director Agenda Why Launch the Program

More information

AV-005: Administering and Implementing a Data Warehouse with SQL Server 2014

AV-005: Administering and Implementing a Data Warehouse with SQL Server 2014 AV-005: Administering and Implementing a Data Warehouse with SQL Server 2014 Career Details Duration 105 hours Prerequisites This career requires that you meet the following prerequisites: Working knowledge

More information

Business Intelligence. 11. SSIS, ETL January 2014.

Business Intelligence. 11. SSIS, ETL January 2014. Business Intelligence 11. SSIS, ETL January 2014. SQL Server Integration Services Poslovna inteligencija SQL Server Integration Services New project Integra on Services Project Data Sources new data source

More information

UBGP008: Maximizing SQL Server Performance with Microsoft Dynamics GP. John Lowther

UBGP008: Maximizing SQL Server Performance with Microsoft Dynamics GP. John Lowther UBGP008: Maximizing SQL Server Performance with Microsoft Dynamics GP John Lowther John Lowther Chief Data Architect, Sta-Home Health Agency Owner of Lowther Software Microsoft Dynamics GP Most Valuable

More information

SQL Server. 2012 for developers. murach's TRAINING & REFERENCE. Bryan Syverson. Mike Murach & Associates, Inc. Joel Murach

SQL Server. 2012 for developers. murach's TRAINING & REFERENCE. Bryan Syverson. Mike Murach & Associates, Inc. Joel Murach TRAINING & REFERENCE murach's SQL Server 2012 for developers Bryan Syverson Joel Murach Mike Murach & Associates, Inc. 4340 N. Knoll Ave. Fresno, CA 93722 www.murach.com murachbooks@murach.com Expanded

More information

USING FILERELICATIONPRO TO REPLICATE SQL SERVER

USING FILERELICATIONPRO TO REPLICATE SQL SERVER USING FILERELICATIONPRO TO REPLICATE SQL SERVER Abstract FileReplicationPro (FRP) can be used to backup your SQL Server databases. The replication procedure is not as straight forward as replicating other

More information

Managing Users and Identity Stores

Managing Users and Identity Stores CHAPTER 8 Overview ACS manages your network devices and other ACS clients by using the ACS network resource repositories and identity stores. When a host connects to the network through ACS requesting

More information

Persistent Stored Modules (Stored Procedures) : PSM

Persistent Stored Modules (Stored Procedures) : PSM Persistent Stored Modules (Stored Procedures) : PSM Stored Procedures What is stored procedure? SQL allows you to define procedures and functions and store them in the database server Executed by the database

More information

Triggers & Packages. {INSERT [OR] UPDATE [OR] DELETE}: This specifies the DML operation.

Triggers & Packages. {INSERT [OR] UPDATE [OR] DELETE}: This specifies the DML operation. Triggers & Packages An SQL trigger is a mechanism that automatically executes a specified PL/SQL block (referred to as the triggered action) when a triggering event occurs on the table. The triggering

More information

Migrate Topaz databases from One Server to Another

Migrate Topaz databases from One Server to Another Title Migrate Topaz databases from One Server to Another Author: Olivier Lauret Date: November 2004 Modified: Category: Topaz/BAC Version: Topaz 4.5.2, BAC 5.0 and BAC 5.1 Migrate Topaz databases from

More information

Performance rule violations usually result in increased CPU or I/O, time to fix the mistake, and ultimately, a cost to the business unit.

Performance rule violations usually result in increased CPU or I/O, time to fix the mistake, and ultimately, a cost to the business unit. Is your database application experiencing poor response time, scalability problems, and too many deadlocks or poor application performance? One or a combination of zparms, database design and application

More information

Querying Microsoft SQL Server 2012. Querying Microsoft SQL Server 2014 20461D. Course 10774A: Course Det ails. Co urse Outline

Querying Microsoft SQL Server 2012. Querying Microsoft SQL Server 2014 20461D. Course 10774A: Course Det ails. Co urse Outline Course 10774A: Querying Microsoft SQL Server 2012 20461D Querying Microsoft SQL Server 2014 Course Det ails Co urse Outline M o d ule 1: Intr o d uctio n to M icro so ft SQL Ser ver 2012 This module introduces

More information

Supervisor Instructions for Approving Web Time Entry

Supervisor Instructions for Approving Web Time Entry Supervisor Instructions for Approving Web Time Entry Time Approval Deadlines by Category Local 2110 Members members submit time by NOON on Monday of the pay week. Time should be approved no later than

More information