Продуктивність запитів SOQL у середовищі ізольованого програмного середовища
1. Безперервність даних: середовища ізольованого програмного середовища мають безперервні дані, що дозволяє ефективніше виконувати запити. Це пояснюється тим, що дані копіюються з виробничого середовища, що гарантує безперервне зберігання записів, що полегшує базі даних ефективне отримання записів[2].2. Кеш-пам’ять та індексування: пісочниця має менший розмір кешу та індексу порівняно з робочими середовищами. Це означає, що база даних може швидко отримати доступ до необхідних даних без необхідності переглядати великий кеш або індекс, що призводить до швидшого виконання запитів[2].
3. Конфігурація апаратного забезпечення: середовищі ізольованого програмного середовища зазвичай налаштовуються з менш потужним апаратним забезпеченням порівняно з робочими середовищами. Однак це також може сприяти швидшому виконанню запитів, оскільки база даних менш завантажена і може швидше відповідати на запити[2].
4. Фрагментація даних: виробничі середовища часто мають фрагментовані дані, що може призвести до уповільнення виконання запитів. З іншого боку, пісочниці містять безперервні дані, що зменшує потребу в складних об’єднаннях і покращує продуктивність запитів[2].
5. Оптимізація запитів: середовища ізольованого програмного середовища оптимізовано для продуктивності запитів. Це включає в себе використання індексів і кешування, які призначені для підвищення швидкості виконання запитів[2].
Найкращі методи оптимізації запитів SOQL
1. Використовуйте індексовані поля: використовуйте індексовані поля в пункті WHERE запитів SOQL для покращення продуктивності запитів[1].2. Уникайте NULLS: уникайте використання NULLS у запитах, оскільки це запобігає використанню індексів[1].
3. Використовуйте фільтри запитів: використовуйте фільтри запитів, які можуть виділяти менше 10% даних, щоб покращити продуктивність запитів[1].
4. Уникайте символів підстановки: уникайте використання символів підстановки в запитах, таких як `%`, оскільки це запобігає використанню індексів[1].
5. Розбивайте складні запити: розбивайте складні запити на прості одиничні запити для ефективного використання індексів[1].
6. Виберіть обов’язкові поля: виберіть лише обов’язкові поля в інструкції SELECT, щоб зменшити обсяг отриманих даних і підвищити ефективність запиту[1].
Дотримуючись цих найкращих практик і розуміючи відмінності в продуктивності запитів SOQL між ізольованим і робочим середовищами, ви можете оптимізувати свої запити для кращої продуктивності та ефективності в Salesforce.
цитати:[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