ronua-partitionare tabele

20
TechEd Review Roadshow 2010 Filiala Brașov 1 4 DECEMBRIE 2 0 1 0 Bine ai venit la

Upload: tgorun

Post on 03-Jul-2015

115 views

Category:

Documents


2 download

TRANSCRIPT

TechEd Review Roadshow 2010Filiala Brașov1 4 DECEMBRIE 2 0 1 0

Bine ai venit la

Partiționarea tabelelor - SQL ServerFlaviu BOLDEAProject Manager, AWINTA CONSULTING

14.12.2010 – RONUA Brașov

Cine sunt?− Lucrez la firma: Awinta Consulting SRL− Funcție: Project Manager− Proiecte: Master Data Management

Ce vom acoperi azi?− Partitionarea tabelelor, functii de

partitionare, avantaje si dezavantaje.

Tools/Downloads de ajutor− MS Sql Server Developer/Entreprise

Agenda− Partitionarea tabelelor in SQL Server

2008− Studiu de caz – grup de farmacii− Ce inseamna partitionare− Componentele partitionarii

− Functii de partitionare− Schema de partitionare

− Avantaje si dezavantaje− View indexat

Studiu de caz – grup de farmacii− Se da un grup de farmacii cu caracteristicile

− Numar farmacii: 2 – 100 (plaja larga)− Import de date periodic− Export de date catre farmacii− Afisare date pe web− Export catre alte sisteme

Solutia 1− Baze de date/schema/tabele separate

pentru fiecare farmacie− Greu de intretinut− Greu de interogat− Greu de folosit− Avantaje: securitate, performante bune

interogari per farmacie

Solutia 2− Baze de date unica, set comun de

tabele cu camp identificator pentru farmacie − Usor de intretinut− Usor de interogat− Performante mai reduse la interogari− Performante mai reduse la import date

Ce facem? … Partitionam− Partitionarea imparte tabelele in

bucati mai mici si mai usor de intretinut si interogat

− Partea buna este ca SQL Server se ocupa de treaba, noi trebuie sa-I punem la dispozitie instrumentele

− SQL Server 2005/2008 Entreprise/Developer

Functii de partitionare− Defineste cum vor fi impartite dateleCREATE PARTITION FUNCTION ParteneriPartitionFunction (int) AS RANGE LEFT FOR VALUES (50, 100)

CREATE PARTITION FUNCTION ParteneriPartitionFunction (int) AS RANGE RIGHT FOR VALUES (50, 100)

50, 100 – stau la stanga

50, 100 – stau la dreapta

Schema de partitionare− Defineste spatiul de stocare pentru

fiecare partitie− Avantaje:

− Mai usor administrat (creat backup per file)

− Fisierele mai importante pot fi stocate pe medii mai rapide

− Fisierele vechi pot fi indepartateCREATE PARTITION SCHEME ParteneriPartitionScheme AS PARTITION ParteneriPartitionFunction TO (fg1, fg2, fg3)

Partitionare tabela− Schema si coloana de partitionare se

adauga in clauza ON− Functia nu mai trebuie specificata

deoarece schema contine deja functia de partitionare

CREATE TABLE Parteneri (PartenerId int PRIMARY KEY, Nume varchar(30))ON ParteneriPartitionScheme(PartenerId)

Alterarea functiei de partitionare− Nu se poate modifica direct− Modificarea se poate face folosind

SPLIT sau MERGE− SPLIT – adauga o noua limita unei

functii de partitionare care va crea un nou interval

− MERGE – uneste doua partitii

SPLIT

Trebuie adaugat si un nou filegroup care va fi folosit de noua partitie:

ALTER PARTITION FUNCTION ParteneriPartitionFunction()SPLIT RANGE (150);

ALTER PARTITION SCHEME ParteneriPartitionScheme NEXT USED 'fg4';

Avantajele partitionarii- Tabelele mari sunt mai usor de administrat- Imbunatateste performantele interogarilor

filtrate dupa partitie- Imbunatateste performantele importurilor

- Import in tabele separate si apoi switch pe partitie

- Indecsii vor fi mai putin fragmentati- Datele vechi se pot arhiva

- Datele care nu se mai modifica se pot marca ReadOnly

- Lock escalation – AUTO (2008)

Pentru mai multe informații− Partitioned Tables and Indexes

http://msdn.microsoft.com/en-us/library/ms188706.aspx

− Partitioned Table and Index Strategies Using SQL Server 2008http://technet.microsoft.com/en-us/library/dd578580(SQL.100).aspx

− New Limit for Number of Partitions in SQL Server 2008 SP2 (15.000)

http://blogs.msdn.com/b/hanspo/archive/2010/11/29/new-limit-for-number-of-partitions-in-sql-server-2008-sp2.aspx

Pentru workshop-uri și codecamp-urironua.ro/codecamp

ronua.ro/uxworkshopronua.ro/tv/opt-in-form.html

Pentru help (consultanță):fă-ți cont pe ronua.ro

Training Resources

Twitter.com/RONUAFacebook.com/RONUA

LinkedInYouTube

[email protected]

„Social”

Completati formularul electronic de feedback ce-l veti primi

în email-ul de follow-up ce va plecadupă încheierea acestui eveniment

Feedback