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.