Designing and Developing your Database for Application Availability

Size: px
Start display at page:

Download "Designing and Developing your Database for Application Availability"

Transcription

1 Designing and Developing your Database for Application Availability Presented to the Melbourne CBD SQL PASS Chapter. Saxons - Level 8, 500 Collins Street. Melbourne, Australia 12:30 14:00, July 26 th 2010 Charley Hanania, QS2 AG B.Sc (Computing), MCP, MCDBA, MCITP, MCTS, MCT, Microsoft MVP: SQL Server Senior Database Specialist 1

2 My Background Now: Microsoft MVP: SQL Server Database Consultant (again, and very happy) at QS2 AG Formerly: Production Product Owner of MS SQL Server Platform at UBS Investment Bank Technical Team Lead ITIL v3 Certified SQL Server Certified since 1998 On SQL Server since 1995 Version 4 on OS/2 IT Professional since 1992 PASS Chapter Leader Switzerland Regional Mentor Europe European PASS Conference Lead Event Speaker 2

3 Contact Info Website: <- Slides here Twitter: Blog: Linked-in: 3

4 Agenda General Barriers to Application Availability Standard High Availability Methodology General Standard - Clustering One up on the Standard Database Mirroring Decreasing component start-up time Instant File Initialisation Partitioning your Database Infrastructure Eureka! Partitioning for Availability (PfA) Basic PfA Methodology Code Samples Questions 4

5 General Barriers to Availability Environmental Complexity Simplistic Network Topology View: Slightly more realistic view: And that s just scratching the surface of the Peripherals! Think about the layered complexity of the supporting software and drivers! 6

6 Standard HA Methodology Keep it up for as long as possible. Increase redundancy Decrease Single Points of Failure Bring it back as quickly as possible Decrease the dependency sequence Decrease component start-up time 7

7 General Standard - Clustering Keep it up for as long as possible. Increase redundancy Additional Servers waiting in readiness Increased redundancy = increased cost Increased redundancy = decreased utilisation Decrease Single Points of Failure Virtual IP Addresses Virtual Network Names Additional Network Cards etc Storage Bring it back as quickly as possible Decrease the dependency sequence Server is Started SQL Instance is an exclusive Cluster Resource Decrease component start-up time Instant File Initialisation App Database isn t useable until Primary Data File is opened and recovered Standby Primary 8

8 Database Mirroring We could discuss the architecture, benefits and uses of DB Mirroring, but I m told you re mainly architects and developers, and the doors here aren t locked If you d like to discuss DB Mirroring, we can chat after the session 9

9 Decreasing Component Startup Time INSTANT FILE INITIALISATION (Another DBA point, but one that is Golden and not to be missed!) Data and log files are first initialized by being filled and with zeros when created or restored. When SQL Server Starts, the tempdb database is recreated. Application databases do not come online until tempdb has. If large, then startup times can be quite long! Action: Ensure that instant file initialisation is set (Windows: SE_MANAGE_VOLUME_NAME right) The group that the SQL Server Service Account is in needs to be added to the Perform Volume Maintenance Tasks security policy, in the Local Security Policy Tool. I ve seen this reduce SQL Server Startup from 8 minutes to 1 second (max) 10

10 Decreasing Component Startup Time PARTITIONING DATABASE COMPONENTS Msdn lists the following (summarised) Hardware Partitioning Multiprocessors that enable multiple threads of operations. RAID (redundant array of independent disks) devices A table striped across multiple drives can typically be scanned faster than the same table stored on a single drive. Horizontal Partitioning Divide tables into multiple tables containing the same number of columns, but fewer rows. Partitioning data horizontally based on age and use is common. Vertical Partitioning Divide tables into multiple tables containing fewer columns through normalization and row splitting. 11

11 Additional Partitioning Options Logical Schema Partitioning Used mainly for securing and grouping objects by department, role, application etc Physical Partitioning Of Files and Filegroups Used mainly for performance Files placed on multiple different data volumes Multiple files created for round-robin writes and extent allocations 12

12 Eureka! Partitioning for Availability Each database has an area similar to a disk s boot record For a database this resides in the Primary data file If this file is corrupt or unavailable, the database will not be loaded and opened regardless of other data files A good practice is to not put any objects in this data file, and to put all your tables and objects into secondary data files. Within the DB you can distribute objects into files to achieve one or more of the following Enable an application to continue working when other data files are missing or corrupt by grouping needed objects together Restore the most critical files for your application system to start up first, allowing partial functionality of your application to continue without issue. 13

13 Open Discussion Which ways could we split the adventureworks db, focussed on client facing / downstream application functionality, criticality and startup sequence for Availability? 14

14 Adventureworks Schema

15 PfA Methodology Conceptual extension from Logical Schema Partitioning and Physical File Partitioning: 1. Don t put user defined objects in the Primary FileGroup i. Allows the Primary Filegroup to load faster 2. Schema Separate user defined objects i. For clarity of purpose and operational use ii. iii. Try not to use dbo schema (good design/operational practice) DBA s will schematize objects in a similar fashion to what was in the Adventureworks sample. For PfA you should look to map your schema s around your application s core functionality and use cases and criticality 3. Create Filegroups for each Schema i. Multiple if you want to partition historical data horizontally etc ii. Name them in a fashion that allows easy understanding of what is in them, or how they should be used. 16

16 PfA Methodology(2) Conceptual extension from Logical Schema Partitioning and Physical File Partitioning: 4. Design your application to modularise its data access needs i. This is critical to segmenting your application to specific data ii. files/filegroups. This includes stored procedure and function internals, use try/catch within sp s for example to decide whether rollback or other functionality is needed when a filegroup is offline. iii. The key flows could be to either contain data access within the necessary filegroups, or determine whether a function can be used to catch that an object is in an offline filegroup and skip it / do something else / roll back, or Catch Msg 8653, Level 16, State 1, Line 3 * and do as per point above. 5. Document application s modules, with emphasis on criticality and data dependencies. i. Allows stepped sequencing of apps by criticality during start up *[Tambs] While the database is in a state of partial availability, the filegroups that remain online can support queries. However, queries that depend on data that resides in filegroups that are offline return error 8653: Msg 8653, Level 16, State 1, Line 3 The query processor is unable to produce a plan for the table or view 'X' because the table resides in a filegroup which is not online. 17

17 USE [master] CREATE DATABASE [PfA] ON PRIMARY ( NAME = N'PfA_Primary',FILENAME = N'E:\MSSQL10.SQL2008INST01\MSSQL\Data\PfA_Primary.mdf',SIZE = 400MB ), FILEGROUP [PfA_FG1] ( NAME = N'PfA_F1_FG1',FILENAME = N'E:\MSSQL10.SQL2008INST01\MSSQL\Data\PfA_F1_FG1.ndf',SIZE = 300MB ), ( NAME = N'PfA_F2_FG1',FILENAME = N'E:\MSSQL10.SQL2008INST01\MSSQL\Data\PfA_F2_FG1.ndf',SIZE = 300MB ), FILEGROUP [PfA_FG2] ( NAME = N'PfA_F1_FG2',FILENAME = N'E:\MSSQL10.SQL2008INST01\MSSQL\Data\PfA_F1_FG2.ndf',SIZE = 300MB ), FILEGROUP [PfA_FG3] ( NAME = N'PfA_F1_FG3',FILENAME = N'E:\MSSQL10.SQL2008INST01\MSSQL\Data\PfA_F1_FG3.ndf',SIZE = 300MB ) LOG ON ( NAME = N'PfA_log',FILENAME = N'F:\MSSQL10.SQL2008INST01\MSSQL\Logs\PfA_PfA_log.LDF',SIZE = 100MB ) Adding Files and File Groups to a Database USE [PfA]; SELECT * FROM sys.database_files; SELECT * FROM sys.filegroups; 18

18 USE [PfA]; CREATE SCHEMA [Sales]; CREATE SCHEMA [Production]; CREATE SCHEMA [Person]; -- moving tables from dbo schema to -- [Production] and [Sales] schemas ALTER SCHEMA [Sales] TRANSFER [dbo].[customer]; -- Note that triggers move as well... ALTER SCHEMA [Production] TRANSFER [dbo].[billofmaterials]; ALTER SCHEMA [Person] TRANSFER [dbo].[contactinsert]; ALTER SCHEMA [Person] TRANSFER [dbo].[contact]; * Use Synonyms to help the transition from dbo native schema to proper schema usage -- change stored proc definitions to focus on right schemas ALTER PROC [dbo].[contactinsert] BIGINT,@VvcSalutation VARCHAR(4) = NULL,@VnvcForename NVARCHAR(100),@VnvcMiddlename NVARCHAR(100) = NULL,@VnvcSurname NVARCHAR(100),@VvcJobTitle NVARCHAR(100) = NULL,@VvcCompany NVARCHAR(100) = NULL,@VnvcAddressLine1 NVARCHAR(100),@VnvcAddressLine2 NVARCHAR(100) = NULL,@VnvcAddressLine3 NVARCHAR(100) = NULL,@VvcPostCode VARCHAR(12),@VnvcCity NVARCHAR(50),@VnvcState NVARCHAR(50) = NULL,@VinCountryID INT,@Vvc Address VARCHAR(100),@VvcBusinessPhone VARCHAR(25),@VvcBusExt VARCHAR(10) = NULL,@VvcFacsimile VARCHAR(25) = NULL,@VvcMobilePhone VARCHAR(25) = NULL,@VvcPassword VARCHAR(20) ) AS INSERT INTO [Person].[Contact] ([ContactID],[Salutation],[Forename],[Middlename],[Surname],[JobTitle],[Company],[AddressLine1],[AddressLine2],[AddressLine3],[PostCode],[City],[State],[CountryID],[ Address],[BusinessPhone],[BusExt],[Facsimile],[MobilePhone],[Password]) VALUES (@VbiContactID,@VvcSalutation,@VnvcForename,@VnvcMiddlename,@VnvcSurname,@VvcJobTitle,@VvcCompany,@VnvcAddressLine1,@VnvcAddressLine2,@VnvcAddressLine3,@VvcPostCode,@VnvcCity,@VnvcState,@VinCountryID,@Vvc Address,@VvcBusinessPhone,@VvcBusExt,@VvcFacsimile,@VvcMobilePhone,@VvcPassword); 19 Create and Allocate Objects to Schemas

19 CREATE TABLE [Sales].[SalesInvoice] ( [SalesInvoiceID] INT IDENTITY(1,1) PRIMARY KEY CLUSTERED,[Amount] MONEY,[CustomerID] INT,[DateInvoiced] DATETIME,[DatePaid] DATETIME ) ON [PfA_FG1]; Creating tables on a filegroup is easy as per the code sample. Moving existing tables can be a little more complicated: Use Create index (clustered) with Drop Existing Rebuild indexes etc to move them It may take many iterations to get the sequencing and code here right, but its worth it in the long run. 20 Allocate an Object to a Filegroup

20 ADO.NET Code Example ( This code example uses ADO.NET 2.0 (SqlClient). The following parameters are used in the example. strconn is the database connection string that includes the failover partner. strcmd is the command, such as Transact-SQL or a stored procedure, to execute. iretryinterval is the number of seconds to wait (sleep) between retries. imaxretries is the number of times to retry the command before failing. Example connection string ( strconn ) Data Source=SQLA\INST1;Failover Partner=SQLB\INST1; Initial Catalog=DBMTest;Integrated Security=True using System.Data; using System.Data.SqlClient; using System.Threading; I expect that the code here will only need slight Adjustments for use with Clustering Connection string would use virtual name Timeout retry delay would cater for longer startup/failover bool ExecuteSQLWithRetry_NoResults(string strconn, string strcmd, int iretryinterval, int imaxretries) { // Step 1: Enter the retry loop in case an error occurs for (int iretrycount = 0; iretrycount < imaxretries; iretrycount++) { try { // Step 2: Open the database connection conn = new SqlConnection(strConn); conn.open(); // Step 3: Execute the command if (null!= conn && ConnectionState.Open == conn.state) { cmd = new SqlCommand(strCmd, conn); cmd.executenonquery(); // Step 4: If there were no errors, clean-up & return success return true; } } catch (Exception ex) { // Step 5: Catch Error on Open Connection or Execute Command // Error Handling to be added here: ex } 21 Retry Logic (1)

21 Continued finally { // Step 6: Clean up the Command and database Connection objects try { // Clean Command object if (null!= cmd) cmd.dispose(); cmd = null; // Clean up Connection object if (null!= conn && ConnectionState.Closed!= conn.state) conn.close(); conn = null; } catch (Exception ex) { // Error handling to be added here } } // Step 7: If the maximum number of retries not exceeded if (iretrycount < imaxretries) { // Step 7a: Sleep and continue (convert to milliseconds) Thread.Sleep(iRetryInterval * 1000); } } // end for loop: iretrycount < imaxretries // Step 7b: If the max number of retries exceeded, return failure return false; } 22 Retry Logic (2)

22 SELECT s.data_space_id as Id,g.name as Filegroup_name,s.name as Logical_name,physical_name,g.is_default AS [IsDefault],g.is_read_only AS [ReadOnly],CAST( ISNULL ( ( SELECT SUM(gs.size)*CONVERT(float,8) FROM sys.database_files gs WHERE gs.data_space_id = g.data_space_id ), 0 ) AS float ) AS [Size] FROM sys.filegroups AS g INNER JOIN sys.master_files AS s ON (s.data_space_id = g.data_space_id) WHERE s.type = 0 AND s.database_id = db_id() AND s.drop_lsn IS NULL; Query Returning Files, Filegroups and Sizes From Partial Database Availability (Danny Tambs, May 2007) 23

23 Links and Resources AdventureWorks Database Diagram Whitepaper: Partial Database Availability (Danny Tambs, May 2007) Whitepaper: Partitioned Table and Index Strategies Using SQL Server 2008 (Ron Talmage, March 2009) 24

24 Questions? 25

High Availability- Disaster Recovery 101

High Availability- Disaster Recovery 101 High Availability- Disaster Recovery 101 DBA-100 Glenn Berry, Principal Consultant, SQLskills.com Glenn Berry Consultant/Trainer/Speaker/Author Principal Consultant, SQLskills.com Email: Glenn@SQLskills.com

More information

Getting the most from your SAN File and Filegroup design patterns. Stephen Archbold

Getting the most from your SAN File and Filegroup design patterns. Stephen Archbold Getting the most from your SAN File and Filegroup design patterns Stephen Archbold About me Microsoft Certified Master SQL Server 2008 Working with SQL Server for 6+ years Former Production DBA for 24/7

More information

High Availability- Disaster Recovery 101

High Availability- Disaster Recovery 101 High Availability- Disaster Recovery 101 DBA-100 Glenn Berry, Principal Consultant, SQLskills.com Glenn Berry Consultant/Trainer/Speaker/Author Principal Consultant, SQLskills.com Email: Glenn@SQLskills.com

More information

Microsoft. Exam Questions Administering Microsoft SQL Server 2012 Databases. Version:Demo

Microsoft. Exam Questions Administering Microsoft SQL Server 2012 Databases. Version:Demo Microsoft Exam Questions 70-462 Administering Microsoft SQL Server 2012 Databases Version:Demo 1. You develop a Microsoft SQL Server 2012 database that contains tables named Employee and Person. The tables

More information

SQL Server Myths and Misconceptions

SQL Server Myths and Misconceptions SQL Server Myths and Misconceptions Victor Isakov victor@sqlserversolutions.com.au Copyright by Victor Isakov Abstract As a DBA you have heard of plenty of myths and misconceptions about SQL Server. From

More information

Eternal Story on Temporary Objects

Eternal Story on Temporary Objects Eternal Story on Temporary Objects Dmitri V. Korotkevitch http://aboutsqlserver.com About Me 14+ years of experience working with Microsoft SQL Server Microsoft SQL Server MVP Microsoft Certified Master

More information

Microsoft SQL Server Database Administration

Microsoft SQL Server Database Administration Address:- #403, 4 th Floor, Manjeera Square, Beside Prime Hospital, Ameerpet, Hyderabad 500038 Contact: - 040/66777220, 9177166122 Microsoft SQL Server Database Administration Course Overview This is 100%

More information

Are AGs A Good Fit For Your Database? Doug Purnell

Are AGs A Good Fit For Your Database? Doug Purnell Are AGs A Good Fit For Your Database? Doug Purnell About Me DBA for Elon University Co-leader for WinstonSalem BI User Group All things Nikon Photography Bring on the BBQ! Goals Understand HA & DR Types

More information

IT Best Practices Audit TCS offers a wide range of IT Best Practices Audit content covering 15 subjects and over 2200 topics, including:

IT Best Practices Audit TCS offers a wide range of IT Best Practices Audit content covering 15 subjects and over 2200 topics, including: IT Best Practices Audit TCS offers a wide range of IT Best Practices Audit content covering 15 subjects and over 2200 topics, including: 1. IT Cost Containment 84 topics 2. Cloud Computing Readiness 225

More information

New England Data Camp v2.0 It is all about the data! Caregroup Healthcare System. Ayad Shammout Lead Technical DBA

New England Data Camp v2.0 It is all about the data! Caregroup Healthcare System. Ayad Shammout Lead Technical DBA New England Data Camp v2.0 It is all about the data! Caregroup Healthcare System Ayad Shammout Lead Technical DBA ashammou@caregroup.harvard.edu About Caregroup SQL Server Database Mirroring Selected SQL

More information

Number: Passing Score: 800 Time Limit: 120 min File Version:

Number: Passing Score: 800 Time Limit: 120 min File Version: 70-465 Number: 000-000 Passing Score: 800 Time Limit: 120 min File Version: 1.0 http://www.gratisexam.com/ Exam A QUESTION 1 You need to recommend a backup process for an Online Transaction Processing

More information

About Speaker. Shrwan Krishna Shrestha. /

About Speaker. Shrwan Krishna Shrestha. / PARTITION About Speaker Shrwan Krishna Shrestha shrwan@sqlpassnepal.org / shrwan@gmail.com 98510-50947 Topics to be covered Partition in earlier versions Table Partitioning Overview Benefits of Partitioned

More information

Microsoft SQL Server Fix Pack 15. Reference IBM

Microsoft SQL Server Fix Pack 15. Reference IBM Microsoft SQL Server 6.3.1 Fix Pack 15 Reference IBM Microsoft SQL Server 6.3.1 Fix Pack 15 Reference IBM Note Before using this information and the product it supports, read the information in Notices

More information

Field Testing Buffer Pool Extension and In-Memory OLTP Features in SQL Server 2014

Field Testing Buffer Pool Extension and In-Memory OLTP Features in SQL Server 2014 Field Testing Buffer Pool Extension and In-Memory OLTP Features in SQL Server 2014 Rick Heiges, SQL MVP Sr Solutions Architect Scalability Experts Ross LoForte - SQL Technology Architect - Microsoft Changing

More information

SQL Server 2016 New Security Features. Gianluca Sartori

SQL Server 2016 New Security Features. Gianluca Sartori SQL Server 2016 New Security Features Gianluca Sartori Our Sponsors Gianluca Sartori Independent SQL Server consultant SQL Server MVP, MCTS, MCITP, MCT Works with SQL Server since version 7 DBA @ Scuderia

More information

Exam Questions

Exam Questions Exam Questions 70-464 Developing Microsoft SQL Server 2012 Databases https://www.2passeasy.com/dumps/70-464/ 1. You create a view by using the following code: Several months after you create the view,

More information

Data Partitioning. For DB Architects and Mere Mortals. Dmitri Korotkevitch

Data Partitioning. For DB Architects and Mere Mortals. Dmitri Korotkevitch Data Partitioning For DB Architects and Mere Mortals Dmitri Korotkevitch http://aboutsqlserver.com Please silence cell phones Explore Everything PASS Has to Offer FREE ONLINE WEBINAR EVENTS FREE 1-DAY

More information

PURGING DATA DYNAMICALLY IN SQL Kirby Richter Dell EMC

PURGING DATA DYNAMICALLY IN SQL Kirby Richter Dell EMC PURGING DATA DYNAMICALLY IN SQL 2016 Kirby Richter Dell EMC Kirby Richter Working with SQL Server since version 6.5 Broad range of experience Development, BI and Database Administration Database Architect/

More information

I am making a database in sql server and it shows an error that "CREATE -3c9ae794a7c4/sql-express-2008-r2-createdatabase-permission-denied-in-

I am making a database in sql server and it shows an error that CREATE -3c9ae794a7c4/sql-express-2008-r2-createdatabase-permission-denied-in- Create Table Permission Denied In Database 'master' In Sql Server 2008 create database permission denied in database 'master'-sql 2008 R2 So I have installed SQL Server 2008 R2 on windows 7 machine. Created

More information

Mssql 2005 The Database Principal Owns A. Schema In The Database And Cannot Be Dropped

Mssql 2005 The Database Principal Owns A. Schema In The Database And Cannot Be Dropped Mssql 2005 The Database Principal Owns A Schema In The Database And Cannot Be Dropped I have created two users and assign a database role. SqlServer.Smo) The database principal owns a schema in the database,

More information

MySQL High Availability. Michael Messina Senior Managing Consultant, Rolta-AdvizeX /

MySQL High Availability. Michael Messina Senior Managing Consultant, Rolta-AdvizeX / MySQL High Availability Michael Messina Senior Managing Consultant, Rolta-AdvizeX mmessina@advizex.com / mike.messina@rolta.com Introduction Michael Messina Senior Managing Consultant Rolta-AdvizeX, Working

More information

Transition Your MCITP: Database Administrator 2008 or MCITP: Database Developer 2008 to MCSE: Data Platform (by Silence20)

Transition Your MCITP: Database Administrator 2008 or MCITP: Database Developer 2008 to MCSE: Data Platform (by Silence20) Transition Your MCITP: Database Administrator 2008 or MCITP: Database Developer 2008 to MCSE: Data Platform (by Silence20) Number: 70-459 Passing Score: 700 Time Limit: 180 min File Version: 1.0 http://www.gratisexam.com/

More information

Microsoft Certified Professional Transcript

Microsoft Certified Professional Transcript Microsoft Certified Professional Transcript Last Activity Recorded December 05, 2013 Microsoft Certification ID 213748 STEVE WILSON F1 Computing Systems Ltd 3 Kelso Place Upper Bristol Road Bath BA1 3AU

More information

Query Store What s it all about?

Query Store What s it all about? Query Store What s it all about? Andrew J. Kelly Sr. Technology Subject Matter Specialist B3 Group Inc. #ITDEVCONNECTIONS ITDEVCONNECTIONS.COM Andrew J. Kelly Andrew J. Kelly is a Sr. Technology Subject

More information

Synergetics-Standard-SQL Server 2012-DBA-7 day Contents

Synergetics-Standard-SQL Server 2012-DBA-7 day Contents Workshop Name Duration Objective Participants Entry Profile Training Methodology Setup Requirements Hardware and Software Requirements Training Lab Requirements Synergetics-Standard-SQL Server 2012-DBA-7

More information

Building Better. SQL Server Databases

Building Better. SQL Server Databases Building Better SQL Server Databases Who is this guy? Eric Cobb Started in IT in 1999 as a "webmaster Developer for 14 years Microsoft Certified Solutions Expert (MCSE) Data Platform Data Management and

More information

Microsoft SQL Server Training Course Catalogue. Learning Solutions

Microsoft SQL Server Training Course Catalogue. Learning Solutions Training Course Catalogue Learning Solutions Querying SQL Server 2000 with Transact-SQL Course No: MS2071 Two days Instructor-led-Classroom 2000 The goal of this course is to provide students with the

More information

Dealing with schema changes on large data volumes. Danil Zburivsky MySQL DBA, Team Lead

Dealing with schema changes on large data volumes. Danil Zburivsky MySQL DBA, Team Lead Dealing with schema changes on large data volumes Danil Zburivsky MySQL DBA, Team Lead Why Companies Trust Pythian Recognized Leader: Global industry-leader in remote database administration services and

More information

WHAT APPLICATION DEVELOPERS SHOULD KNOW ABOUT SQL SERVER?

WHAT APPLICATION DEVELOPERS SHOULD KNOW ABOUT SQL SERVER? WHAT APPLICATION DEVELOPERS SHOULD KNOW ABOUT SQL SERVER? MILOŠ RADIVOJEVIĆ, PRINCIPAL DATABASE CONSULTANT, BWIN.PARTY, AUSTRIA SQL SATURDAY MUNICH, 8 TH OCTOBER 2016 Our Sponsors Miloš Radivojević Data

More information

Lab 1. In this first lab class, we will address the following topics:

Lab 1. In this first lab class, we will address the following topics: Department of Computer Science and Engineering Data Administration in Information Systems Lab 1 In the laboratory classes, we will use Microsoft SQL Server to see how the theoretical concepts apply in

More information

Memory may be insufficient. Memory may be insufficient.

Memory may be insufficient. Memory may be insufficient. Error code Less than 200 Error code Error type Description of the circumstances under which the problem occurred Linux system call error. Explanation of possible causes Countermeasures 1001 CM_NO_MEMORY

More information

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

Common mistakes developers make in SQL Server. Amateurs work until they get it right. Professionals work until they can't get it wrong. Common mistakes developers make in SQL Server Amateurs work until they get it right. Professionals work until they can't get it wrong. About me MCT 2011 Twitter @SwePeso MCTS and MCITP 2011 Active as SwePeso

More information

SQL Server Database Administration for SharePoint. Hope Foley Jim Grabinski

SQL Server Database Administration for SharePoint. Hope Foley Jim Grabinski SQL Server Database Administration for SharePoint Hope Foley Jim Grabinski Hope Foley SQL Server DBA (MCITP: DBA 2005/2008) MCTS: MOSS 2007, Configuration Principle Microsoft Consultant Jim Grabinski

More information

ColdFusion Summit 2016

ColdFusion Summit 2016 ColdFusion Summit 2016 Building Better SQL Server Databases Who is this guy? Eric Cobb - Started in IT in 1999 as a "webmaster - Developer for 14 years - Microsoft Certified Solutions Expert (MCSE) - Data

More information

Microsoft SQL Server" 2008 ADMINISTRATION. for ORACLE9 DBAs

Microsoft SQL Server 2008 ADMINISTRATION. for ORACLE9 DBAs Microsoft SQL Server" 2008 ADMINISTRATION for ORACLE9 DBAs Contents Acknowledgments *v Introduction xvii Chapter 1 Introduction to the SQL Server Platform 1 SQLServer Editions 2 Premium Editions 3 Core

More information

Achieving Higher Availability with Multiple Schedulers & Clustering Software Pursuits, Inc.

Achieving Higher Availability with Multiple Schedulers & Clustering Software Pursuits, Inc. Achieving Higher Availability with Multiple Schedulers & Clustering 2017 Table of Contents Introduction... 2 Contact Information... 2 Tested Architecture... 2 UNC Path Synchronization on a Schedule...

More information

Into into Locking and Blocking. Dmitri Korotkevitch (http://aboutsqlserver.com) 1

Into into Locking and Blocking. Dmitri Korotkevitch (http://aboutsqlserver.com) 1 Into into Locking and Blocking Dmitri Korotkevitch (http://aboutsqlserver.com) 1 About me 20 years of experience in IT 14+ years of experience working with Microsoft SQL Server Microsoft SQL Server MVP

More information

Silent Killers Lurking in Your Schema

Silent Killers Lurking in Your Schema Silent Killers Lurking in Your Schema Mickey Stuewe - MCP Database Architect Your Background DBA Database Developer Programmer Manager Just Checking Things Out Objectives Data Types Smart Keys Naming Named

More information

SQL Server 2014/2016 Enhancements for Developers. Wylie Blanchard Lead IT Consultant; SQL Server DBA

SQL Server 2014/2016 Enhancements for Developers. Wylie Blanchard Lead IT Consultant; SQL Server DBA SQL Server 2014/2016 Enhancements for Developers Wylie Blanchard Lead IT Consultant; SQL Server DBA About Great Tech Pros Great Tech Pros was founded in 2012 Specialties include: IT Consulting Database

More information

Avoiding the Cost of Confusion: SQL Server Failover Cluster Instances versus Basic Availability Group on Standard Edition

Avoiding the Cost of Confusion: SQL Server Failover Cluster Instances versus Basic Availability Group on Standard Edition One Stop Virtualization Shop Avoiding the Cost of Confusion: SQL Server Failover Cluster Instances versus Basic Availability Group on Standard Edition Written by Edwin M Sarmiento, a Microsoft Data Platform

More information

Building Better. SQL Server Databases

Building Better. SQL Server Databases Building Better SQL Server Databases Who is this guy? Eric Cobb SQL Server Database Administrator MCSE: Data Platform MCSE: Data Management and Analytics 1999-2013: Webmaster, Programmer, Developer 2014+:

More information

Ahmedabad SQL Server User Group Ahmedabad, Gujarat, India July 19, Microsoft MVP SQL Server Founder SQLAuthority.com

Ahmedabad SQL Server User Group Ahmedabad, Gujarat, India July 19, Microsoft MVP SQL Server Founder SQLAuthority.com Ahmedabad SQL Server User Group Ahmedabad, Gujarat, India July 19, 2008 Pinal Dave Microsoft MVP SQL Server Founder SQLAuthority.com pinal@sqlauthority.com Speaker Profile Microsoft Most Valuable Professional

More information

DB2 Data Sharing Then and Now

DB2 Data Sharing Then and Now DB2 Data Sharing Then and Now Robert Catterall Consulting DB2 Specialist IBM US East September 2010 Agenda A quick overview of DB2 data sharing Motivation for deployment then and now DB2 data sharing /

More information

Veritas NetBackup for Microsoft SQL Server Administrator's Guide

Veritas NetBackup for Microsoft SQL Server Administrator's Guide Veritas NetBackup for Microsoft SQL Server Administrator's Guide for Windows Release 8.1.1 Veritas NetBackup for Microsoft SQL Server Administrator's Guide Last updated: 2018-04-10 Document version:netbackup

More information

Three methods compared

Three methods compared Querying SQL Data Changes Three methods compared eric@berkflow.com (561) 914-2097 Eric Berkowitz SQL Saturday South Florida 6/9/18 World s Greatest Credentials Eric Berkowitz First developed with SQL Server

More information

Demystifying Storage Area Networks. Michael Wells Microsoft Application Solutions Specialist EMC Corporation

Demystifying Storage Area Networks. Michael Wells Microsoft Application Solutions Specialist EMC Corporation Demystifying Storage Area Networks Michael Wells Microsoft Application Solutions Specialist EMC Corporation About Me DBA for 7+ years Developer for 10+ years MCSE: Data Platform MCSE: SQL Server 2012 MCITP:

More information

Netcast

Netcast WSS MVP since 2006 Speaker, writer, consultant, Aquarius, President of the Ames Iowa chapter of the Mark Rhodes fan club Personal Blog www.toddklindt.com/blog Company web site www.sharepoint911.com E-mail

More information

Designing Database Solutions for Microsoft SQL Server (465)

Designing Database Solutions for Microsoft SQL Server (465) Designing Database Solutions for Microsoft SQL Server (465) Design a database structure Design for business requirements Translate business needs to data structures; de-normalize a database by using SQL

More information

Troubleshooting Always On Availability Groups Performance

Troubleshooting Always On Availability Groups Performance Andreas Wolter Troubleshooting Always On Availability Groups Performance Andreas Wolter (SQLMCM) 1 About: Andreas Wolter Consultant, Trainer & Speaker Microsoft Certified Master SQL Server 2008 + Solutions

More information

Index. Accent Sensitive (AS), 20 Aggregate functions, 286 Atomicity consistency isolation durability (ACID), 265

Index. Accent Sensitive (AS), 20 Aggregate functions, 286 Atomicity consistency isolation durability (ACID), 265 Index A Accent Sensitive (AS), 20 Aggregate functions, 286 Atomicity consistency isolation durability (ACID), 265 B Balanced (B)-Trees clustered index, 237 non-clustered index, 239 BULK INSERT statement

More information

Let s manage agents. Tom Sightler, Principal Solutions Architect Dmitry Popov, Product Management

Let s manage agents. Tom Sightler, Principal Solutions Architect Dmitry Popov, Product Management Let s manage agents Tom Sightler, Principal Solutions Architect Dmitry Popov, Product Management Agenda Inventory management Job management Managed by backup server jobs Managed by agent jobs Recovery

More information

Ebook : Overview of application development. All code from the application series books listed at:

Ebook : Overview of application development. All code from the application series books listed at: Ebook : Overview of application development. All code from the application series books listed at: http://www.vkinfotek.com with permission. Publishers: VK Publishers Established: 2001 Type of books: Develop

More information

Automatic Informix Range Interval Partitioning and Rolling Windows to Organize your data by Lester Knutsen. Webcast on June 21, 2018 At 2:00pm EDT

Automatic Informix Range Interval Partitioning and Rolling Windows to Organize your data by Lester Knutsen. Webcast on June 21, 2018 At 2:00pm EDT Automatic Informix Range Interval Partitioning and Rolling Windows to Organize your data by Lester Knutsen Webcast on June 21, 2018 At 2:00pm EDT 1 or Best Practices for Informix Partitioning 2 Lester

More information

Q&As. Transition Your MCITP: Database Administrator 2008 or MCITP: Database Developer 2008 to MCSE: Data Platform

Q&As. Transition Your MCITP: Database Administrator 2008 or MCITP: Database Developer 2008 to MCSE: Data Platform 70-459 Q&As Transition Your MCITP: Database Administrator 2008 or MCITP: Database Developer 2008 to MCSE: Data Platform Pass Microsoft 70-459 Exam with 100% Guarantee Free Download Real Questions & Answers

More information

PowerLink Host Data Manager User Guide

PowerLink Host Data Manager User Guide PowerLink Host Data Manager User Guide Last Updated: July 2009 Version: 2.06014 Contents Contents... 2 Introduction... 4 Quick Start... 5 Enable File Monitoring... 7 Enabling Attaché 7 File Monitoring

More information

Survey of the Azure Data Landscape. Ike Ellis

Survey of the Azure Data Landscape. Ike Ellis Survey of the Azure Data Landscape Ike Ellis Wintellect Core Services Consulting Custom software application development and architecture Instructor Led Training Microsoft s #1 training vendor for over

More information

Get the Skinny on Minimally Logged Operations

Get the Skinny on Minimally Logged Operations Get the Skinny on Minimally Logged Operations Andrew J. Kelly akelly@solidq.com Who Am I? Mentor with SolidQ SQL Server MVP since 2001 Contributing editor & author for SQL Server Pro Magazine Over 20 years

More information

SQL Server DBA Course Details

SQL Server DBA Course Details SQL Server DBA Course Details By Besant Technologies Course Name Category Venue SQL Server DBA Database Administration Besant Technologies No.24, Nagendra Nagar, Velachery Main Road, Address Velachery,

More information

CONFIGURING SQL SERVER FOR PERFORMANCE LIKE A MICROSOFT CERTIFIED MASTER

CONFIGURING SQL SERVER FOR PERFORMANCE LIKE A MICROSOFT CERTIFIED MASTER CONFIGURING SQL SERVER FOR PERFORMANCE LIKE A MICROSOFT CERTIFIED MASTER TIM CHAPMAN PREMIERE FIELD ENGINEER MICROSOFT THOMAS LAROCK HEAD GEEK SOLARWINDS A LITTLE ABOUT TIM Tim is a Microsoft Dedicated

More information

Visual Studio for SQL Developers

Visual Studio for SQL Developers Visual Studio for SQL Developers September 2, 2015 Gent, Belgium Andrey Zavadskiy, Krasnodar, Russia MCSE/MCSD/MCT About me Solutions architect, SQL &.NET developer 20 years in IT industry Worked with

More information

2072 : Administering a Microsoft SQL Server 2000 Database

2072 : Administering a Microsoft SQL Server 2000 Database 2072 : Administering a Microsoft SQL Server 2000 Database Introduction This course provides students with the knowledge and skills required to install, configure, administer, and troubleshoot the client-server

More information

SQL Coding Guidelines

SQL Coding Guidelines SQL Coding Guidelines 1. Always specify SET NOCOUNT ON at the top of the stored procedure, this command suppresses the result set count information thereby saving some amount of time spent by SQL Server.

More information

WHAT APPLICATION DEVELOPERS SHOULD KNOW ABOUT SQL SERVER?

WHAT APPLICATION DEVELOPERS SHOULD KNOW ABOUT SQL SERVER? WHAT APPLICATION DEVELOPERS SHOULD KNOW ABOUT SQL SERVER? MILOŠ RADIVOJEVIĆ, PRINCIPAL DATABASE CONSULTANT, BWIN.PARTY, AUSTRIA SQL SATURDAY BRATISLAVA, 4 TH JUNE 2016 Sponsors Miloš Radivojević Data Platform

More information

Microsoft 20409FS - Server Virtualization with Windows Server Hyper-V and System Center Fast Start (4 days)

Microsoft 20409FS - Server Virtualization with Windows Server Hyper-V and System Center Fast Start (4 days) 1800 ULEARN (853 276) www.ddls.com.au Microsoft 20409FS - Server Virtualization with Windows Server Hyper-V and System Center Fast Start (4 days) Length 4 days Price $3630.00 (inc GST) Overview If it is

More information

CAST(HASHBYTES('SHA2_256',(dbo.MULTI_HASH_FNC( tblname', schemaname'))) AS VARBINARY(32));

CAST(HASHBYTES('SHA2_256',(dbo.MULTI_HASH_FNC( tblname', schemaname'))) AS VARBINARY(32)); >Near Real Time Processing >Raphael Klebanov, Customer Experience at WhereScape USA >Definitions 1. Real-time Business Intelligence is the process of delivering business intelligence (BI) or information

More information

Maintaining a Microsoft SQL Server 2005 Database Course 2780: Three days; Instructor-Led

Maintaining a Microsoft SQL Server 2005 Database Course 2780: Three days; Instructor-Led Maintaining a Microsoft SQL Server 2005 Database Course 2780: Three days; Instructor-Led Introduction This three-day instructor-led course provides students with product knowledge and skills needed to

More information

Exam Questions

Exam Questions Exam Questions 70-762 Developing SQL Databases (beta) https://www.2passeasy.com/dumps/70-762/ 1. Note: this question is part of a series of questions that use the same or similar answer choices. An answer

More information

AlwaysOn Availability Groups 2016 What is new?

AlwaysOn Availability Groups 2016 What is new? AlwaysOn Availability Groups 2016 What is new? Patrocinadores SQL Server Discovery Day 25/06 http://www.eventbrite.com/e/sql-discovery-day-tickets-25185568714 Murilo Miranda Database Consultant @ Pythian

More information

Designing, Optimizing, and Maintaining a Database Administrative Solution for Microsoft SQL Server 2008

Designing, Optimizing, and Maintaining a Database Administrative Solution for Microsoft SQL Server 2008 Designing, Optimizing, and Maintaining a Database Administrative Solution for Microsoft SQL Server 2008 Varighed: 5 Days Kursus Kode: M50400 Beskrivelse: This five-day instructor-led course provides the

More information

SQL Server Security. Marek

SQL Server Security. Marek SQL Server Security Marek Chmel Lead Database Administrator @ AT&T MVP: Data Platform MCSE: Data Management and Analytics MCT: Regional Lead Certified Ethical Hacker CEHv8 marek.chmel@technet.ms @MarekChmel

More information

Microsoft SQL Server HA and DR with DVX

Microsoft SQL Server HA and DR with DVX Microsoft SQL Server HA and DR with DVX 385 Moffett Park Dr. Sunnyvale, CA 94089 844-478-8349 www.datrium.com Technical Report Introduction A Datrium DVX solution allows you to start small and scale out.

More information

Common non-configured options on a Database Server

Common non-configured options on a Database Server Common non-configured options on a Database Server Sergio Govoni @segovoni www.sqlblog.com/blogs/sergio_govoni Sergio Govoni Data Platform MVP sqlblog.com/blogs/sergio_govoni @segovoni Vice Presidente

More information

Incrementally Updating Backups Tips and Tricks

Incrementally Updating Backups Tips and Tricks Infrastructure at your Service. Incrementally Updating Backups Tips and Tricks Oracle 12.1.0.2 - Linux x86 64bit About me Infrastructure at your Service. William Sescu Consultant +41 78 674 12 90 william.sescu@dbi-services.com

More information

Sepand Gojgini. ColumnStore Index Primer

Sepand Gojgini. ColumnStore Index Primer Sepand Gojgini ColumnStore Index Primer SQLSaturday Sponsors! Titanium & Global Partner Gold Silver Bronze Without the generosity of these sponsors, this event would not be possible! Please, stop by the

More information

Tables. Tables. Physical Organization: SQL Server Partitions

Tables. Tables. Physical Organization: SQL Server Partitions Tables Physical Organization: SQL Server 2005 Tables and indexes are stored as a collection of 8 KB pages A table is divided in one or more partitions Each partition contains data rows in either a heap

More information

Something to think about. Problems. Purpose. Vocabulary. Query Evaluation Techniques for large DB. Part 1. Fact:

Something to think about. Problems. Purpose. Vocabulary. Query Evaluation Techniques for large DB. Part 1. Fact: Query Evaluation Techniques for large DB Part 1 Fact: While data base management systems are standard tools in business data processing they are slowly being introduced to all the other emerging data base

More information

Physical Organization: SQL Server 2005

Physical Organization: SQL Server 2005 Physical Organization: SQL Server 2005 Tables Tables and indexes are stored as a collection of 8 KB pages A table is divided in one or more partitions Each partition contains data rows in either a heap

More information

All references to "recovery mode" should be changed to "recovery model". Reads:...since it was read into disk).

All references to recovery mode should be changed to recovery model. Reads:...since it was read into disk). Microsoft SQL Server 2008 Internals Kalen Delaney, Paul S. Randal, Kimberly L. Tripp, Conor Cunningham, Adam Machanic, and Ben Nevarez ISBN: 978-0-7356-2624-9 First printing: March, 2009 To ensure the

More information

Database Architectures

Database Architectures Database Architectures CPS352: Database Systems Simon Miner Gordon College Last Revised: 4/15/15 Agenda Check-in Parallelism and Distributed Databases Technology Research Project Introduction to NoSQL

More information

70-459: Transition Your MCITP: Database Administrator 2008 or MCITP: Database Developer 2008 to MCSE: Data Platform

70-459: Transition Your MCITP: Database Administrator 2008 or MCITP: Database Developer 2008 to MCSE: Data Platform 70-459: Transition Your MCITP: Database Administrator 2008 or MCITP: Database Developer 2008 to MCSE: Data Platform The following tables show where changes to exam 70-459 have been made to include updates

More information

Activant Prophet 21 SQL Server Data Storage. SQL Server Administration suite: course 2 of 4

Activant Prophet 21 SQL Server Data Storage. SQL Server Administration suite: course 2 of 4 Activant Prophet 21 SQL Server Data Storage SQL Server Administration suite: course 2 of 4 This class is designed for Beginner SQL/Prophet 21 (CC) users who are responsible for SQL Administration as it

More information

Sql Cannot Create Index On View Not Schema Bound

Sql Cannot Create Index On View Not Schema Bound Sql Cannot Create Index On View Not Schema Bound to a Table. Issues with schema binding, view indexing So I go to index the view, but I can't because it's not schemabound. Cannot schema bind view 'dbo.

More information

ADMINISTERING MICROSOFT SQL SERVER CERTIFICATION QUESTIONS AND STUDY GUIDE

ADMINISTERING MICROSOFT SQL SERVER CERTIFICATION QUESTIONS AND STUDY GUIDE 70-462 ADMINISTERING MICROSOFT SQL SERVER CERTIFICATION QUESTIONS AND STUDY GUIDE Administering Microsoft SQL Server 2012/2014 Databases (70-462) WWW.ANALYTICSEXAM.COM Contents Administering Microsoft

More information

CSE 451: Operating Systems Winter Redundant Arrays of Inexpensive Disks (RAID) and OS structure. Gary Kimura

CSE 451: Operating Systems Winter Redundant Arrays of Inexpensive Disks (RAID) and OS structure. Gary Kimura CSE 451: Operating Systems Winter 2013 Redundant Arrays of Inexpensive Disks (RAID) and OS structure Gary Kimura The challenge Disk transfer rates are improving, but much less fast than CPU performance

More information

Scott Meder Senior Regional Sales Manager

Scott Meder Senior Regional Sales Manager www.raima.com Scott Meder Senior Regional Sales Manager scott.meder@raima.com Short Introduction to Raima What is Data Management What are your requirements? How do I make the right decision? - Architecture

More information

Sql Server Management Studio 2008 Change Table Schema

Sql Server Management Studio 2008 Change Table Schema Sql Server Management Studio 2008 Change Table Schema You can delete (drop) a table from your database in SQL Server 2016 by using SQL Server Management Studio or Transact-SQL. Topic Status: Some information

More information

New features in SQL Server 2016

New features in SQL Server 2016 New features in SQL Server 2016 Joydip Kanjilal Microsoft MVP (2007 till 2012), Author and Speaker Principal Architect (SenecaGlobal IT Services Private Limited) Agenda SQL Server 2016 Enhancements Improved

More information

Saranya Sriram Developer Evangelist Microsoft Corporation India

Saranya Sriram Developer Evangelist Microsoft Corporation India Saranya Sriram Developer Evangelist Microsoft Corporation India Microsoft s Cloud ReCap Azure Services Platform Agenda Data is King Motivation? Why data outside your premise? Microsoft s Data Storage offerings

More information

Martin Cairney. The Why and How of Partitioned Tables

Martin Cairney. The Why and How of Partitioned Tables Martin Cairney The Why and How of ed Tables Housekeeping Mobile Phones please set to stun during the session Session Evaluation Martin Cairney Microsoft Data Platform MVP Microsoft Certified Trainer Organiser

More information

EXAM Administering Microsoft SQL Server 2012 Databases. Buy Full Product.

EXAM Administering Microsoft SQL Server 2012 Databases. Buy Full Product. Microsoft EXAM - 70-462 Administering Microsoft SQL Server 2012 Databases Buy Full Product http://www.examskey.com/70-462.html Examskey Microsoft 70-462 exam demo product is here for you to test the quality

More information

Constraints. Primary Key Foreign Key General table constraints Domain constraints Assertions Triggers. John Edgar 2

Constraints. Primary Key Foreign Key General table constraints Domain constraints Assertions Triggers. John Edgar 2 CMPT 354 Constraints Primary Key Foreign Key General table constraints Domain constraints Assertions Triggers John Edgar 2 firstname type balance city customerid lastname accnumber rate branchname phone

More information

ENHANCING DATABASE PERFORMANCE

ENHANCING DATABASE PERFORMANCE ENHANCING DATABASE PERFORMANCE Performance Topics Monitoring Load Balancing Defragmenting Free Space Striping Tables Using Clusters Using Efficient Table Structures Using Indexing Optimizing Queries Supplying

More information

Swiss IT Pro SQL Server 2005 High Availability Options Agenda: - Availability Options/Comparison - High Availability Demo 08 August :45-20:00

Swiss IT Pro SQL Server 2005 High Availability Options Agenda: - Availability Options/Comparison - High Availability Demo 08 August :45-20:00 Swiss IT Pro Agenda: SQL Server 2005 High Availability Options - Availability Options/Comparison - High Availability Demo 08 August 2006 17:45-20:00 SQL Server 2005 High Availability Options Charley Hanania

More information

Sql Server 2000 Manually Run Maintenance Plan

Sql Server 2000 Manually Run Maintenance Plan Sql Server 2000 Manually Run Maintenance Plan The backups are produced by maintenance plans on the production server then Each day we run a SQL statement similar to this to overwrite each database: I think

More information

SQL Server Optimisation

SQL Server Optimisation SQL Server Optimisation Jonathan Ward (Epicor) www.epicor.com @EpicorUK What we will cover SQL Server Version & differences Features Installation & Configuration Indexes Maintenance Backups SSRS DR 2 Versions

More information

Error code. Description of the circumstances under which the problem occurred. Less than 200. Linux system call error.

Error code. Description of the circumstances under which the problem occurred. Less than 200. Linux system call error. Error code Less than 200 Error code Error type Description of the circumstances under which the problem occurred Linux system call error. Explanation of possible causes Countermeasures 1001 CM_NO_MEMORY

More information

Performance Monitoring AlwaysOn Availability Groups. Anthony E. Nocentino

Performance Monitoring AlwaysOn Availability Groups. Anthony E. Nocentino Performance Monitoring AlwaysOn Availability Groups Anthony E. Nocentino aen@centinosystems.com Anthony E. Nocentino Consultant and Trainer Founder and President of Centino Systems Specialize in system

More information

Use Schema_id Sql Server Schema Id Sys Tables

Use Schema_id Sql Server Schema Id Sys Tables Use Schema_id Sql Server Schema Id Sys Tables schema_id) = s. The column principal_id in sys.schemas contains the ID of the schema owner, so to get the name you can Use the column principal_id in sys.tables,

More information

Advanced SQL Programming and Optimization. Everything you wanted to know about Stored Procedures!

Advanced SQL Programming and Optimization. Everything you wanted to know about Stored Procedures! Advanced SQL Programming and Optimization Everything you wanted to know about Stored Procedures! About Soaring Eagle Since 1997, Soaring Eagle Consulting has been helping enterprise clients improve their

More information

2. Recovery models ->

2. Recovery models -> 1. Database structure -> Chapter 3 -> Database architecture -> Subchapter 3.1 2. Recovery models -> https://docs.microsoft.com/en-us/sql/relational-databases/backuprestore/recovery-models-sql-server?view=sql-server-2014

More information