PostgreSQL upgrade včera, dnes a zítra. Zdeněk Kotala Revenue Product Engineer Sun Microsystems



Podobné dokumenty
Full-textové vyhledávání. Július Štroffek Revenue Product Engineer Sun Microsystems

Archivace relačních databází

Provozní řád zálohování virtuální infrastrukury

Digitalizace a Digitální archiv Státního oblastního archivu v Třeboni po čtyřech letech. Výsledky a perspektivy dalšího vývoje

Lekce 9 - Migrace dat

Modul. Univerzální tabulkový export

DigiDepot: JPEG 2000 jako ukládací formát

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím

ProjectWise V8 XM Edition

Zálohování a obnova databáze. Kryštof Měkuta

Obsah. Kapitola 1. Kapitola 2. Kapitola 3. Kapitola 4. Úvod 11. Stručný úvod do relačních databází 13. Platforma 10g 23

UDS for ELO. Univerzální datové rozhraní. >> UDS - Universal Data Source

RNDr. Michal Kopecký, Ph.D. Department of Software Engineering, Faculty of Mathematics and Physics, Charles University in Prague

E-learningovýsystém Moodle

Souborové systémy a práce s daty David Antoš

manuscriptorium Manuscriptorium v Evropě Manuscriptorium.com

Základní popis Toolboxu MPSV nástroje

Mendeley. Barbora Ševčíková říjen mendeley.com

Obsah SLEDOVÁNÍ PRÁCE... 4

Zpětná vazba od čtenářů 11 Dotazy 11 Zdrojové kódy ke knize 11 Errata 11 Typografické konvence použité v knize 12

Konsolidace zálohování a archivace dat Připojení k DÚ CESNET

Internetový obchod ES Pohoda Web Revolution

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

Active Directory Replikace, hlavní operační servery, topologie

Kerio IMAP Migration Tool

automatická správa úložiště

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

RadioBase 3 Databázový subsystém pro správu dat vysílačů plošného pokrytí

ProArc. open source řešení pro produkci a archivaci digitálních dokumentů. Martina NEZBEDOVÁ Knihovna AV ČR, v. v. i., Praha nezbedova@knav.

M4 PDF rozšíření. Modul pro PrestaShop.

Monitoring SQL Server, Resource Governor, Tracing SQL Server

Jak se povedl přechod na verzi ArcGIS 10 v Pražské plynárenské?

INFORMAČNÍ SYSTÉMY PRO KRIZOVÉ ŘÍZENÍ INFORMAČNÍ SYSTÉMY A JEJICH VYUŽITÍ PRO KRIZOVÉ ŘÍZENÍ

Lotus Quickr - ECM Integrace s LD/LN aplikacemi. Ing. Josef Homolka VUMS Legend

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

Healtcheck. databáze ORCL běžící na serveru db.tomas-solar.com pro

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

KOMPONENTY APLIKACE TreeINFO. Petr Štos ECM Business Consultant

VYSOKÁ ŠKOLA BÁŇSKÁ TECHNICKÁ UNIVERZITA OSTRAVA FAKULTA STROJNÍ DATABÁZOVÉ SYSTÉMY ARCHITEKTURA DATABÁZOVÝCH SYSTÉMŮ. Ing. Lukáš OTTE, Ph.D.

Replikace je proces kopírování a udržování databázových objektů, které tvoří distribuovaný databázový systém. Změny aplikované na jednu část jsou

Informační systém webhostingu

Pražská energetika, a.s.

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

PostgreSQL. Podpora dědičnosti Rozšiřitelnost vlastní datové typy. Univerzální nasazení ve vědecké sféře

B Organizace databáze na fyzické úrovni u serveru Oracle

Ovládání MZK Terminalu je jednoduché a intuitivní. Terminal se ovládá pěti tlačítky.

Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U

Databázové systémy Cvičení 5.2

Instalujeme databázový server PostgreSQL

FIREBIRD relační databázový systém. Tomáš Svoboda

TSM for Virtual Environments Data Protection for VMware v6.3. Ondřej Bláha CEE+R Tivoli Storage Team Leader. TSM architektura IBM Corporation

Bi-Direction Replication

Zálohování dat a disaster recovery

Alcatel-Lucent. NMS OmniVista Účtování a zprávy. Ing.Martin Lenko listopad 2012

Databázové a informační systémy

BM Software, Databáze Docházky 3000 na NAS serveru (pro MySQL) Němčičky 84, Němčičky u Břeclavi. Úvodní informace:

Manuál Multitag čtečka

Struktura pamětí a procesů v DB Oracle. Radek Strnad

Úvodem 9. Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10. Než začneme 11

Experimentální systém pro WEB IR

Kurz je rozdělen do čtyř bloků, které je možné absolvovat i samostatně. Podmínkou pro vstup do kurzu je znalost problematiky kurzů předešlých.

Versiondog Co je nového

CineStar Černý Most Praha

CATIA V5 R19 SP3 HF04 (GRC 4.0.0, červen 2009)

Střední odborná škola a Střední odborné učiliště, Hořovice

Integrovaný systém správy sbírek. David Cigánek, Moravské zemské muzeum CITeM

Efektivní ochrana dat ve virtualizovaném prostředí. Marek Bradáč

Používá paměťová média pro přenos dat mezi počítači, vyjmenuje nejpoužívanější paměťová média.

8.2 Používání a tvorba databází

Pro označení disku se používají písmena velké abecedy, za nimiž následuje dvojtečka.

Metadata. MI-DSP 2013/14 RNDr. Ondřej Zýka,

Ukládání a archivace dat

Ukázka knihy z internetového knihkupectví

egovernment 2009 Ing. Pavel Tykal

Digitalizace dokumentů bez problémů Xerox ScanFlow Store & WorkCentre 74xx

OBSAH. Word. První spuštění a hlavní obrazovka Wordu 3 Základní nastavení Wordu 6 Kontrola pravopisu a mluvnice 8 Nastavení ukládání dokumentu 12

Kurz Databáze. Přechod na SQL server. Obsah. Vytvoření databáze. Lektor: Doc. Ing. Radim Farana, CSc.

Uživatelský návod pro zpracování geometrických plánů na webu

Registr práv a povinností

KAPITOLA 1 Úvod do zkoušky VMware Certified Professional pro vsphere 25. KAPITOLA 2 Úvod do serverové virtualizace a řady produktů VMware 43

Návod na provedení upgrade IS Harmonik

Microsoft SharePoint Portal Server Zvýšená týmová produktivita a úspora času při správě dokumentů ve společnosti Makro Cash & Carry ČR

Helios RED a Elektronická evidence tržeb (Helios RED verze 10)

Nastavení hardwarové konfigurace pro CPU 314C-2DP v programu SIMATIC Manager

2.2 Acronis True Image 19

Aplikační podpora národní inventarizace kontaminovaných míst

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Domino 10 nové komponenty a související témata (node.js, ES )

Užitečné rady pro administrátory. IBM Domino/Notes

D R U P A L V O J T Ě C H K U S W O J T H A

Podpora chytrého řízení změn nejen v oblasti geoinformatiky. Hexagon Safety & Infrastructure Jan Vaisar

Vybraná zajímavá Lotus Notes řešení použitelná i ve vašich aplikacích. David Marko TCL DigiTrade

I.CA RemoteSeal. Ing. Filip Michl První certifikační autorita, a.s

Příloha č. 3 - Požadavky na elektronickou spisovou službu

Sdílení a poskytování dat KN. Jiří Poláček

Příručka pro správu systému

TIA na dosah. Upgrade systému na verzi PCS Jan Kváč. SIMATIC PCS 7 Promoter. Tel:

Aplikace je program určený pro uživatele. Aplikaci je možné rozdělit na části:

v y z ý v á k zjednodušenému podlimitnímu řízení

Základní popis Toolboxu MPSV nástroje

Transkript:

PostgreSQL upgrade včera, dnes a zítra Zdeněk Kotala Revenue Product Engineer Sun Microsystems 1

Agenda Úvod Catalog upgrade Storage upgrade Ostatní 2

Úvod 3

Cíle Minimální výpadek Žádné další potřebné místo Bez potřeby staré verze Jednoduché k použití 4

Včera pg_dump/pg_restore > Dlouhá odstávka závislá na velikosti databáze > Nutné další místo na dump > Nevhodné pro velké databáze > Univerzální Slony > Možné upgradovat za chodu > Konfigurace není jednoduchá > Potřeba dalšího místa případně serveru 5

Dnes pg_migrator, pg_upgrade.sh > Pouze pro 8.1 na 8.2 nebo 8.3 na 8.4 > Spíše dočasné řešení > Nedokáže upgradovat tabulky se smazanými sloupečky 6

Zítra Jednoduché pg_ctl -D /var/postgres/ upgrade. V některých případech bude nutné pustit pre_upgrade skript na staré verzi. Výpadek nutný k upgradu jen několik minut. První přístup k datům bude v některých případech pomalejší a bude generovat I/O. 7

Catalog upgrade 8

Co je katalog Control file Flat file Struktura adresářů Systémové tabulky (pg_catalog) Konfigurace 9

Součásné řešení Pg_migrator nebo pg_upgrade.sh > Pouze pro 8.1->8.2, 8.3->8.4 > Problém s tablespace nutné udržet data na stejném svazku. > Problém s TOAST tabulkami (TOAST pointer) > Problém se zrušenými sloupečky v tabulkách > Závisí na privátním rozhraní 10

Jak pg_upgrade.sh pracuje* 1)Dump metadata 2)Uložení mapy relací (relfilenode<->name) 3)Export dat z control file 4)Nový databázový klastr (initdb) 5)Provede se zmražení databázového klastru 6)Kopie CLOG 7)Nastavení control file (XID,OID,XLOG...) 8)Vytvoření databází, uživatelů... *Jednoduchá verze bez tablespaců 11

Jak pg_upgrade.sh pracuje 9)Ochrana TOAST tabulek (musí mít stejné relfilenode) 10)Vytvoření tabulek, pohledů... 11)Upravení relfilenode pro TOAST tabulky a indexy 12)Kopírování a přejmenování datových souborů 13)Hotovo 12

Jak by měl upgrade vypadat pg_ctl -D /var/postgres upgrade 13

Výstup při upgradu check directory /var/postgres... ok (version 822) check subdirectories... ok creating template1 database in /tmp/pokus/base/1... ok initializing pg_authid... ok initializing dependencies... ok creating system views... ok loading system objects' descriptions... ok creating conversions... ok creating dictionaries... ok setting privileges on built-in objects... ok creating information schema... ok vacuuming database template1... ok upgrading pg_global database... ok upgrading template0... ok upgrading postgres... ok upgrading super_db... ok 14

Katalog Struktura > Pomocí postgres.bki se inicializuje template1 a pak se katalog rozkopíruje postupně do ostatních databází > Staré datové soubory katalogů je nutné uschovat, pro konverzi dat Obsah > Uživatelská metadata se převedou do nového formátu > Problém podchytit změny během vývoje, vyžaduje větší nároky na vývoj 15

Storage upgrade 16

Datové struktury BLCKSZ PageHeaderData ItemIdData TOAST_MAX_CHUNK_SIZE *MaxItemSize IndexTupleData HeapTupleHeaderData *OpaqueData varatt* 17

Graf závislosti datového úložiště XLOG(WAL) LSN LSN LSN LSN Indexes TID Heap TOAST pointer TOAST TID TOAST index XMIN XMAX CLOG XMIN XMAX 18

Problémy k řešení Žádná vazba NESMÍ být porušena! Všechny data musí být zkonvertovány při čtení > Zkonvertována data se musí vejít opět na stránku, v případě, že může dojít k této situaci, je nutné pustit preupgrade fázi na staré databázi, který zajístí místo > Pokud tuple obsahuje TOAST data, musí se provést také konverze těchto dat. > TOAST tabulky nejdou konvertovat přímo, poněvadž neobsahují informaci o datovém typu. Navíc jedna stránka může být sdílena více různými daty. 19

Jak to funguje ReadBuffer() smgr_rd() Vytvoř novou stránku PageInit() Načti tuple ze staré stránky Zkonvertuj tuple Ulož tuple na novou stránku PageAddItem() Nahraď starou stránku novou Zapiš WAL 20

A jak vypada kód Konvertor hook v ReadBuffer_common { } smgrread(reln->rd_smgr, blocknum, (char *) bufblock); /* Page Layout Convertor hook. We assume that page version is on same place. */ if( plc_hook && PageGetPageLayoutVersion(reln,bufBlock)!= PG_PAGE_LAYOUT_VERSION ) { plc_hook(reln, (char *)bufblock); bufhdr->flags = (BM_DIRTY BM_JUST_DIRTIED); log_newpage(&reln->rd_node, blocknum,bufblock); } 21

Space reservation Space reservation slouží k rezervaci volného místa, které bude nutné při konverzi stránky do nového formátu Velikost potřebného místa závisi na relaci Součást preupgrade fáze a je nutné pustit před upgradem Neovlivní dostupnost staré databáze Kód bude backporotván, jakmile vyjde nová verze 22

Ostatní 23

Uložené procedury Změny v PL jazycích > Většinou jsou zpětně kompatibilní > Případně je možné doručit starou verzi PL jazyka a rozlišovat verze > Problém s procedurami psaných v C, nutné rekompilovat Uživatelské datové typy 24

Tsearch2 Změny ve FTS konfiguraci nebo ve slovnících vyžaduje regenerovat tsvectors attributy. Bohužel není k dispozici závislost mezi tsvector attributem a originálním zdrojem. 25

A co dál? 26

References http://pgfoundry.org/projects/pg-migrator/ http://src.opensolaris.org/source/xref/sfw/usr/src/cmd/postgres/postgresql-upgrade/ http://wiki.postgresql.org/wiki/in-place_upgrade 27

PostgreSQL upgrade včera, dnes a zítra Zdeněk Kotala zdenek.kotala@sun.com 28