2013-09-12 3 views
0

У нас мало нормированных таблиц, каждая из которых содержит в среднем 2,5 миллиона строк. Затем есть запрос выбора с объединениями. Выполнение занимает более 30 минут. Сервер db работает на машине с 9 ГБ оперативной памяти и четырехъядерным процессором Xeon. Итак, поскольку я никогда не работал с большими данными, я пытаюсь понять, является ли проблема плохим запросом или это проблема с оборудованием? Любая информация оцениваетсяНасколько велика база данных, чтобы занять 30 минут для запроса

+2

Плохой запрос был бы моим догадком, опубликуйте план объяснения И запрос, который вы используете, и схему таблицы. – Woot4Moo

+6

В качестве дополнительной заметки 2,5 миллиона записей не являются большими данными, если вы не путешествуете во времени с 1962 года. – Woot4Moo

+0

Согласитесь с @ Woot4Moo - определенно звучит как проблема с запросом. Пожалуйста, напишите любую информацию, которую вы можете. –

ответ

1

По моему опыту, 30-минутный запрос не является строго результатом размера БД.

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

Если вы действительно ссылаетесь на время выполнения необработанного запроса непосредственно в базе данных, моим следующим шагом для определения узких мест будет использование модификатора SQL EXPLAIN или приложения, такого как HeidiSQL, для проверки запроса и получения разбивки компонентов запроса.

Я предполагаю, что вы неправильно используете индексы, и БД должна создавать временные индексы и таблицы и выполнять против них. Это будет мое предположение о колене.

Наша усеченная база данных разработки выполняет сложные запросы к таблицам от 1-3 миллионов строк (она содержит небольшое подмножество нашей производственной базы данных и по-прежнему работает на 16 гигабайтах), и хотя мы иногда достигаем ~ 15 минут, эти это огромные запросы.

0

Ничего общего с оборудованием, прежде чем иметь уверенность в своем программном обеспечении. Отправьте запрос с помощью деталей EXPLAIN PLAN.

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