přejít na obsah přejít na navigaci

Linux E X P R E S, Reportáž: Prague PostgreSQL Developers' Day 2013

Reportáž: Prague PostgreSQL Developers' Day 2013

postgresql.png

Po podzimní „velké“ (celoevropské) konferenci věnované databázovému systému PostgreSQL se nyní konala ta jednodenní česká, známá pod zkratkou P2D2. Program byl nabitý zajímavými přednáškami a snad každý si tu mohl najít to své.


Letos v květnu

Tradičním termínem konání konference Prague PostgreSQL Developers' Day (P2D2) bývá únor, v letošním roce se konference výjimečně konala až v květnu. Souviselo to s tím, že Praha koncem loňského října přivítala velkou, celoevropskou konferenci PostgreSQL Conference Europe. Její přípravy znamenaly pro CSPUG (Czech and Slovak PostgreSQL Users Group) a zejména pro její představitele Tomáše Vondru a Pavla Stěhuleho velké nasazení. Příští P2D2 už se bude konat opět v tradičním únorovém termínu.

dvere

Přečtěte si reportáž z pražské PostgreSQL Conference Europe: středa, čtvrtek, pátek, související rozhovory.

pred-konferenci

Konference začíná

Konference P2D2 se konala na obvyklém místě, tedy v budově Matematicko-fyzikální fakulty Univerzity Karlovy na Malostranském náměstí (bývalý Profesní dům postavený Jezuity). Program začal ranním workshopem ještě před prezencí. Při prezenci každý účastník „vyfasoval“ skleněný hrnek – jak jinak, než se slonem typickým pro PostgreSQL. Po celý den byla možnost zakoupit trička a další propagační předměty.

hrnek

Samotnou konferenci zahájil příchod modrého slona do téměř zcela zaplněného sálu. Slon zcela zaslouženě získal velký potlesk, který pokračoval i poté, že se uvnitř slona nachází Tomáš Vondra. Ten se vzápětí – ještě částečně ve „sloním“ – ujal úvodního slova. Kromě organizačních záležitostí se věnoval hlavně zhodnocení podzimního pořadatelství evropské konference (považoval tuto konferenci za velmi povedenou, s čímž z pohledu účastníka zcela jednoznačně souhlasím).

slon

Přednášky

Novinky a vylepšení v PostgreSQL 9.3

Rychlým tempem se blíží vydání PostgreSQL verze 9.3 (v době konference je ve fázi Beta 1) a proto Pavel Stěhule představil to nejvýznamnější, co tato verze přináší. Z provozního hlediska jsou to tři věci. V první řadě je to vylepšení zamykání s rozlišení na klíčové a neklíčové atributy. Cílem je zvýšit výkon v případech, kdy se používá referenční integrita a zabránit situacím, kdy by mohlo dojít k deadlocku.

Druhou provozní novinkou jsou kontrolní součty datových stránek. Řada databázových systémů je má už dávno, u PostgreSQL to byla věc nízké priority, protože integritu na této úrovni běžně řeší úložné zařízení a souborový systém. Nicméně vzhledem k tomu, že po této funkci byla poptávka, dočkala se implementace. Třetí z těchto novinek je mnohem jednodušší rekonfigurace slaves v případě výpadku mastera (u master-slave replikace, kdy je více než jeden slave). Dosud to znamenalo relativně složité ruční nastavování.

replikace

Z pohledu vývojářského je ve verzi 9.3 novinek ještě podstatně víc. Například aktualizovatelné a materializovatelné pohledy jsou věci, které v PostgreSQL dlouhodobě chyběly a musely se určitým způsobem emulovat (aktualizovatelné pohledy pomocí triggerů INSTEAD, materializovatelné pomocí CREATE TABLE AS apod.). Přibyla také klauzule LATERAL (umožňující použít výsledek jednoho dotazu v jiném na stejné úrovni vnoření), DDL triggery (reagující na změny v definici dat, např. vytvoření tabulky), parser pro JSON (výhodný pro přímý přístup k datům v JSON notaci uvnitř atributu), pracovní procesy běžící na pozadí (odpadá nutnost volat databázové operace např. z cronu) nebo podpora aktualizace dat ve FDW (dosud byly jen ke čtení).

Změny se odehrály i směrem ke většímu výkonu – byly zrychleny operace s typem NUMERIC, přibyly statitiky pro typ RANGE, indexy pro regulární výrazy a unlogged (tj. nejdoucí přes transakční log – při havárii jsou odstraněny) GiST indexy.

Na závěr přednášky přišla i krátká ukázka toho, co se očekává pro verzi 9.4. Kromě různých výkonových optimalizací je to například zabezpečení na řádkové úrovni nebo možnost vnořování typu HSTORE (hashová mapa v atributu, zatím je jen jednoúrovňová).

Verzování a publikace dat na webu za pomoci PostgreSQL

Na druhou přednášku nastoupil Jan Pěček s cílem ukázat řešení, které se v mediální skupině MAFRA implementuje pro účely katalogu firem TOPkontakt.cz. Katalog funguje tak, že může změny v datech provádět buď operátor nebo přímo daná firma, přičemž každá změna podléhá schvalovacímu procesu (kdy je možné ji schválit nebo zamítnout) a je třeba ukládat kompletní historii změn. Data se nepublikují na web přímo, exportují se do jiné databáze s tím, že se ještě slučují z daty z jiných zdrojů.

pecek

Při implementaci bylo třeba řešit několik významných problémů. První je tzv. „problém uživatele“ – tedy jak zajistit, aby spouštěné triggery věděly, kdo aktuálně provádí změny. Řešení je několik, například namapování aplikačních uživatelů na databázové, dočasná tabulka, použití PL/Perl nebo custom_variable_classes. Každé řešení má své výhody a nevýhody, každé se hodí v jiné situaci.

Druhým problémem, s nímž se vývojáři potýkali, byl výběr vhodného řešení pro ukládání verzí. Opět je tu více možností, zvoleno bylo ukládání jednotlivých hodnot (z různých sloupců v různých tabulkách) do jediné „žurnálové“ tabulky, a to ve formě nově deklarovaného typu changeset, skládajícího se z názvu sloupce, ze staré a nové hodnoty. Pro tento typ byla vytvořena funkce na test rovnosti a nadeklarován příslušný operátor.

Při implementaci bylo potřeba si dát pozor hlavně u revertování změn (vrácení zpět při neschválení apod.) – na zajištění integrity a konzistence dat, řádnou implementaci výjimek z obecných pravidel atd. Do budoucna se také počítá s tím, že současný stav, kdy se z takto fungující databáze PostgreSQL data k publikaci na web přenášejí do MySQL, změní na výhradní použití PostgreSQL a celý systém bude snadněji spravovatelný (úplně původní řešení dokonce mělo MySQL jako základí databázi a na web se publikovat přes Firebird, později proběhlo několik změn do současného stavu).

Pagination Done the PostgreSQL Way

Jediným zahraničním hostem konference byl letos Markus Winand (v dřívějších letech bývali obvykle dva přednášející ze zemí mimo ČR a SR). Je mimo jiné autorem knihy SQL Performance Explained, která se neváže ke konkrétní databázi a je zajímavá pro každého, kdo to myslí vážně s laděním výkonu databází. Markus přednášel samozřejmě anglicky, ale drtivá většina účastníků zjevně neměla žádné problémy s porozuměním přednášce.

soustredeni

Přednáška byla věnována problematice stránkování výsledků dotazů z hlediska výkonu. Oblíbené klauzule LIMITOFFSET vedou totiž na doslova prachbídný výkon, což se projevuje při dotazech na tabulky s větším množstvím dat. Příčinou je způsob, jakým se s daty pracuje. Ani příliš nepomáhá, pokud je k dispozici index (přestože k určitému zrychlení dojde) – operační složitost je vždy v zásadě lineární a na reálných datech mohou dotazy trvat skutečně dlouho.

Stránkování lze podstatně vylepšit tím, že se pomocí WHERE z výsledků předem odstraní ta data, která se objevila na předchozích stránkách (např. pokud se řadí podle času vzestupně, odstraní se všechny řádky se starší časovou hodnotou). Lze využít i porovnávání tzv. řádkových neboli kompozitních hodnot (podpora v PostgreSQL je od verze 8.0; výrazně se tím zjednodušuje zápis složitějších podmínek).

Toto řešení přináší výrazné zvýšení rychlosti i bez indexu na řadicích sloupcích (i když lineární složitost zůstává), zvlášť dobré výsledky však dosahuje v kombinaci s indexem. Má však také nevýhody – tou hlavní je, že ho lze použít pouze při postupném stránkování. Nelze libovolně skákat po stránkách, protože pak neznáme hodnoty z předchozích stránek.

Co s tím? Jednou z „elegantních“ možností je nahradit klasické stránkování postupným rozbalováním obsahu, jak ho známe například ze sociálních sítí a mnohých dalších webů. Tam se další stránky načítají vždy postupně a není potřeba se vracet zpět (předchozí stránky jsou již načteny výše).

Na závěr přišlo malé rýpnutí do jiných databází (než je PostgreSQL). Z matic podpory různých funkcí v různých databázových systémech bylo vidět, že z hlediska řádkových hodnot a indexů na řadicích sloupcích je na tom PostgreSQL nejlépe a ostatní mají co dohánět (zejména systém MySQL dopadl dost nelichotivě).

Užitečné, ale opomíjené extenze

Po obědě (který má na P2D2 v posledních letech formu rautu) přišlo „odpočinkové“ téma v podání Tomáše Vondry. PostgreSQL má již v základu k dispozici pořádný balík rozšíření, další lze potom získat od jiných tvůrců (například přes repozitář pgxn.org). Tato rozšíření přidávají různé více či méně užitečné funkce, často takové, které by leckdo očekával v základním systému (kam ale nebyly z nějakého důvodu přidány).

Například rozšíření btree_ginbtree_gist umožňují vytvořit GIN, resp. GiST index nad skalárními typy (běžně se používají B-stromové indexy nad skaláry a GIN/GiST nad vektory). Rozšíření hstore přidává datový typ HSTORE (hashovou mapu klíč–hodnota) jakožto hodnotu atributu. S klíči a hodnotami lze pracovat přímo, bez nutnosti celou tabulku nejdřív extrahovat.

Rozšíření ltree se hodí pro situace, kdy je potřeba ukládat do databáze stromovou strukturu (například hierarchii kategorií). S klasickým řešením se velmi obtížně pracuje a ani není efektivní. Zde se však hierarchie ukládá jako cesta k uzlu a dá se s ní přímo pracovat v dotazech (klasicky i fulltextově).

rozsireni

pg_stats_statements odstraňuje některé neduhy monitorovacího nástroje pg_stat_activity, kterým prakticky nelze sledovat krátké dotazy. pg_stats_statements umožňuje sledovat celou řadu parametrů při provádění dotazů. Rozšíření pg_trgm pracuje s tzv. trigramy, tedy trojicemi písmen ve slovech. Umožňuje například zjišťovat podobnost/odlišnost různých slov.

Rozšíření quantile již patří k těm „externím“ (mimo PostgreSQL) a jeho autorem je sám Tomáš Vondra. Zavádí nové agregační funkce, kterými lze zjednodušit psaní dotazů pro výpočet statistických kvantilů. pg_reorg je rozšíření pro údržbu databáze – dokáže odstranit i běžně neodstranitelný balast (po aktualizaci indexů) a navíc neprovádí agresivní zamykání (pozor však na to, že není kompatibilní s DDL operacemi).

pg_partman je rozšíření snažící se trochu vylepšit zatím nepříliš pohodlnou práci s partitioningem. Stará se o správu partitioningu a zajišťuje dědění vlastností z rodičovské tabulky (v PostgreSQL je partitioning řešen pomocí dědičnosti tabulek). Pokud jeho vlastnosti pasují na konkrétní případ použití, může být dobrým pomocníkem.

Tomáš Vondra zmínil i další užitečné extenze, například plv8 (javascriptový engine V8), semver (sémantické verzování), s3_fdw (Foreign Data Wrapper pro úložiště Amazon S3) a pár dalších. Vzhledem k počtu existujících rozšíření samozřejmě nemohla být přednáška ani zdaleka vyčerpávající.

Co jsou základy databází a jak je učit?

Následující přednáška se stala – a měla stát – spíše diskusí. Michal Valenta, odborný asistent z FIT ČVUT (dříve působící na FEL ČVUT), chtěl totiž rozpoutat diskusi ohledně toho, jak v dnešní době učit základy databázových systémů. Ve své výuce zatím vychází především z klasického přístupu, kdy se věnuje poměrně hodně času konceptuálnímu modelování a relační algebře, o něco méně jazyku SQL a úplně nejméně pak připadne na „ostatní“ databáze (klíč–hodnota, proudové, grafové...).

valenta

A právě v rámci diskuse se mělo dojít k tomu, co případně přidat, co vypustit a co učit jinak. Povedlo se to? To je samozřejmě věc názoru. Nicméně panovala vcelku shoda, že (nejen) studenti zhusta přistupují k databázím jako k černé skříňce a nevědí, co (a proč) se děje uvnitř. V praxi to pak vede k nevhodné práci s databázemi, kdy trpí zejméně výkon. Proto by součástí výuky mělo být v určité míře i to, jak databázové systémy vlastně fungují (třeba co je to prováděcí plán apod.) a co od nich očekávat. Neuškodilo by také, aby byli studenti konfrontováni s velkou databází, která na rozdíl od malých výukových příkladů „potrestá“ každý poklesek ohledně správného používání.

Load dat do PostgreSQL

Po diskusi bylo možnost načerpat ztracené síly při coffee breaku a pak se opět soustředit na prezentované téma. Tím bylo velkoobjemové načítání dat do PostgreSQL. Kdo se účastnil podzimní mezinárodní konference, mohl v tom mít už docela jasno (resp. přednášku úplně vynechat, protože byla obsahově stejná jako ta podzimní). Pro ostatní šlo ale o téma navýsost zajímavé, byť nenabídlo žádné dokonalé, univerzální řešení.

Základními metodami jsou samozřejmě ty nativní, tedy INSERT+UPDATECOPY. Mají ale řadu nevýhod – například nedokáží očistit data od chybných hodnot, navíc při první chybě skončí celá transakce a nic se nenačtě. Příkazy INSERTUPDATE navíc vyžadují pouze klasickou syntaxi, čili data ve formátu CSV nelze bez předzpracování přímo vkládat (COPY je vkládat umí, ale ostatní nevýhody zůstávají a navíc je problém, pokud už v tabulce data jsou). Nelze zapomenout ani na nepříliš vysokou rychlost; vkládání lze sice urychlit vypnutím indexů, ale pokud na téže databázi současně probíhají dotazy, může to přinést jejich neúnosné zpomalení.

load

Další metodou je využití FDW (konkrétně file_fdw) a zapisovatelných CTE. Ale i tato metoda trpí nízkým výkonem. A konečně posledním způsobem je externí nástroj: pg_bulkload. Ten je v současné době nejrychlejší metodou, jak dostat data ze souboru do databáze. Největší rychlosti lze dosáhnout v režimu direct, kdy data nejdou přes transakční log. Nevýhodou je ale riziko poškození dat (pokud by načítání selhalo například kvůli výpadku napájení).

Elasticsearch

Poslední přednáška byla „dvoumužná“ – vystoupili totiž hned dva přednášející najednou (Jan Král a Karel Minařík). Na rozdíl od jiných podobných případů, kdy si více lidí rozdělí přednášku na ucelené bloky prezentované jedním člověkem, tady se odehrávalo něco podobného, jako třeba v televizních zprávách se dvěma moderátory. Na škodu to nebylo, spíše to na konci dne přispělo k lepšímu udržení pozornosti.

elastic elastic

Elasticsearch není databáze, nýbrž vyhledávací a analytický engine pro velké objemy dat v cloudu. Je postaven nad Apache Lucene, jeho datovým formátem je JSON a komunikačním rozhraním protokol HTTP (REST). Hlavní doménou Elasticsearch jsou jednoduché i složité dotazy, které lze snadno formulovat v URL. Umožňuje také snadno realizovat všelijaké ty vyhledávací pomůcky (našeptávače, nápovědy při zřejmě chybných dotazech apod.), které potkáváme ve vyhledávačích.

„Cloudovost“ Elasticsearch se projevuje tím, že když se spustí další instance, v závislosti na konfiguraci se na ni rozdistribuují data a lze tak bez většího úsilí snadno nastolit stav vysoké dostupnosti dat. Při výpadku uzlů se automaticky reorganizuje tak, aby byla zachována nastavená dostupnost a bezpečnost dat.

Lightning talks

Častou součástí konferencí bývají tzv. lightning talks, tedy krátké přednášky na určité téma. Na P2D2 byl stanoven časový limit 7 minut na přednášku, přičemž snad nikdo ho nevyčerpal celý. Naplánovány byly čtyři přednášky, během nich se přihlásil ještě pátý řečník.

Jako první vystoupil David Turoň a v rychlosti popsal využití datového typu HSTORE pro logování. Tento typ je pro dané účely zvlášť vhodný díky pružnosti použití za současné možnosti snadno přistupovat k datům.

Marek Sušický potom s rychlostí (slovního) kulometu představil vizualizační nástroj SVAT. Ten umožňuje získávat data z mnoha datových zdrojů (databázových i jiných) a přehledně je zobrazovat v grafech podle souvislostí. Typickým příkladem použití je třeba vizualizace vztahů mezi firmami a osobami.

Třetí minipřednášku měl Jan Horák a týkala se (nejen) PostgreSQL v Software Collections. Tento nástroj řeší problém s tím, že při běžném používání balíčkových systémů většinou nelze mít nainstalováno více verzí téhož softwaru. SC instaluje software do samostatných podadresářů /opt a může ještě zajišťovat takové speciality, jako že se u PostgreSQL používá pro všechny verze společná klientská knihovna (ta z nejvyšší verze).

Chcete-li si zkoušet práci se SQL (definice tabulek, vkládání dat, dotazy...) bez nutnosti instalovat si danou databázi, můžete využít webový nástroj SQL Fiddle, který představil Markus Winand. Dotazy lze nejen zkoušet, ale například si také prohlédnout jejich prováděcí plán.

lightning

Poslední lightning talk (nad původní plán) byl zaměřený na hardwarovou podporu databázových operací – ta se v poslední době objevuje nejen v procesorech, ale také například v diskových polích. Výkon databázových systémů tak bude zřejmě do významné míry záviset na tom, jak budou toto schopny využít.

Zhodnocení konference

Konference P2D2 se stala významným bodem na mapě českých odborných konferencí. Kvalitní přednášky a dobře fungující organizace se odrážejí ve velkém zájmu účastníků a kapacita sálu je omezujícím faktorem, který brání v účasti ještě většího počtu zájemců. Současně by konference jistě „snesla“ větší počet přednášek (a také workshopů, o jejichž přidání již organizátoři uvažovali), nejspíš by se pro ně našli i přednášející. Je tedy otázkou, zda by třeba konferenci neprospělo rozdělení do dvou streamů, jednoho teoretičtějšího a druhého praktičtěji zaměřeného.

slon2

Nahoru

(Jako ve škole)
Průměr: 1.00 | Hodnotilo: 32
 

Příspěvky

Reportáž: Prague PostgreSQL Developers' Day 2013
Johny 7. 06. 2013, 10:25:04
Odpovědět  Odkaz 
prvni poznamka je ciste osobni - prekvapuje me, jak pan Stehule pribral, no jo, pamatuji si ho na kurzu tak pred 10 lety a to byl takovy pohubly klucina - chtelo by to asi vice sportovat.

Na cele konferenci my nejvice zajimala ta prednaska o tom, jak se maji databaze vyucovat. Jednim slovem, to je fakt hruza, kdyz ze skoly vyjdou informatici a nevi co se uvnirt databaze deje. Nejhorsi je ovsem, ze se ten obsah studia diskutuje na nejake konferenci. Od toho je tady prece vysoka skola jako predvoj vedy a vyzkumu, kdo jiny by mel vedet co se ma ucit. A politici maji jeste tu drzost za takove skolstvi pozadovat mastne skolne. To by fakt jeden blil.
Lukáš Jelínek Re: Reportáž: Prague PostgreSQL Developers' Day 2013
Lukáš Jelínek 7. 06. 2013, 11:55:12
Odpovědět  Odkaz 
Že se obsah studia diskutuje na konferenci, jako problém nevidím. Ba právě naopak, protože když někdo působí výhradně nebo skoro výhradně jako pedagog, může se potýkat s nedostatkem zpětné vazby. Samozřejmě, že by škola měla být trvale v těsném kontaktu s praxí, ale ne vždycky to vychází a právě konference je dobrá příležitost k tomu, tyhle věci řešit. Oceňuji, že pan Valenta do toho šel, jiní do ničeho takového nejdou, učí si desítky let pořád to "své", bez ohledu na vývoj ... a výsledky podle toho vypadají.
Tomáš Crhonek Re: Reportáž: Prague PostgreSQL Developers' Day 2013
Tomáš Crhonek 7. 06. 2013, 14:50:44
Odpovědět  Odkaz 
"Nejhorsi je ovsem, ze se ten obsah studia diskutuje na nejake konferenci."

Mě se tahle "přednáška" naopak velmi líbila a musím souhlasit s Lukášem. Takové diskuse totiž chybí zejména právě v řadách těch studentů, kteří podle vás nevědí, jak to uvnitř funguje. Spousta z nich chce vědět. A právě takové diskuse pomohou zjistit, jak to vidí zaměstnavatelé v praxi. Podle mě je to jen přínos.
Re: Reportáž: Prague PostgreSQL Developers' Day 2013
Tomáš Vondra 7. 06. 2013, 23:36:13
Odpovědět  Odkaz 
Jakožto organizátor konference sice nejsem nestranný, nicméně naprosto souhlasím Lukášem Jelínkem a Tomášem Crhonkem že právě konference je celkem příhodné místo kde o problematice výuky databázových témat diskutovat - jsou tam totiž studenti, lidé z praxe i pedagogové (jako je Michal Valenta). To při podobných diskusích bohužel nebývá zvykem.

Z přijetí přednášky na toto téma jsem sice měl trochu obavy (a dosavadní feedback tu "kontroverznost" víceméně potvrzuje), ale zpětně jsem rád že jsme ji na program zařadili.
Re: Re: Reportáž: Prague PostgreSQL Developers' Day 2013
Johny 8. 06. 2013, 18:50:37
Odpovědět  Odkaz 
no tak si predstavte, ze treba svetovy vyrobce cerpaci techniky z Danska (fa. Grundfos) by usporadal konferenci o svych vybornych cerpadlech a o tom, co je noveho a co se pripravuje a pak by tam vystoupil nekdo z katedry hydraulickych stroju a chtel by se 'dovedet' od pritomnych , co si tak mysli, ze se maji studenti o cerpaci technice u nich na katredre naucit. :-)

A samozrejme, ze by nekdo z Grundfosu mohl na zaklade zkusenosti s absolventy nevrhnout, ze by se mel treba zvysit duraz na oblast pevnostnich vypoctu obeznych kol. A kdyby takovy pedagog navstivil vyrobce cerpadel pro smesi a pasty, tak mu doporucili, ze studenti se musi zabyvat problematikou nestacionarniho proudeni. Kazdy takovy vyrobce musi mit jednoznacne 'svuj' omezeny uhel pohledu.

A zrovna tak je to na te postgres konferenci. Radu tech lidi tam znam, vesnmes se zabyvaji jednou a tou samou databazi - totiz jednou z tech tezkotonaznich - oracle, ibm, mssql, sybase a nebo postrgresql (i kdyz postgresisti rikaji, ze nechteji delat oracle zadarmo - tak vpodstate uz to tak je). A vsichni tito lide maji take svuj uzky uhel pohledu , pres ktery vlak nejede - totiz 100% ACID a vymakane rollback a recovery strategie. Jenze on existuje i svet mimo transakce, IT pracovnici v mensich firmach se mnohem vice setkaji s MS-Access nez s Oracle. A skoly musi videt celospolecensky zamer a ne jen zamestnavatele.

Takze ano, je mozno si o tom popovidat, ale skola musi 'mit' jasnou koncepci a je mozno pilovat na detailech. Pozitivni je, ze u prednasejiciho pozoruji ze ma jakysi nedobry pocit z toho co se na skole deje a rad by to zlepsil, ale kdyz se tak podivam, kolik na te katedre dela lidi, tak by snad uz nejaky plan mit mohli?
Re: Re: Re: Reportáž: Prague PostgreSQL Developers' Day 2013
Pavel Stěhule 9. 06. 2013, 20:50:51
Odpovědět  Odkaz 
Myslím si, že Michal má dost jasno, co chce naučit a jak to chce učit. A už z přednášky bylo zřejmé, že pro něj databáze nejsou jenom relační SQL databáze (mimochodem Michal je hodně dobrý Oraclista), ale že dává prostor i CAP document databázím nebo map/reduce databázím. Nicméně zpětná vazba není na škodu, a zaměstnavatelé a lidi z praxe si nestěžovali na to, že by studenti nedokázali pracovat s tou či onou databází, ale že nemají představu jak se databáze chovají pod zátěží a při zpracování velkých dat. Což není problém jenom studentů. Hodně programátorů má zkreslené představy, co a jak dělají databáze a stejně tak mají zkreslená očekávání ohledně výkonu databází - takže optimalizují, to co nemá smysl optimalizovat a naopak neoptimalizují, to by mohli a měli.

Učit IT (dobře učit IT) není jednoduché, jelikož se IT stále intenzivně posouvá - něco platí stále - klasické sw inženýrství z sedmdesátých a osmdesátých let, něco je pasé a vzniká neustále něco nového. A Vy se s výukou musíte vejít do několika málo hodin týdně. Ještě v 90 letech gro byly relační databáze - a z dvě nejdůležitější kategorie ISAM (případně dbase like) a SQL. Po roce 2000 tu jsou proudové databáze, document db, map/reduce, sloupcové databáze, array db a všechny mají smysluplné nasazení a je dobré o nich něco vědět. Ukládání a zpracování dat během 10 let hodně expandovalo - i když 99 procent programátorů si myslí, že db jsou Oracle, MSSQL, DB2 a Postgres s MySQL. Během 10 let díky nově dostupnému hw a sw jsme úplně jinde.

P.S. Sport snad bude :)

Přidat názor

Nejsou podporovány žádné značky, komentáře jsou jen čistě textové. Více o diskuzích a pravidlech najdete v nápovědě.
Diskuzi můžete sledovat pomocí RSS kanálu rss



 
 

Top články z OpenOffice.cz

Lukáš Jelínek

Lukáš Jelínek

Dlouholetý člen autorského týmu LinuxEXPRESu a OpenOffice.cz. Vystudoval FEL ČVUT v oboru Výpočetní technika. Žije v Kutné Hoře, podniká v oblasti IT a zároveň pracuje v týmu projektu Turris. Ve volném čase rád fotografuje, natáčí a stříhá video, občas se věnuje powerkitingu a na prahu čtyřicítky začal hrát tenis.


  • Distribuce: Debian, Kubuntu, Linux Mint
  • Grafické prostředí: KDE

| proč linux | blog