Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Prečo môžu dotazy SOQL bežať rýchlejšie v prostredí karantény


Prečo môžu dotazy SOQL bežať rýchlejšie v prostredí karantény


Výkon dotazov SOQL v prostredí karantény

1. Súvislosť údajov: Prostredia karantény majú súvislé údaje, čo umožňuje efektívnejšie vykonávanie dotazov. Je to spôsobené tým, že údaje sa skopírujú z produkčného prostredia, čím sa zaistí, že záznamy budú uložené súvislým spôsobom, čím sa databáze uľahčí efektívne načítanie záznamov[2].

2. Vyrovnávacia pamäť a indexovanie: Prostredia karantény majú menšiu veľkosť vyrovnávacej pamäte a indexu v porovnaní s produkčnými prostrediami. To znamená, že databáza môže rýchlo pristupovať k požadovaným údajom bez nutnosti preosievať veľkú vyrovnávaciu pamäť alebo index, čo vedie k rýchlejšiemu vykonávaniu dotazov[2].

3. Konfigurácia hardvéru: Prostredia karantény sú zvyčajne konfigurované s menej výkonným hardvérom v porovnaní s produkčnými prostrediami. To však môže prispieť aj k rýchlejšiemu vykonávaniu dotazov, keďže databáza je menej zaťažená a môže rýchlejšie reagovať na dotazy[2].

4. Fragmentácia údajov: Produkčné prostredia majú často fragmentované údaje, čo môže viesť k pomalšiemu vykonávaniu dotazov. Na druhej strane prostredia karantény majú súvislé údaje, čím sa znižuje potreba zložitých spojení a zlepšuje sa výkon dotazov[2].

5. Optimalizácia dopytov: Prostredia karantény sú optimalizované na výkon dopytov. To zahŕňa použitie indexov a ukladania do vyrovnávacej pamäte, ktoré sú navrhnuté na zlepšenie rýchlosti vykonávania dotazov[2].

Najlepšie postupy na optimalizáciu dopytov SOQL

1. Použite indexované polia: Použite indexované polia v klauzule WHERE dotazov SOQL na zlepšenie výkonu dotazov[1].

2. Vyhnite sa NULLS: Vyhnite sa používaniu NULLS v dopytoch, pretože bráni použitiu indexov[1].

3. Použite filtre dopytov: Použite filtre dopytov, ktoré dokážu zvýrazniť menej ako 10 % údajov na zlepšenie výkonu dopytov[1].

4. Vyhnite sa zástupným znakom: Vyhnite sa používaniu zástupných znakov v dopytoch, ako napríklad `%`, pretože bránia použitiu indexov[1].

5. Break Complex Queries: Rozdeľte zložité dotazy na jednoduché singulárne dotazy, aby ste mohli efektívne využívať indexy[1].

6. Výber povinných polí: Vyberte len povinné polia v príkaze SELECT, aby ste znížili množstvo načítaných údajov a zlepšili výkon dotazov[1].

Dodržiavaním týchto osvedčených postupov a pochopením rozdielov vo výkone dotazov SOQL medzi prostredím sandbox a produkčným prostredím môžete optimalizovať svoje dotazy pre lepší výkon a efektivitu v Salesforce.

Citácie:
[1] https://www.apexhours.com/large-data-volumes-ldv-in-salesforce/
[2] https://salesforce.stackexchange.com/questions/42163/performance-difference-between-sandbox-and-production-instances
[3] https://coefficient.io/salesforce-tutorials/how-to-run-soql-query-in-salesforce
[4] https://bluecanvas.io/blog/optimizations-for-salesforce-orgs-with-lots-of-data-part-2
[5] https://trailhead.salesforce.com/trailblazer-community/feed/0D54V00007T4MRBSA3