У нас мало нормированных таблиц, каждая из которых содержит в среднем 2,5 миллиона строк. Затем есть запрос выбора с объединениями. Выполнение занимает более 30 минут. Сервер db работает на машине с 9 ГБ оперативной памяти и четырехъядерным процессором Xeon. Итак, поскольку я никогда не работал с большими данными, я пытаюсь понять, является ли проблема плохим запросом или это проблема с оборудованием? Любая информация оцениваетсяНасколько велика база данных, чтобы занять 30 минут для запроса
ответ
По моему опыту, 30-минутный запрос не является строго результатом размера БД.
В такой ситуации существует много переменных, зависящих от того, что вы рассматриваете во время запроса. Вы имеете в виду время выполнения, воспринимаемое в конце пользователя (например: запрос веб-страницы или время отклика приложения)? Или вы ссылаетесь на необработанный запрос, который выполняется непосредственно в базе данных (через менеджера баз данных или в командной строке)?
Если вы действительно ссылаетесь на время выполнения необработанного запроса непосредственно в базе данных, моим следующим шагом для определения узких мест будет использование модификатора SQL EXPLAIN или приложения, такого как HeidiSQL, для проверки запроса и получения разбивки компонентов запроса.
Я предполагаю, что вы неправильно используете индексы, и БД должна создавать временные индексы и таблицы и выполнять против них. Это будет мое предположение о колене.
Наша усеченная база данных разработки выполняет сложные запросы к таблицам от 1-3 миллионов строк (она содержит небольшое подмножество нашей производственной базы данных и по-прежнему работает на 16 гигабайтах), и хотя мы иногда достигаем ~ 15 минут, эти это огромные запросы.
Ничего общего с оборудованием, прежде чем иметь уверенность в своем программном обеспечении. Отправьте запрос с помощью деталей EXPLAIN PLAN.
- 1. Насколько велика база данных гидролокатора?
- 2. Насколько велика база данных CMS?
- 3. Насколько велика такая база данных?
- 4. Насколько велика может быть база данных H2?
- 5. Насколько велика может быть база данных Sourcesafe перед «проблемами»?
- 6. Насколько велика величина i2c_msg.buf?
- 7. База данных Couchdb слишком велика для компактности?
- 8. Насколько велика Метеорная сессия
- 9. Насколько велика таблица страниц для виртуальной памяти?
- 10. Насколько «идеальна» база данных?
- 11. Насколько велика моя матрица?
- 12. Насколько велика большая?
- 13. Насколько велика слишком большая (для NTFS)
- 14. Насколько велика глобально объявленная структура данных?
- 15. Насколько велика должна быть cachDirectory?
- 16. Насколько велика будет изображение UIBarButtonItem?
- 17. Насколько велика «слишком большая» для javascript-файла
- 18. Почему моя база данных Realm настолько велика?
- 19. Насколько велика высота таблицы hbase?
- 20. Насколько плохо эта база данных для адреса?
- 21. Насколько велика единая ячейка памяти?
- 22. Насколько велика величина nvarchar (max) для ADO?
- 23. Насколько велика слишком большая для магазина redux?
- 24. Насколько надежна база данных h2?
- 25. Насколько велика переменная, в python?
- 26. Насколько велика строка в PHP?
- 27. Насколько велика wchar_t с GCC?
- 28. Насколько велика Integer() в Java?
- 29. Насколько велика диаграмма, чтобы вызвать наихудшую сложность кучи Фибоначчи?
- 30. SQL для запроса меньше или равно 16 часам 30 минут?
Плохой запрос был бы моим догадком, опубликуйте план объяснения И запрос, который вы используете, и схему таблицы. – Woot4Moo
В качестве дополнительной заметки 2,5 миллиона записей не являются большими данными, если вы не путешествуете во времени с 1962 года. – Woot4Moo
Согласитесь с @ Woot4Moo - определенно звучит как проблема с запросом. Пожалуйста, напишите любую информацию, которую вы можете. –