Viac ako 23 rokov skúseností so SQL

Nájdite úzke hrdlo skôr, než vymeníte aplikáciu.

Pomalý alebo nestabilný produkt? Začnite analýzou databázy a pracujte s jasným poradím, čo zmeniť najskôr.

Kde hľadám

  1. Akcia používateľaPríznak: pomalá obrazovka, report alebo API volanie
  2. AplikáciaIniciuje prácu databázy
  3. DopytSQL odoslané do databázy
  4. DatabázaExekučné plány, indexy, záťažCieľ posúdenia
Ilustračný diagram. Nejde o namerané výsledky.

Problémy, ktoré stoja za bližší pohľad

Typické situácie, ktoré viem preskúmať. Každý prípad je iný, preto sa prvý rozhovor týka toho, s čím Vám vieme pomôcť.

Keď sa systém spomalí

  • Obrazovky, reporty alebo API volania, ktoré čakajú na pomalé dopyty.
  • Výkon, ktorý klesá, keď v systéme pracuje veľa používateľov naraz.
  • Indexy pridávané postupne, bez jasného prehľadu, ktoré z nich naozaj pomáhajú.

Keď dát stále pribúda

  • Tabuľky, ktoré stále rastú, pretože staré dáta sa nikdy nearchivujú.
  • Chýbajúce pravidlá uchovávania dát, takže roky histórie zaťažujú každodennú prácu.
  • Údržba indexov a štatistík, ktorá prebieha nepravidelne alebo vôbec.

Problém, ktorý pretrval aj predchádzajúce pokusy o jeho vyriešenie.

Nová aplikácia je veľká investícia. Databáza môže byť lepším miestom, kde začať.

Ak je úzke hrdlo v dopytoch, indexoch alebo v tom, ako záťaž dopadá na databázu, jej zlepšenie môže aplikáciu, ktorú už máte, zrýchliť a stabilizovať. Diagnostika ukáže, či je to pravdepodobné, skôr než sa rozhodnete pre jednu alebo druhú cestu.

Začnite kontrolou stavu databázy

Prvý krok s pevnou cenou, ktorý z problému s výkonom urobí písomné zistenia, podľa ktorých sa dá konať.

Kontrola stavu databázy

499 €+ DPH, jednorazovo

Jedna databáza Microsoft SQL Server alebo PostgreSQL a jeden hlavný problém s výkonom, dohodnutý pred začiatkom práce.

Napíšte mi

Zahŕňa

  • Posúdenie dohodnutého problému v zahrnutej databáze
  • Písomné zistenia
  • Ďalšie kroky zoradené podľa priority

Nezahŕňa

  • Ladenie a implementáciu. Ak ich chcete zveriť mne, rozsah aj cenu dohodneme samostatne.

Zlepšenie výkonu nie je zaručené. Výstup ukáže, čo nám naznačuje databáza a čo urobiť ďalej.

Potom ju udržujte v dobrej kondícii

Kontrola stavu je prvý krok: odhalí príčiny problémov na strane databázy a odporučí, čo opraviť. Keď sú odporúčania zavedené, plán údržby pomáha udržať výkon dlhodobo stabilný, s krátkymi časmi odozvy dopytov a včas zachyteným postupným zhoršovaním. Každý plán prispôsobím vášmu serveru, preto sú uvedené ceny východiskové.

  • Essential

    Pre stabilný server, ktorý potrebuje pravidelnú starostlivosť.

    Od99 €/ mesiac + DPH

    89 € / mesiac pri ročnej platbe

    2 hodiny špecialistu mesačne

    • Pravidelná údržba indexov
    • Údržba štatistík
    • Kontrola stavu: rast, úlohy údržby a kľúčové ukazovatele
    • Štvrťročná písomná správa o stave
    • Odpoveď do jedného pracovného dňa
    Napíšte mi
  • Partner

    Pre viac serverov alebo kritické systémy.

    CenaNa mieru

    Podľa dohody

    • Harmonogram údržby a posúdení podľa dohody
    • Rezervované hodiny podľa vašich potrieb
    • Podmienky reakcie dohodnuté v zmluve
    Napíšte mi

Ako plány fungujú

Začína sa kontrolou
Plán vychádza zo zistení kontroly, nie z odhadov.
Cena za databázový server
Jeden server Microsoft SQL Server alebo PostgreSQL na plán. Viac serverov: 5 % zľava pri 2-3, 10 % pri 4-7, 15 % pri 8 a viac.
Mesačná alebo ročná platba
Mesačne: zrušiť môžete kedykoľvek, plán skončí koncom aktuálneho mesiaca. Ročne: nižší mesačný poplatok a trojmesačná výpovedná lehota. Nevyčerpané hodiny sa neprenášajú, hodina navyše stojí 55 € + DPH.

S kým budete spolupracovať

Portrét Michala Kováča

Ing. Michal Kováč

Databázový špecialista, MICO Software

So SQL pracujem od roku 2002.

Už viac ako dve desaťročia dodávam softvérové a databázové projekty pre klientov na štyroch kontinentoch a mnohé z nich sú dodnes v aktívnej prevádzke.

Zameriavam sa na spoľahlivé systémy od návrhu po prevádzku: softvérovú architektúru, databázy a systémovú integráciu. So SQL pracujem od roku 2002, najmä s Microsoft SQL Server a s PostgreSQL vo vlastných aj klientskych projektoch.

Vo finančnom sektore som pracoval na bankových, onboardingových a leasingových systémoch pre klientov na Slovensku, v Nemecku a v USA, vrátane dlhodobej údržby výkonu reportingovej platformy banky od roku 2017.

Mám inžiniersky titul v odbore Softvérové inžinierstvo a big data a pracujem po slovensky, anglicky a nemecky. Od prvej správy až po zistenia komunikujete priamo so mnou.

  • Najprv dôkazy, potom závery

    Na prvom mieste sú exekučné plány, definície indexov a kontext záťaže. Názory prichádzajú až potom.

  • Diagnostika oddelená od zmien

    Kontrola váš systém nemení. O tom, čo sa implementuje a kto to urobí, rozhodujete vy.

  • Zistenia, s ktorými sa dá pracovať

    Písané pre vývojárov, zrozumiteľné aj pre tých, ktorí schvaľujú rozpočet.

Ako kontrola prebieha

  1. Dopyt

    Opíšte databázu a hlavný problém s výkonom.

  2. Rozsah

    Pred začiatkom práce sa dohodneme na probléme a rozsahu posúdenia.

  3. Posúdenie

    Preskúmam dohodnutý problém v zahrnutej databáze.

  4. Zistenia

    Dostanete písomné zistenia a ďalšie kroky zoradené podľa priority.

Voliteľne potom: implementácia s cenou dohodnutou samostatne a plán údržby.

Ako vyzerajú zistenia

Každé zistenie spája problém s dôkazmi, o ktoré sa opiera, a s ďalším krokom podľa priority. Príklad vedľa ukazuje štruktúru.

Pozrieť ukážkové zistenia

Kontrola stavu databázy / Zistenia

Ilustračné

Ilustračný príklad. Nejde o správu pre skutočného zákazníka. Neposudzovala sa žiadna databáza.

Oblasť záujmu

Filtre alebo triedenie v dopyte nemusia zodpovedať existujúcemu indexu.

Ilustračné zistenie

Možný nesúlad, ktorý treba overiť na skutočnom exekučnom pláne. Netvrdí sa, že index chýba ani že nastalo spomalenie.

Podklady na získanie
  • Reprezentatívny dopyt a jeho skutočný exekučný plán
  • Definície existujúcich indexov, podmienky dopytu a spôsob triedenia
  • Náklady relevantných indexov pri zápise a kontext záťaže
Navrhované ďalšie kroky
  1. Preskúmať plán reprezentatívneho dopytu.
  2. Porovnať podmienky a triedenie s existujúcimi indexmi vrátane nákladov na zápis.
  3. Bezpečne otestovať kandidátny index pri reprezentatívnej záťaži.
  4. Rozhodnúť, či zmenu nasadiť, a potom sledovať záťaž.

Časté otázky

Čo zahŕňa kontrola stavu databázy?

Jednu databázu Microsoft SQL Server alebo PostgreSQL a jeden hlavný problém s výkonom, dohodnutý pred začiatkom práce. Dostanete písomné zistenia a ďalšie kroky zoradené podľa priority.

Koľko stojí?

499 € + DPH, jednorazovo.

Aký prístup potrebujete?

Závisí to od databázy a problému. Čo je potrebné a akým spôsobom to poskytnete, preberieme ešte pred dohodnutím posúdenia. Prosím, neposielajte cez formulár heslá ani produkčné dáta.

Zahŕňa kontrola ladenie alebo implementáciu?

Nie. Ladenie a implementácia sú voliteľné ďalšie práce s rozsahom a cenou dohodnutými samostatne.

Je zlepšenie výkonu zaručené?

Nie. Kontrola poskytne písomné zistenia a ďalšie kroky zoradené podľa priority na základe posúdenia. Práca na databáze nevyrieši každý problém aplikácie, a ak dôkazy ukazujú inam, zistenia to uvedú.

Potrebujeme pred plánom kontrolu stavu databázy?

Áno. Kontrola ukáže aktuálny stav servera, aby som plán mohol prispôsobiť a presne naceniť.

Môžeme plán údržby zrušiť?

Áno. Pri mesačnej platbe kedykoľvek, plán skončí koncom aktuálneho mesiaca. Pri ročnej platbe je mesačný poplatok nižší a výpovedná lehota je tri mesiace.

Máme viac databázových serverov. Ako sa to nacení?

Každý plán pokrýva jeden databázový server. Ďalšie servery pridám za cenu plánu so zľavou: 5 % pri 2-3 serveroch, 10 % pri 4-7 a 15 % pri 8 a viac.

Čo pravidelná údržba vlastne robí?

Jej cieľom je stabilný výkon SQL: indexy a štatistiky v dobrom stave, nízke časy dopytov a postupné zhoršovanie zachytené skôr, než si ho všimnú používatelia. Výkon nemôžem zaručiť, ak sa aplikácia alebo záťaž výrazne zmení; správy na to upozornia.

Pomôžu nám zistenia rozhodnúť, či aplikáciu vymeniť?

Môžu byť podkladom pre také rozhodnutie. Zistenia ukazujú, na čo poukazujú dôkazy v posudzovanej databáze; nie sú posúdením celej aplikácie.

Napíšte mi, čo vás brzdí.

Opíšte databázu a hlavný problém s výkonom. Každý dopyt čítam sám a odpovedám osobne.

Čo bude nasledovať

  1. Prečítam si váš dopyt a osobne vám odpíšem e-mailom.
  2. Upresníme problém a dohodneme rozsah kontroly alebo podrobnosti plánu.
  3. Rozhodnete sa, či pokračovať. Bez vášho potvrdenia sa nič nezačne.

Radšej e-mailom?info@skipthewait.services

Čo je pomalé alebo nestabilné a odkedy?

Napríklad veľkosť databázy, počet používateľov, špičky, čo ste už skúšali.

Prosím, neuvádzajte heslá, pripojovacie reťazce ani produkčné dáta.