Во многих случаях, пытаясь придумать эффективный дизайн базы данных, лучше всего создать две базы данных, заполнить их данными и выполнить несколько запросов к ним, чтобы увидеть, какая из них работает лучше.
Существует ли инструмент, который будет генерировать (в идеале прямо в базу данных) большие (~ 10 000 записей) наборы тестовых данных относительно быстро? Я ищу что-то, что по крайней мере работает с MySQL.
Я обычно генерирую свои собственные, используя некоторые известные данные в качестве входных данных - если они слишком случайные, это не всегда хороший тест; Мне нужны данные, которые будут распространяться аналогично моему конечному продукту.
Все более крупные базы данных, которые мне нужно настроить, носят научный характер, поэтому я обычно могу взять в качестве входных данных какое-то другое исследование, изменить его масштаб и добавить дрожание. (например, взять данные, которые имели 5-минутную частоту с точностью до миллисекунды, и превратить их в 10-секундную частоту с точностью до миллисекунды, но с дрожанием +/- 100 мс до времени)
...
Но, в качестве другой альтернативы, если вы не хотите писать свои собственные, стоит взглянуть на некоторые из инструментов сравнения - так как они могут повторять вещи снова и снова на основе учебного набора, вы можете использовать их для вставки лотов. записей (а затем просто игнорировать отчеты о том, как быстро это было сделано) ... и затем вы можете использовать тот же инструмент для проверки скорости работы базы данных после ее заполнения.
источник
Я использовал mysqlslap. Это убирает за собой тоже.
Вот статья, которую я прочитал, когда начал ее использовать.
источник
Посмотрите на благодетеля
Начать нелегко, но достаточно мощно.
источник
Посмотрите на эту функцию. Вы можете генерировать имена, адреса телефонных номеров, почтовые индексы и т. Д. Это полностью сделано в MYSQL без необходимости использования других приложений. http://moinne.com/blog/ronald/mysql/howto-generate-meaningful-test-data-using-a-mysql-function
источник
Наиболее экономически эффективным способом, вероятно, является использование открытого источника или коммерческого генератора данных. Я имел обыкновение делать это.
Теперь, в мои золотые годы, я рассматриваю каждую потребность в тестовых данных как мандат на изучение другого языка сценариев.
источник
Для тех, кто ищет другое решение этой проблемы ... Я написал тестовый проект генератора данных для Data Synchronization Studio. Он может генерировать большой набор данных в диапазоне от 1 до 100 миллионов строк данных реалистичного тестирования. Вот сообщение в блоге все об этом. http://www.simego.com/Blog/2012/02/Test-Data-Generator-Download-for-Data-Sync Бесплатное использование в течение 15 дней (если у вас есть данные испытаний, они у вас есть)
источник