Андрій Новосьолов (andrzejn) wrote,
Андрій Новосьолов
andrzejn

Автоматизация

Давным-давно, когда Windows и SQL серверов ещё не было, базы данных уже были, и в них уже были индексы (даже в таких экзотических, как Btrieve, где не было полей). В те времена программисты сами думали о том, какие индексы им нужны для наилучшего быстродействия, и сами явно вызывали поиск каждой записи по тому или иному индексу.

Потом появились SQL сервера, которые научились сами составлять планы исполнения запросов и подбирать под них подходящие индексы из наличных. Правда, поначалу они делали это плохо - им часто приходилось подсказывать, какой индекс лучше брать. И индексы по-прежнему надо было придумывать и создавать явными командами.

Потом в дополнение к индексам появились статистики, и сервера стали составлять всё лучшие планы запросов, пока не превзошли в этом абсолютное большинство людей. Но индексы и статистики по-преэнему надо было сочинять самим.

Потом практически во все сервера добавили утилиты-оптимизаторы, которые анализировали предложенные запросы на наличных данных и, зная тайные алгоритмы планировщика, подсказывали, какие индексы и статистики надо ещё создать, чтобы повысить скорость. Но подбирать список запросов, просматривать список советов и запускать его на исполнение по-прежнему нужно вручную.

Следующий очевидный шаг - чтобы SQL сервера сами анализировали поступающие запросы в ходе обычной повседневной работы, сами создавали новые индексы и статистики, когда надо, а устаревшие - удаляли. А потом и вовсе отобрать эту возможность у программистов. Любопытно, это где-нибудь уже сделали?
Tags: работа
Subscribe

  • Последовательный материализм

    Одиннадцать лет назад я прочитал в посте https://rikki-t-tavi.livejournal.com/732805.html об интересном эксперименте: тщательно отслеживать у себя…

  • О нишевых ароматах

    Хранитель Запахов наклонился к шкафу и сунул большой чёрный ключ в замочную скважину. Он несколько раз повернул ключ. Дверцы шкафа длинно заскрипели…

  • Они не со зла

    Наблюдение организатора событий (я их сейчас организую сразу несколько разных, а ещё есть другие знакомые организаторы). Люди сейчас очень…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 8 comments