Česká a slovenská republika

 |  přihlášení | registrace
      Košík je prázdný   |  Jak nakupovat

DB Optimizer XE Developer

Grafické prostředí pro analýzu a ladění SQL

  • Pomáhá odstraňovat úzká místa ve výkonosti databází a aplikací v reálném provozu
  • Chrání produkční prostředí před implementací výkon snižujícího SQL kódu
  • Přináší jednotné prostředí s intuitivním ovládáním pro vývoj, testování, analýzu a ladění SQL

DB Optimizer zpřístupňuje vývojářům a databázovým správcům funkce pro rychlé odhalení, rozpoznání a odladění výkon snižujícího SQL. Umožňuje tak maximalizovat výkon jak aplikací tak vlastního databázového stroje.

Prostřednictvím nástroje DB Optimizer lze podrobně analyzovat zpracovávaný SQL kód. Na základě statistik (vytížení procesoru, diskové operace, odezva a podobně) se lze zaměřit na konkrétní příkazy, které jsou například spouštěny velmi často nebo pracují s velkými objemy dat, otimalizovat je a odstranit tak úzká místa celého systému.

DB Optimizer nabízí:

  • Grafickou vizualizaci analýz čekacích dob pro snadné nalezení kódu v SQL, který nepříznivě ovlivňuje výkon databází
  • Nepřetržité profilování sleduje celý datový zdroj v rámci nastavitelné doby
  • Dávkové ladění příkazů jazyka pro manipulaci s daty, uložených procedur a celých souborů SQL
  • Vysvětlující plány ("explain plans") pro lepší pochopení způsobu, jakým se bude provádět kód SQL a jaká je režie výkonu
  • Editor jazyka SQL s rychlými opravami v reálném čase pro nalezení a opravu nedostatečně výkonného kódu v SQL
  • Analýza čekacích dob poskytne úplný profil výkonu z pohledu uživatele a tím umožní skutečně zlepšit celkový výkon databází.

Veškeré licence se dodávají jako elektronické, tedy bez instalačního DVD. Potřebujete-li instalační média, můžete je objednat na této stránce.

Informace o čísle verze:

  • Současná verze: XE
  • Předchozí verze: 2.5.1
detailní popis

Ceník produktů DB Optimizer XE Developer

Druh licenceTyp licenceLicenční serverPočet DB Platforem*Předplatné *Cena
Nový uživatelPojmenovaná lokální (nesíťová) licence pro nového uživatele a s podporou všech dostupných databázových platforem včetně ročního předplatného.Pracovní stanice-----XE 25 300 Kč20 600 KčDo košíkuDo košíku
Nový uživatelJedna síťová pojmenovaná licence pro nového uživatele a s podporou všech dostupných databázových platforem včetně ročního předplatného. Tato licence může být využívána pouze jedním uživatelem, avšak na libovolném místě podnikové sítě, ze kterého je přístup k licenčnímu serveru.Síťová pojmenovanáAppWaveXE 25 300 Kč20 600 KčDo košíkuDo košíku
Nový uživatelJedna síťová souběžná licence pro nového uživatele včetně ročního předplatného s podporou všech dostupných databázových platforem. Tato licence může být sdílena více uživateli na libovolném místě v podnikové síti, které má přístup k licenčnímu serveru.Síťová souběžnáAppWaveXE 100 900 Kč82 100 KčDo košíkuDo košíku

Pozn.:*Předplatné:  Předplatné vám zajistí po dobu 1 roku automatický přísun aktualizovaných a opravených verzí produktů a rychlou technickou podporu v kritických situacích. Po roce stačí obnovit samotné předplatné, za licence se již nic neplatí. Pro nákup produktu bez předplatného odškrtněte příznak ve sloupci "Předplatné". U některých produktů je však předplatné první rok povinné a odškrtnout jej nelze. Více o předplatném najdete zde.

Popis produktu

Hlavní vlastnosti produktu

DB Optimizer je snadno použitelné prostředí pro návrh, profilování a ladění SQL kódu. Nástroj je určen vývojářům, jejichž cílem je nejen syntakticky správný ale i kvalitní, výkonný kód. Další cílovou skupinou uživatelů jsou správci, jimž přináší schopnost rychle nalézt problematické příkazy a okamžitě je optimalizovat. Optimalizací kódu SQL je možné v řadě případů dosáhnout významného zvýšení výkonu, aniž by bylo nutné rozšiřovat počet procesorů/jader nebo uzlů databáze. To navíc znamená nemalé finanční náklady na licence a související poplatky (technická podpora, údržba a podobně). DBOptimizer je možné instalovat jako samostatnou, plnohodnotnou aplikaci, nebo jako zásuvný modul do vývojáři oblíbeného prostředí Eclipse.

Značnou předností nástroje DBOptimizer je podpora různých platforem. Z jednoho uživatelského prostředí tak lze zcela konzistentně ladit kód pro databáze IBM® DB2® for LUW, Oracle®, Microsoft® SQL Server a Sybase®. Značně se tím redukuje čas, který uživatel obvykle ztratí tím, že se musí seznamovat s nástrojem pro každou databází zvlášť. DBOptimizer je navíc navržen tak, aby jeho ovládání bylo maximálně intuitivní, podobně jako je tomu u ostatních Embarcadero nástrojů.

Produkt podporuje RDBMS různých dodavatelů

Nástroj má tři hlavní moduly, kterými jsou SQL Editor, SQL Profiler a SQL Tuner. Pro lepší orientaci v rozsáhlejších prostředích, nebo při používání nástroje více uživateli je k dispozici členění do projektů.

SQL Editor

Průzkumní pro rychlou 
orientaci

Uživatel, který má efektivně pracovat s SQL, potřebuje především okamžitou interakci s databází. Zvláště u větších projektů nelze předpokládat, že si bude vývojář pamatovat jména tabulek, sloupců nebo jejich datové typy. Editor, obsažený v DBOptimizeru, nabízí v tomto směru uživatelům maximální pohodlí. Kromě průzkumníka, který zobrazuje všechny objekty databáze ve formě přehledné stromové struktury, a to včetně jejich DDL reprezentace, je zde k dispozici celá řada interaktivních pomocníků.

Samozřejmostí je uživatelsky přizpůsobitelné „barvení" a doplňování syntaxe. Editor rovněž nabízí přímo během kódování výběr souvisejících objektů z datového slovníku databáze a provádí online kontrolu celého příkazu.

Doplňování objektů z datového slovníku

Běžné příkazy jsou nabízeny ve formě šablon, které ocení hlavně uživatelé pracující s více databázemi, jejichž dialekty se vzájemně liší. „Štábní kulturu" zajistí volba automatického formátování, kterou lze rovněž jako většinu ostatních funkcí nakonfigurovat dle vlastního vkusu. Při práci s rozsáhlejším kódem uživatelé jistě ocení možnost sbalit/rozbalit jednotlivé sekce.

Výběr z nabízených šablon

To je možné jak přímo v editoru, tak v pomocném navigačním okně (Quick Outline), kde pak jen stačí kliknout a uživatel je přenesen na požadovanou oblast příkazu v editoru.

Výsledné příkazy lze spouštět přímo z editoru, který je následně zobrazí v požadované formě. Na výběr je klasický „grid", html, prostý text nebo XML. Kromě obvyklého Copy/Paste lze takto získaná data rovněž uložit do některého z výše uvedených formátů a nechybí ani oblíbený Microsoft Excel.

Okno "Outline"

DBOptimizer editor s výstupem

Hlavní devizou produktu je však především možnost pořízený kód ladit. K tomu slouží SQL Profiler a SQL Tuner, které jsou popsány samostatně, v rámci prostředí jsou však samozřejmě dostupné kdykoliv přímo z editoru.

SQL profiler
Běžný produkční systém a jeho uživatelé generují stovky či tisíce požadavků na databázový stroj. Pro optimalizaci výkonu DB serveru je však vhodné soustředit se pouze na ty příkazy, jejichž ladění nám přinese maximální užitek. Logické je, pokusit se hledat požadavky, které server nejvíce zatížily. Ve skutečnosti je ale velmi pravděpodobné, že bychom pak ladili pouze velmi složité, komplexní dotazy, které se již možná ani nebudou opakovat (takzvané „AdHoc" dotazy) a jejich optimalizací tak nic nezískáme. Naopak naší pozornosti by mohly uniknout zdánlivě bezvýznamné dotazy, které se však neustále opakují a jejichž zefektivněním je možné zvýšit výkonnost významným způsobem. Je třeba si také uvědomit, že se nemusí jednat o v pravém smyslu totožné dotazy, ale takové, které jsou shodné z pohledu exekučního plánu (tedy například parametrické dotazy). SQL Profiler udělá tuto práci za Vás.

DBOptimizer lze spustit a nechat sledovat reálnou zátěž databázového stroje v určeném časovém rozmezí. Následně si uživatel v přehledném grafickém výstupu označí oblasti, které ukazují na operace generující nejvyšší zátěž. Pomocí filtrů lze výběr dále omezit na konkrétní typ zátěže (CPU, zamykání, systémové zdroje, síťovou komunikaci a podobně) nebo zvolenou aplikaci či proces.

Výstup SQL Profileru

Takto postupně získáme množinu příkazů, které jsou nejlepšími kandidáty pro hlubší analýzu a následné ladění.

SQL Tuner
Aktuální verze DB Optimizeru posunula proces ladění SQL na další kvalitativní úroveň: od původních návrhů vylepšení a přepisu příkazů SQL ke dnešním pokročilým technikám. Srdcem produktu jsou nyní především VST diagramy (vizuální ladění SQL) a pokročilá analýza indexů.

Pokud tedy označíme zvolený příkaz a necháme jej analyzovat, provede DBOptimizer následující kroky:

1) Je vytvořen seznam možných variant, realizujících požadovanou operaci. Jednotlivé varianty vznikají jednak použitím takzvaných „hintů", tedy specifických instrukcí pro databázový stroj, ovlivňujících způsob zpracování požadavku, nebo syntakticky (například nahrazení spojení poddotazem). Každou z navržených variant je možné si zobrazit a hlouběji prostudovat.
2) Jednotlivé varianty jsou vícenásobně spuštěny a DBOptimizer zaznamená jejich detailní charakteristiky a provede srovnání jejich časové náročnosti. Pro každou z variant je možné zobrazit podrobný exekuční plán.


Podrobný exekuční plán
3) DBOptimizer provede analýzu použití existujících a virtuálních indexů (indexy nejsou skutečně vytvořeny, ale nástroj vyhodnotí dopady jejich potenciálního použití) a zobrazí výsledky včetně podrobného komentáře.

Analýza dostupných a virtuálních indexů
Analýza indexů pomůže plně odhalit exekuční cesty SQL a porozumět tomu, které indexy jsou použity, nepoužity či zcela chybí. Pokud index chybí, nabídne DB Optimizer 2.0 svá doporučení pro optimální výkon. Navržené změny lze okamžitě aplikovat jediným kliknutím myši.

Zátěžové testy
V praxi se často můžeme setkat i s dalším problémem. Máme navržený a optimalizovaný kód, potřebujeme však specifikovat reálné požadavky na HW. Pro podobné situace přichází DBOptimizer s funkcí „SQL Load".

Nastavení parametrů pro SQL Load zde Uživatel může definovat příkazy (zdrojem může být existující projekt DBOptimizeru, soubory SQL nebo přímo vložený SQL kód), které budou proti databázi spouštěny. Následně je třeba specifikovat kolik paralelních přístupů/uživatelů má nástroj simulovat. Dále je možné stanovit, zda má být zátěž generována po určitou dobu, nebo zda se má dávka spustit s určeným počtem opakování. Reálné zátěži je možné se ještě více přiblížit zvolením proměnné doby čekání mezi jednotlivými příkazy.

Klávesové zkratky
Pro rychlé vyvolání často používaných funkcí nabízí většina nástrojů klávesové zkratky. V DBOptimizeru si je nemusíte pamatovat. Okno „Key Assist" je zobrazí přehledně všechny a stačí si jen vybrat. Okno otevřete jak jinak, než klávesovou zkratkou „Shihft+Ctrl+L" (jde to však samozřejmě i z menu :-) ).

Okno asistenta pro klávesové zkratky

Přizpůsobitelnost
Přestože vývoj nástrojů divize Database Gear mají na starost lidé, kteří mají dlouholeté praktické zkušenosti jak s vývojem DB aplikací tak jejich správou, vždy je vhodné mít možnost si prostředí nakonfigurovat dle vlastních potřeb. V DBOptimizeru lze nastavit téměř vše, a to přehledně a z jednoho místa.

Přizpůsobení nástroje

Porovnání s dalšími nástroji společnosti Embarcadero

DBOptimizer vs. Performance Center

  • DBOptimizer není nástroj pro 24x7 monitoring databáze
  • DBOptimizer neumožňuje nastavení limitních hodnot a systému varování
  • Performance Center není určen k vyhledání konkrétního SQL příkazu, který je původcem varování pro některou ze sledovaných metrik

DB Optimizer vs. RapidSQL

  • DB Optimizer je navržen pro vývojáře specializované na návrh DB logiky - příležitostní vývojáři v SQL si zpravidla vystačí s RapidSQL
  • DB Optimizer obsahuje PowerSQL Professional , který je rovněž součástí RapidSQL. Lze jej tedy zakoupit jako rozšíření - "upgrade"
  • Vybavenost a cenová politika RapidSQL je zaměřena na vývojáře, kteří vytvářejí SQL kód, nejsou však zodpovědní za profilování a ladění

Novinky ve verzi 2.0.1

  • Vizuální ladění s technologií VST (Visual SQL Tuning)
  • Interaktivní výstupy analýzy indexů
  • Testování zátěže pomocí "SQL Load"
  • Zdokonalené uživatelské rozhraní - kompletně přepracované ovládání, které se odvíjí od nejčastěji používaných funkcí: Profilování SQL, ladění SQL a editace SQL kódu
  • Plná podpora pro unicode
  • Rozhraní příkazové řádky pro vzdálené profilování databází

Hlavní přínosy

  • Optimalizace výkonosti SQL během celého životního cyklu databáze
  • Včasné odhalení a odstranění úzkých míst v produkčních databázích a aplikacích
  • Vývoj, testování, profilování a ladění SQL v jedinném snadno ovladatelném intuitivním prostředí

Klíčové vlastnosti

  • Grafické znázornění zátěže pro snadné odhalení problematických SQL příkazů s negativním dopadem na výkonost databázového stroje
  • Průběžné profilovaní zvolených datových zdrojů v uživatelsky plně nastavitelném časovém rozpětí
  • Dávkové ladění DML (jazyka pro manipulaci s daty), uložených procedur a dalších zdrojů obsahujících SQL příkazy
  • Rozbor prováděcích plánů (Query Execution Plan) pro lepší pochopení jakým způsobema s jakými nároky budou jednotlivé dotazy realizovány
  • Editor jazyka SQL nabízející rychlé automatizované řešení signalizovaných výkonnostních slabin

Nejčastější otázky a odpovědi

Co vlastně je DB Optimizer?
Embarcadero DB Optimizer je nástroj na profilování a ladění kódu v jazyce SQL, jenž maximalizuje výkon databází a aplikací tím, že umožní správcům databází rychle odhalovat, rozpoznávat a optimalizovat kód SQL, který pracuje pomalu a neefektivně. DB Optimizer odstraňuje úzká místa výkonu tím, že nalezne datově intenzivní nebo často vykonávané příkazy, zaměří se na konkrétní příkazy SQL pomocí statistik (CPU, vstup/výstup, doby čekání) a jemně doladí problematické příkazy.

Co je nového ve verzi 2.0.1?
Do produktu bylo přidáno mnoho rozšíření, například:

  • Vizuální ladění s technologií VST (Visual SQL Tuning)
  • Interaktivní výstupy analýzy indexů
  • Testování zátěže pomocí "SQL Load"
  • Zdokonalené uživatelské rozhraní - kompletně přepracované ovládání, které se odvíjí od nejčastěji používaných funkcí: Profilování SQL, ladění SQL a editace SQL kódu
  • Plná podpora pro unicode
  • Rozhraní příkazové řádky pro vzdálené profilování databází

Jaký je rozdíl mezi profilováním a laděním?
Profilování je proces analýzy jediného příkazu SQL nebo celé databáze tak, aby bylo možno určit, na které příkazy či dotazy je třeba se zaměřit, aby došlo ke zvýšení výkonu. V některých případech to mohou být dotazy, které běží velice dlouho. V jiných případech to mohou být příkazy, které se vykonávají opakovaně. V obou případech však stojí za to profilování vyzkoušet a zvýšit celkový výkon. A to nás přivádí k ladění. Nemá smysl ladit celou databázi najednou, rozumné je začít proces optimalizace profilováním a nejdříve najít problémové oblasti. Jakmile se odstraní problematické příkazy, může se přejít k ladění. Ladění je proces skutečného provádění změn: je třeba nastudovat chování databáze s mnoha různými nastaveními; říkáme jim "případy" ("cases"). Přitom je třeba vzít v úvahu "náklady" na každé nastavení a implementovat takové z nich, které poskytne nejlepší prováděcí plán. DB Optimizer poskytuje jak profilování, tak ladění pro Oracle, SQL Server, DB2 LUW a Sybase v úplném integrovaném vývojovém prostředí. DB Optimizer též poskytuje dávkové ladění příkazů jazyka pro manipulaci s daty, uložených procedur a celých souborů SQL. Přitom vytváří řadu plánů provozu a zobrazuje je v tabulce s podrobnými statistikami pro každý případ. Pak se dá snadno najít nejlepší nastavení a to automaticky nahradí stávající nevýkonný příkaz SQL.

Co to jsou „vysvětlující" plány a jakým způsobem pomáhají?
Vysvětlující plány se používají k lepšímu pochopení, jaký prováděcí plán ve skutečnosti používá příkaz SQL. Na základě této informace může uživatel stanovit, zda je určitý plán optimálním prováděcím plánem. DB Optimizer zobrazí tyto informace jako strom se sloupci a zasunovacími sloupcovými skupinami, které usnadňují prohlížení. Vysvětlující plány mohou být počítány na základě tabulek provozních statistik vytvořených v DB Optimizeru, aniž by se ve skutečnosti musel provádět jakýkoli dotaz; to přijde vhod v situacích, kdy trvá celé hodiny, než se dotaz dobere výsledku.

Může DB Optimizer pomoci v případě aplikací na klíč, které využívají databází?
Ale samozřejmě. Jsou dva hlavní způsoby, jak může DB Optimizer pomoci. Prvním je použití profilování, které umožní nahlásit dodavateli aplikace, co přesně způsobuje problémy výkonu. Druhou možností je použít vlastnost DB Optimizeru s názvem "uložený přehled" ("stored outline"). Po proběhnutí ladicí úlohy je možno automaticky generovat DDL k vytvoření uloženého přehledu pro optimální běhový plán. Jakmile se plán dostane do databáze, příkazy SQL z dodané aplikace poběží podle optimalizovaného běhového plánu.

Vlastnosti a přínosy

Profilování kódu SQL

  • Grafické zobrazení analýzy čekacích dob pomůže snadno najít kód SQL způsobující problémy výkonu databází
  • Nepřetržité profilování sleduje celý datový zdroj v rámci nastavitelného časového intervalu
  • Vysvětlující plány pomohou lépe porozumět tomu, jak se bude vykonávat kód SQL a jaké jsou "náklady" na dosažení výkonu
  • Veškerá data a metadata příslušející profilovacímu sezení je možno uložit jako celek do archivního souboru, takže se profily dají sdílet

Ladění kódu SQL

  • Dávkové ladění příkazů jazyka pro manipulaci s daty, uložených procedur a celých souborů s kódem SQL
  • Tvorba alternativ se používá pro vytváření všech možných případů a nalezení nejlepší alternativy daného příkazu SQL včetně přepsání příkazu a vložení rady

Výstupní sestavy

  • Graf profilu názorně zobrazuje čekací aktivity procesoru, vstupně-výstupních operací a jiných v průběhu celého profilovacího sezení
  • Statistiky provádění kódu poskytují podrobné informace o profilovaném kódu SQL a kategoriích čekání
  • Na vyžádání se mohou do tabulky běhových statistik počítat vysvětlující plány pro každý příkaz SQL

Editování kódu v SQL

  • Obsahuje výkonné integrované vývojové prostředí jazyka SQL přizpůsobené potřebám vývojářů aplikací
  • Rychlé opravy v reálném čase automaticky označí a napraví nevýkonný kód SQL
  • Pomocník pro kód SQL a syntaktické ověřování SQL v reálném čase
  • Třídění a zakládání kódu SQL na úrovni projektu včetně vyhledávacích funkcí

Obecné vlastnosti

  • Plná podpora databází DB2 for LUW, Oracle, SQL Server a Sybase ASE
  • Plná podpora Unicode
  • Rozhraní příkazové řádky

Podporované databázové systémy

DB Optimizer umožňuje práci s následujícími verzemi DBMS provozovanými na serverových platformách Linux a Windows NT:

  • Oracle 8i-11g
  • Sybase 12.5-15.0
  • IBM DB2 for LUW 8.0 - 9.0
  • Microsoft SQL Server 2000, 2005 a 2008

Příbuzné produkty

  • Embarcadero J Optimizer
    Obsažné prostředí pro optimalizaci výkonu aplikací v Javě a řízení jejich kvality
  • Embarcadero Performance Center
    Nástroj pro nepřetržité sledování výkonu databází zvyšující databázovou dostupnost a maximalizující jejich výkon
  • Rapid SQL
    Integrované vývojové prostředí pro tvorbu výkonného a kvalitního kódu v jazyce SQL; nezávislé na databázové platformě
  • DBArtisan
    Vedoucí řešení pro administraci všech vedoucích databází, které jejich správcům umožňuje maximalizovat výkon, dostupnost a bezpečnost databází.
  • Embarcadero Change Manager
    Úplná sada nástrojů pro manipulaci se schématy, daty a konfiguracemi umožňující ovládat životní cyklus změn v databázích.
  • Embarcadero All-Access
    Okamžitý přístup k jazykům, nástrojům a technologiím pro návrh, tvorbu a provoz softwarových aplikací a databázových systémů.

Další zdroje informací (v angličtině)

Poslat dotaz k produktu DB Optimizer XE Developer

 

Komentáře k produktu (0): DB Optimizer XE Developer