aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorevgeniya-ch <evgeniya-ch@yandex-team.ru>2022-04-07 11:17:44 +0300
committerevgeniya-ch <evgeniya-ch@yandex-team.ru>2022-04-07 11:17:44 +0300
commit4d5dc0e55df42e1f407c2809485f9742e10e5509 (patch)
tree52f908c4ce1df5ed071dbe9a54cbeb339103407f
parente87eae2e0f783adf63b4156d2b39c64732ee041b (diff)
downloadydb-4d5dc0e55df42e1f407c2809485f9742e10e5509.tar.gz
add localisation for link and minor fix
ref:ec3e87331cd1f8dc6caba66ebd178c0b377a3926
-rw-r--r--ydb/docs/ru/core/best_practices/_includes/secondary_indexes.md18
1 files changed, 9 insertions, 9 deletions
diff --git a/ydb/docs/ru/core/best_practices/_includes/secondary_indexes.md b/ydb/docs/ru/core/best_practices/_includes/secondary_indexes.md
index 4ccbd505a1..667734a0da 100644
--- a/ydb/docs/ru/core/best_practices/_includes/secondary_indexes.md
+++ b/ydb/docs/ru/core/best_practices/_includes/secondary_indexes.md
@@ -1,6 +1,6 @@
# Вторичные индексы
-[Индексы](https://ru.wikipedia.org/wiki/Индекс_(базы_данных)) -- вспомогательные структуры в базах данных, позволяющие находить подходящие под определенный критерий данные без необходимости их полного перебора, а также получать отсортированные выборки без выполнения фактической сортировки, требующей обработки полного набора всех сортируемых данных.
+[Индексы]{% if lang == "ru" %}(https://ru.wikipedia.org/wiki/Индекс_(базы_данных)){% endif %}{% if lang == "en" %}(https://en.wikipedia.org/wiki/Database_index){% endif %} — вспомогательные структуры в базах данных, позволяющие находить подходящие под определенный критерий данные без необходимости их полного перебора, а также получать отсортированные выборки без выполнения фактической сортировки, требующей обработки полного набора всех сортируемых данных.
Данные в таблицах YDB всегда проиндексированы по первичному ключу. Это означает, что получение любой записи из таблицы с заданными значениями полей, составляющих первичный ключ, всегда будет занимать минимальное фиксированное время, вне зависимости от общего количества записей в таблице. Также наличие индекса по первичному ключу позволяет получить любой последовательный диапазон записей по возрастанию или убыванию первичного ключа. Время исполнения такой операции будет зависеть только от количества получаемых записей, но не зависеть от общего количества записей в таблице.
@@ -19,15 +19,15 @@
Так как индекс содержит собственные данные, являющиеся производными от данных в таблице, то при создании индекса на существующей таблице с данными будет выполнена операция начального построения индекса, которая может занимать продолжительное время. Данная операция выполняется в фоновом режиме, не блокирует работу с таблицей, но до окончания построения новым индексом воспользоваться будет невозможно.
Использование индекса возможно только в порядке включенных в него полей. Если в индексе два поля `a` и `b`, то такой индекс может быть эффективно использован для запросов вида:
-- `where a = $var1 and b = $var2`
-- `where a = $var1`
-- `where a > $var1`, а также другие операторы сравнения
-- `where a = $var1 and b > $var2`, а также любые другие операторы сравнения, но первое поле должно проверяться на равенство
+* `where a = $var1 and b = $var2`;
+* `where a = $var1`;
+* `where a > $var1`, а также другие операторы сравнения;
+* `where a = $var1 and b > $var2`, а также любые другие операторы сравнения, но первое поле должно проверяться на равенство.
При этом, такой индекс не может быть применен для следующих запросов:
-- `where b = $var1`
-- `where a > $var1 and b > $var2`, точнее эта запись будет равнозначна `where a > $var1` с точки зрения применения индекса
-- `where b > $var1`
+* `where b = $var1`;
+* `where a > $var1 and b > $var2`, точнее эта запись будет равнозначна `where a > $var1` с точки зрения применения индекса;
+* `where b > $var1`.
С учетом описанной выше особенности, бесполезно пытаться заранее индексировать все возможные комбинации колонок в таблице в расчете на быстрое исполнение любых запросов. Индекс - это всегда компромисс между скоростью поиска и записи, а также занимаемым данными местом в хранилище. Индексы создаются под конкретные выборки и условия поиска, которые будут делаться приложением в базе данных.
@@ -42,7 +42,7 @@ FROM orders as o view idx_customer
WHERE o.id_customer = $customer_id
```
-, где `idx_customer` -- имя вторичного индекса на таблице `orders`, первым в котором указано поле `id_customer`.
+, где `idx_customer` — имя вторичного индекса на таблице `orders`, первым в котором указано поле `id_customer`.
Без указания секции `view` для выполнения такого запроса будет полностью просканирована таблица `orders`.