Posts

Posts uit april, 2016 tonen

MS Sql 70-461: Chapter 15

Afbeelding
Les 1 Als een object over de 8 pages komt reserveert Sql Server uniform extents voor dit object. Met deze organisatie wordt door kleine objecten weinig ruimte verspild en grote objecten zijn minder gefragmenteerd. Heaps en balanced trees Pages zijn fysieke structuren. Sql Server organiseert data in pages in logische structuren. Sql Server organiseert tabellen als heaps of als balanced trees . Een tabel die is georganiseerd als een balanced tree wordt ook wel een clustered table of clustered index genoemd. Indexes zijn altijd georganiseerd als balanced trees. Andere indexes zoals indexes die niet alle data bevatten en dienen als pointers naar rijen in tabellen voor snelle seeks heten non-clustered indexes. Heaps Een heap is een eenvoudige structuur. Data in een heap is niet georganiseerd in geen enkele logische volgorde. Een heap is gewoon een (ongeordende) stapel van pages en extents. Een speciaal systeem genaamd Index Allocation Map (IAM) pages wordt door Sql Server g

MS Sql 70-461: Chapter 14

Afbeelding
Les 1 Query optimization problems and the query optimizer Op eenvoudige queries na, kan een query op vele manieren worden uitgevoerd. Het aantal manieren hangt van de complexiteit van de query. Sql Server kan een join op verschillende manieren uitvoeren. Het kan dan gebruik maken van de volgende algoritmes Nested loops Merge Hash Bitmap Filtering Optimized Hash (ook wel Star Join optimization genoemd) Onderstaande afbeelding geeft aan hoe Sql Server een query uitvoert: Alle stappen op execution na, worden uitgevoerd door de relational engine. De relational engine is een intern component die op logisch niveau werkt. De daadwerkelijke uitvoering van een query wordt uitgevoerd door de execution engine van de relational engine samen met de storage engine. De storage engine voert de fysieke handelingen uit. In het kort:de Query Optimizer (QO) moet een transformatie doen van logische naar fysieke operatoren. De QO kan enkel physical operators gebruiken die de storage

MS Sql 70-461: Chapter 13

Les 1 Stored procedures(sp's) zijn routines die zijn opgeslagen in de database en bevatten code. Sql Server kent verschillende soorten sp's: T-Sql stored procedures, geschreven in T-Sql CLR stored procedures, opgeslagen als Microsoft .NET assemblies in de database Extended stored procedures, welke externe dll's aanroepen. Understanding stored procedures Een SP bestaat uit een enkele batch met T-Sql code. Features van een SP zijn: Ze kunnen worden aangeroepen door het EXEC command Parameters kunnen meegegeven worden als input parameters, maar SP's ondersteunen ook OUTPUT parameters Ze kunnen een result terug als resultaat teruggeven Ze kunnen data in tabellen aanpassen Ze kunnen tabellen en indexen aanmaken, wijzigen en verwijderen Voordelen van een SP: Herbruikbaarheid. Een SP kan vanaf verschillende plekken worden aangeroepen met parameters. Ze kunnen de DB veiliger maken. Er kunnen rechten op SPs worden uitgedeeld De gebruikers hoeft de o

MS Sql 70-461: Chapter 12

Afbeelding
Les 1 Understanding transactions Alle wijzigingen op een DB vinden in Sql Server vinden plaats binnen een transactie. Dit betekent dat alle wijzigingen worden doorgevoerd, of geen. Op deze manier zorgt de Relational Database Management System (RDMS) er voor dat de integriteit van de data gewaarborgd blijft. Alle operaties die in welke manier dan ook schrijven in de DB worden door Sql Server als een transactie beschouwd. Dit bevat: - Alle Data Manipulation Language (DML) statements, zoals INSERT, UPDATE en DELETE - Alle Data Definition Language (DDL) statements, zoals CREATE TABLE en CREATE INDEX Als een transaction is goedgekeurd door de user, dan voert Sql Server een commit uit op de transactie. Als er fouten optreden, dan treeft er een rollback op. ACID properties of transactions In relationele database wordt de ACID acroniem gebruikt om de eigenschappen van transacties te beschrijven. ACID staat voor: - Atomicity: Elke transactieis een atomische unit of work.