2009-06-08 4 views
0

, если мы сделаем индекс на первичном ключе таблицы, как бы увеличить производительность, как если бы желаемая запись, создающая индекс, могла появиться в конце списка индексов!Индексирование баз данных

+0

Возможный дубликат [Как работает индексация базы данных?] (Http://stackoverflow.com/questions/1108/how-does-database-indexing-work) –

ответ

1

Современные базы данных всегда имеют индекс первичного ключа. Создание другого - в лучшем случае - ничего не делает для вашей работы.

2

Я думаю, вы ошибаетесь в своем понимании того, как работают индексы. Они не списки.

Для вводного чтения индексов см. Wikipedia article.

0

Индекс, как правило, сортируется. Затем база данных может использовать двоичный поиск и другие механизмы для обеспечения эффективного поиска нужного элемента. Кроме того, таблица использует первичный ключ как кластеризованный индекс (обычно) - данные в таблице выложены в том же порядке, что и этот индекс, что означает, что поиск данных по этому индексу еще быстрее.

1

После создания индекса в таблице любые действия в этой таблице (вставки, обновления & удаляются) также будут внесены в индекс, сохраняя таблицу и индекс в синхронизации.

Итак, если строка добавляется после создания индекса, она будет помещена в индекс в нужном месте.

Если это верно в конце списка IS, оно все же быстрее, потому что база данных будет использовать Binary Search (или другой оптимизированный алгоритм поиска), чтобы найти элемент, в результате чего гораздо меньше читаемых данных, чем полное сканирование таблицы.

Надеется, что это помогает,

0

Означает ли это, что без поиска Algos индексации не будет делать ничего хорошего ????

Смежные вопросы