Muitas vezes, ao tentar criar um design de banco de dados eficiente, o melhor curso de ação é criar dois bancos de dados de amostra, preenchê-los com dados e executar algumas consultas com eles para ver qual deles tem melhor desempenho.
Existe uma ferramenta que irá gerar (idealmente direto para o banco de dados) grandes (~ 10.000 registros) grandes conjuntos de dados de teste com relativa rapidez? Estou procurando algo que pelo menos funcione com o MySQL.
Normalmente, eu gero os meus, usando alguns dados conhecidos como entrada - se é muito aleatório, nem sempre é um bom teste; Preciso de dados que serão distribuídos de maneira semelhante ao meu produto final.
Todos os bancos de dados maiores que eu tenho que ajustar são de natureza científica - então geralmente posso usar outras investigações como entrada e redimensioná-las e adicionar jitter. (por exemplo, pegar dados com cadência de 5 minutos com precisão de milissegundos e transformá-los em cadência de 10 segundos com precisão de milissegundos, mas com instabilidade de +/- 100 ms às vezes)
...
Mas, como outra alternativa, se você não quiser escrever por conta própria, é examinar algumas das ferramentas de benchmarking - como elas podem repetir as coisas várias vezes com base em um conjunto de treinamento, você pode usá-las para inserir muitas de registros (e depois ignore os relatórios sobre a rapidez com que ele foi feito) ... e, em seguida, você poderá usar a mesma ferramenta para testar a rapidez com que o banco de dados executa uma vez preenchido.
fonte
Eu tenho usado o mysqlslap. Ele limpa depois de si também.
Aqui está o artigo que li quando comecei a usá-lo.
fonte
Dê uma olhada no benerator
Não é fácil começar, mas é bastante poderoso.
fonte
Dê uma olhada nesta função. Você pode gerar nomes, endereços de números de telefone, códigos postais, etc. etc. Isso é feito completamente no MYSQL, sem a necessidade de outros aplicativos. http://moinne.com/blog/ronald/mysql/howto-generate-meaningful-test-data-using-a-mysql-function
fonte
A maneira mais econômica é provavelmente usar um gerador de dados comerciais ou de código aberto. Eu costumava fazer isso.
Agora, nos meus anos dourados, considero cada necessidade de dados de teste um mandato para aprender outra linguagem de script.
fonte
Para quem procura uma solução diferente para esse problema ... escrevi um projeto de gerador de dados de teste para o Data Synchronization Studio. Ele pode gerar um grande conjunto de dados que varia de 1 a 100s de milhões de linhas de dados de teste realistas. Aqui está um post sobre tudo. http://www.simego.com/Blog/2012/02/Test-Data-Generator-Download-for-Data-Sync É grátis para uso por 15 dias (depois de ter os dados do teste, você os possui)
fonte