J'ai rencontré le problème suivant, que je reconnais est plutôt typique.
J'ai quelques grandes données, disons, quelques millions de lignes. J'exécute une analyse non triviale dessus, par exemple une requête SQL composée de plusieurs sous-requêtes. J'obtiens un résultat, déclarant, par exemple, que la propriété X augmente avec le temps.
Maintenant, il y a deux choses possibles qui pourraient mener à cela:
- X augmente en effet avec le temps
- J'ai un bug dans mon analyse
Comment puis-je tester que le premier s'est produit, plutôt que le second? Un débogueur pas à pas, même s'il existe, n'aidera pas, car les résultats intermédiaires peuvent toujours se composer de millions de lignes.
La seule chose à laquelle je pouvais penser était de générer en quelque sorte un petit ensemble de données synthétiques avec la propriété que je veux tester et d'exécuter l'analyse sur celui-ci comme un test unitaire. Existe-t-il des outils pour ce faire? Particulièrement, mais sans s'y limiter, SQL.