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 dôkazmi z databázy a 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áciaKód zadáva prácu
  3. DopytSQL odoslané do databázy
  4. DatabázaPlány vykonania, indexy, záťažZameranie 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, či je ten váš vhodný.

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.
  • Pravidelná údržba, napríklad štatistiky a údržba indexov, 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é. Kontrola ukáže, čo naznačujú dôkazy a čo urobiť ďalej.

Potom ju udržujte v dobrej kondícii

Po kontrole udrží plán údržby výkon SQL stabilný: nízke časy dopytov a včas zachytené postupné zhoršovanie. 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ú plány vykonania, 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 pláne vykonania. Netvrdí sa, že index chýba ani že nastalo spomalenie.

Podklady na získanie
  • Reprezentatívny dopyt a jeho skutočný plán vykonania
  • 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ôže 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 dohodnutej oblasti databázy; 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.