Vladimír Mach. @vladimirmach 2. 1. 2013

Podobné dokumenty
Bc. David Gešvindr MSP MCSA MCTS MCITP MCPD

KAPITOLA 1 Představení platformy Microsoft SQL Server 2008

SharePoint 2010 produktové portfolio a licencování

Přehled systému Microsoft SQL Server. Komu je kniha určena Struktura knihy Nejvhodnější výchozí bod pro čtení knihy Konvence a struktura knihy

Připravil: Ing. Vít Ondroušek, Ph.D. Technologie.Net Framework

Nové jazykové brány do Caché. Daniel Kutáč

Obsah. Verze SQL Serveru

PV239/WP. Vývoj univerzálních Windows Store aplikací. Mgr. David Gešvindr MCSD: Windows Store MCSE: Data Platform MCT MSP

IW3 MS SQL SERVER 2014

Vhodnost nasazení jednotlivých webových architektur, sdílení dat, perzistence, webové služby a REST, asynchronnost, messaging

2 Popis softwaru Administrative Management Center

manažerského řízení HW a SW požadavky pro sw ATTIS

Technologie počítačových sítí 1. cvičení

Novinky v Microsoft SQL Serveru RNDr. David Gešvindr MVP: Data Platform MCSE: Data Platform MCSD: Windows Store MCT

Statistica, kdo je kdo?

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework

BankKlient. FAQs. verze 9.50

Workshop Exact Software CEE

TECHNICKÉ PODMÍNKY. Článek 2. Podmínky pro službu MojeBanka, MojeBanka Business, MojePlatba,Expresní linka Plus a TF OnLine

Platformy / technologie. Jaroslav Žáček jaroslav.zacek@osu.cz

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

Příprava k certifikaci , TS: Windows 7, Configuring

STUDIJNÍ MATERIÁL PRO TECHNICKOU CERTIFIKACI ESET Business Edition, ESET Remote Administrator

Informační systémy 2008/2009. Radim Farana. Obsah. Jazyk SQL

.NET v SQL Serveru. Jan Drozen NDBI039.

WCF RIA Services. aneb jak na RIA aplikace v Silverlightu

1. SYSTÉMOVÉ POŽADAVKY / DOPORUČENÁ KONFIGURACE HW A SW Databázový server Webový server Stanice pro servisní modul...

Tipy technické podpory 2015

aniel Dvořák, Martin Mičan Liberec Windows Server 2012/R2 Migrační scénáře

Obsah OLAP A ESO9... 3

IBM Informix 11.7 Edice

Diagnostika webových aplikací v Azure

Informační systém pro rezervaci pokojů hotelu SPORT

Compatibility List. GORDIC spol. s r. o. Verze

Databáze v praxi. RNDr. Ondřej Zýka Principal Consultant

Relační databáze a povaha dat

SW ATTIS nástroje. HW a SW požadavky pro sw ATTIS. manažerského řízení. Verze manuálu: 3.5 Datum:

Informační systémy 2008/2009. Radim Farana. Obsah. Základní principy XML

Srovnání SQL serverů. Škálovatelnost a výkon. Express Workgroup Standard Enterprise Poznámky. Počet CPU bez limitu Obsahuje podporu

Programování a implementace Microsoft SQL Server 2014 databází

2. přednáška. Databázový přístup k datům (SŘBD) Možnost počítání v dekadické aritmetice - potřeba přesných výpočtů, např.

Michal Hroch Server Product Manager Microsoft Česká republika

Tabulka Nabídková cena za předmět plnění *uchazeč vyplní cenu za celý kurz nebo cenu za 1 účastníka dle zadávací dokumentace a nabídky uchazeče

Průvodce instalací aplikace MIPS

TS-509 Pro Turbo NAS. instalační příručka

Návod k softwaru BTML_FG_CE5_V4 pro PDA

Maturitní témata z předmětu PROGRAMOVÉ VYBAVENÍ pro šk. rok 2012/2013

Instalace. Produkt je odzkoušen pro MS SQL server 2008 a Windows XP a Windows 7. Pro jiné verze SQL server a Windows nebyl testován.

Příloha č.2 - Technická specifikace předmětu veřejné zakázky

APS 400 nadministrator

Transakce a zamykání. Administrace MS SQL Serveru (NDBI039) Pavel Hryzlík

O Apache Derby detailněji. Hynek Mlnařík

Technologie Java. Jaroslav Žáček

Ope p r e a r čn č í s ys y té t m é y y Windo d w o s Stručný přehled

INSTALACE DATABÁZE ORACLE A SYSTÉMU ABRA NA OS WINDOWS

C# - Databáze úvod, ADO.NET. Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí

Windows 2008 R2 - úvod. Lumír Návrat

Windows Server Novinky. Petr Špetlík Cloud & Server PTA

Databázová řešení IBM

ArcGIS Server 10.1/10.2

Instalace SQL 2008 R2 na Windows 7 (64bit)

Stěhování aplikací. Michal Tomek, Sales Manager

Instalujeme a zakládáme databázi Oracle Database 11g

Vývoj univerzálních aplikací pro Windows 10. Mgr. David Gešvindr MCSD: Windows Store MCSE: Data Platform MCT MSP

Optimalizace dotazů a databázové transakce v Oracle

Obsah. Základy práce s databází 13. Tabulky 43. Obsah. Úvod 9 Poděkování 12

2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE

EPLAN Electric P8 2.7 s databázemi na SQL serveru

Průvodce instalací a spuštěním. Pro DataPage+ 2012

Infor ERP Baan / ERP LN. Návaznost podporovaných OS na implementované SP a FP. Zdeněk Špidla

Spisová služba a zákon 300/2008 Ladislav Kleman, Petra Benediktová

Acronis Backup Advanced Version 11.7

Název Popis Lhůta. dne Odmítnuté platby Zobrazení, tisk a export seznamu odmítnutých plateb. Informace připraveny k vyzvednutí z bankovního

Programátorské večery. Tomáš Herceg Microsoft Student Partner

Stopařův průvodce po ADO.NET a LINQ aneb Foxařův průvodce po práci s daty v.net Milan Kosina

Společnost Xerox vytváří škálovatelné, hostované řešení pro optimalizaci globální správy tiskových aktiv

Technická dokumentace

Postup instalace ČSOB BusinessBanking pro MS SQL 2005/2008

InnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) CSV v textovém souboru ve formátu hodnot oddělených čárkou

INSTALACE SOFTWARE A AKTIVACE PRODUKTU

QuarkXPress soubor ReadMe

Univerzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 10.4.

Architektura DBMS. RNDr. Ondřej Zýka

Úvod Seznámení s předmětem Co je.net Vlastnosti.NET Konec. Programování v C# Úvodní slovo 1 / 25

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

Nové licencování databází Informix

Souborový systém (File System FS) Souborové systémy. Souborová fragmentace. Disková fragmentace. Organizace dat na pevném disku

Databázové systémy trocha teorie

KIV/PIA 2013 Jan Tichava

Microsoft Sync Framework. Jiří Činčura blog.cincura.net

Univerzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 12.2.

FRED & PostgreSQL. CZ.NIC, z.s.p.o. Jaromír Talíř <jaromir.talir@nic.cz>

QuarkXPress soubor ReadMe

Popis licencování, nastavení a ovládání replikací - přenosů dat

1 - Úvod do platformy.net. IW5 - Programování v.net a C#

Cloudové řešení pro ŠKODA AUTO

IBM TRIRIGA Application Platform Verze 3 Vydání 4.2. Příručka instalace a implementace

Nasazení EIS JASU CS v rezortu Ministerstva zdravotnictví ČR vč. všech podřízených OSS

Transkript:

Vladimír Mach @vladimirmach 2. 1. 2013

SQL Server Compact Edition Jednoduchá relační databáze Použití i v malých zařízeních s omezenými zdroji Dříve pod názvem SQL Server Mobile Časté využití při programování v ASP.NET Ve VS 2012 jako výchozí databázové úložiště Distribuované zdarma Může podporovat ACID u transakcí Ve výchozím nastavení nesplňuje poslední podmínku Durability Je potřeba změnit chování při commitu pomocí odpovídajícího flagu

Jak SQL CE běží Neběží jako systémová služba Je součástí dané aplikace, tedy v rámci jejího procesu a paměťového prostoru Není nutné instalovat nic dalšího pro použití databáze (Private Deployment) Výjimkou je Microsoft Visual C++ 2008 Runtime Libraries (x86 and x64) SP1 Spouští se jen když se přistupuje k datovým souborům Vyžaduje cca 5 MB paměti a 1,4 MB diskového prostoru

Scénáře použití SQL CE Databáze jen jako hloupé úložiště SQL CE nepodporuje uložené funkce, pohledy nebo procedury Malý objem ukládaných dat Maximální velikost databáze je omezena na 4 GB Malá zátěž Hodně čtení a málo zápisů Zjednodušení distribuce aplikace Pro nasazení SQL CE databáze stačí s vaší aplikací distribuovat několik DLL knihoven Zjednodušení konfigurace aplikace Stačí správně nastavit connection string, aby směřoval na patřičný soubor na disku

Maximální počet současných spojení omezen na 256 Z praktického hlediska se doporučuje maximálně 70-80 kvůli výkonu Formát databáze Celá databáze je uložena v jednom souboru s příponou SDF Pro přístup do souboru s databází lze použít Visual Studio (pro verzi 4.0) SQL Server Management Studio není poslední verzí podporováno Podporuje více spojení do stejné databáze (.sdf souboru) v rámci jedné nebo více aplikací Pouze lokálně na stejném počítači

Formát databáze (2) Přístupová práva podle rolí na úrovni tabulek nejsou implementována Pro docílení jednoduchosti a rychlosti databázového jádra Na úrovni databáze jdou zajistit pomocí heslem chráněného přístupu Zabezpečení uložených dat na disku jde docílit pomocí šifrování databáze Databáze je rozdělena na 4 kb stránky Každá stránka má svůj kontrolní součet Počítán a uložen při zápisu stránky na disk Časem může dojít k fragmentaci databáze

Přístup do databáze Pro použití databáze stačí do connection string přidat atribut Data Source Data Source="D:\MyApp\Mydb.sdf" Speciální DataDirectory vlastnost Data Source=" DataDirectory \Mydb.sdf" Hodnota se nastavuje pomocí volání AppDomain.SetData Pokud není nastavena, přiřazuje se podle následujících pravidel V aplikacích běžících na lokálním disku se použije adresář ve kterém je aplikace umístěna V aplikacích instalovaných pomocí ClickOnce se vytvoří nová datová složka V.NET Compact Framework není metoda AppDomain.Setdata podporovaná

Administrace databáze Pro správu databáze jsou dostupná volání pro administrativní úkony v SqlCeEngine AutoShrink Verify Repair Compact AutoFlush Zálohování

AutoShrink Jak se databáze mění, mohou některé stránky obsahovat nevyužitý prostor nebo se vyskytovat celé nevyužité stránky Nevyužité stránky jsou znovupoužity pomocí AutoShrink mechanismu AutoShrink posouvá stránky v souboru tak, aby nevyužité stránky byly souvisle na konci souboru Prázdné stránky jsou následně odstraněny úplně Nezaplněné stránky jsou následně k dalšímu využití

Compact Prázdné místo uvnitř stránek může být znovu použito pouze po zavolání metody Compact Je vytvořena nová databáze a indexy Čtou se čtou řádky z databáze a zapisují do nové cílové databáze Data jsou zapisována za sebou, bez mezer v původním souboru Jednotlivé stránky tabulky jsou přeorganizovány a uloženy souvisle

Verify Zavoláním Verify na SqlCeEngine přepočítá kontrolní součty všech stránek Ověří, jestli nově spočítané odpovídají původním Vrací true/false Pokud false, je vhodné na databázi spustit Repair metodu

Repair Zavolání Repair na SqlCeEngine opět počítá kontrolní součty všech stránek Pokud spočítaný neodpovídá původnímu je stránka označena za poškozenou Pokud byl použit flag RepairOption.DeleteCorruptedRows budou všechny poškozené stránky odstraněny Pokud byl použit flag RepairOption.RecoverCorruptedRows databáze se pokusí data přečíst, znovu zapsat a přepočítat kontrolní součet Použití RepairOption.RecoverCorruptedRows může zachránit více dat, ale nezaručuje, že obnovená data budou logicky správná

AutoFlush Při změně databáze během transakce jsou změny uloženy v buffer poolu dokud transakce neskončí Pokud selže, změny jsou zahozeny Při commitu se změny zviditelní ostatním, ale nejsou nutně hned uloženy do databázového souboru Pokud dojde k neočekávanému konci aplikace, nemusí být všechny commitované změny zaznamenány a budou zapomenuty Dokončená transakce jsou ale vždy zapisovány na disk v pořadí commitu I přes ztrátu transakce je databáze vždy v konzistentním stavu

Zálohování databáze Pro zálohování databáze stačí využít souborový systém Záloha databáze Zavřít všechna spojení k databázi a zkopírovat.sdf soubor Obnovení databáze Zkopírovat zálohovaný.sdf soubor na původní umístění Zrušení databáze Smazat.sdf soubor z disku

Součásti SQL CE Fialová volitelné podle přístupu např. C/C++/native Vs C#/VB.NET/.NET/Managed Zelená plně volitelné podle scénáře použití Modrá povinné

Součásti SQL CE Komponenta Storage Engine Query Processor OLEDB Provider DB Utilities Managed Extensions ADO.NET Provider Also known as ADO.NET v2 Provider Merge Replication Remote Data Access Sync Services DLL knihovna sqlcese35.dll sqlceqp35.dll sqlceoledb35.dll sqlcecompact35.dll sqlceme35.dll System.Data.SqlServerCe.dll sqlceca35.dll sqlceca35.dll Microsoft.Synchronization.Data.SqlServerCe.dll Microsoft.Synchronization.Data.dll Microsoft.Synchronization.Data.Server.Dll LINQ/SQL LINQ/Entities - Also known as ADO.NET v3 Provider, Entity Framework Žádná samostatná knihovna System.Data.SqlServerCe.Entity.dll

Různé verze SQL CE Předchozí verze je 3.5 Aktuální verze je 4.0 SP1 Tato verze nepodporuje veškerou funkcionalitu verze 3.5 Data Replikace pomocí Sync Framework SQL Server Integration services Připojení z SQL Management Studia LINQ to SQL Není podporované v mobilních zařízeních (WP, WM, Windows CE) Různé verze SQL CE mohou být nainstalovány na stejném počítači

Omezení T-SQL v SQL CE Oproti velkému SQL serveru omezená podpora T-SQL Podporováno pouze SET DEFAULT možnost v ALTER TABLE HAVING pouze pro jeden sloupec TOP pouze pro [0,MAX_INT] UPDATE STATISTICS ON <TABLE NAME> Přejmenování databázového objektu pomocí 'AS'. Změna vlastnosti IDENTITY (seed a step) pomocí ALTER TABLE Datové typy představené v SQL 2008 Date, DateTime, DateTimeOffset, Geography, Geometry, HierearchyID, Time

Budoucnost SQL CE Plně podporováno v ASP.NET projektech jako výchozí databáze u ASP.NET WebMatrix Plně podporováno Entity Frameworkem Jediná databáze na platformě Windows Phone Pouze ve verzi 3.5 a s přístupem LINQ to SQL Verze 4.0 LINQ to SQL nepodporuje SQL CE není podporováno v Windows 8 Modern UI aplikace (WinRT) Silverlight, s výjimkou Windows Phone

LocalDB LocalDB je plnohodnotný SQL Server Express Je spouštěn přímo z klienta Není náhradou Express edice Vylepšení vlastnosti User instance SQL Express Snaha o jednoduché použití jako SQL CE ale při zachování plné kompatibility s plným SQL Serverem.

LocalDB vs. SQL CE Nejdůležitější rozdíly mezi LocalDB a SQL CE Vykonávání SQL CE je in-process DLL knihovna LocalDB běží jako samostatný proces Využití diskového prostoru SQL CE zabírá cca 4 MB na disku LocalDB instalace zabere okolo 140 MB Schopnosti SQL CE nabízí pouze základní relační databázi LocalDB nabízí širší možnosti použití, například XML datový typ

Srovnávací tabulka Vlastnost SQL CE 4.0 Velikost instalace SQL Server Express 2012 SQL Server 2012 LocalDB 2.5 MB instalátor 120 MB instalátor 32 MB instalátor 18 MB na disku > 300 MB na disku > 160 MB na disku Private installation, jako součást aplikace Ano Ne Ne Instalace bez admin oprávnění Ano Ne Ne Běh jako in-process s aplikací Ano Ne Ne (jako proces spuštěný aplikací) Souborový formát Jeden soubor Více souborů Více souborů Maximální velikost DB 4 GB 10 GB 10 GB XML úložiště Ano / uloženo jako ntext Ano Ano Binarní (BLOB) úložiště Ano / uloženo jako image Ano Ano Podpora FILESTREAM Ne Ano Ne Transact-SQL základní Ano Ano Ano Procedural T-SQL - Select Case, If Ne Ano Ano LINQ to SQL Ne Ano Ano Nativní XML, XQuery/Xpath Ne Ano Ano Uložené procedury, pohledy, triggery Ne Ano Ano Počet souběžných spojení 256 Neomezeno Neomezeno (jen lokálně)

Připojení k LocalDB Pokud se klientská aplikace připojuje přes connection string Data Source=(localdb)\v11.0 Poskytovatel spojení nejprve ověří, jestli instance LocalDB pro aktuálního uživatele už je spuštěna Pokud ano, připojí se k ní Pokud ne, spustí novou Connection string pro typické použití Data Source=(localdb)\v11.0;Integrated Security=true; AttachDbFileName=C:\MyData\Database1.mdf LocalDB běží ve vlastním procesu Sdílí ovšem stejný security context jako aplikace, která jej používá

Zdroje Everything SQL Server Compact http://erikej.blogspot.co.uk/ SQL CE Binaries - Details http://blogs.msdn.com/b/laxmi/archive/2009/10/07/sql-ce-binariesdetails.aspx Technical Reference http://msdn.microsoft.com/en-us/library/bb686876(v=sql.110).aspx Data Storage Architecture with SQL Server 2005 Compact Edition http://msdn.microsoft.com/en-us/library/bb380177.aspx Maintaining Databases (SQL Server Compact Edition) http://msdn.microsoft.com/en-us/library/ms172411(v=sql.90).aspx Differences Between SQL Server Compact and SQL Server http://msdn.microsoft.com/en-us/library/bb896140.aspx