Bonjour à tous,
Je vous explique briévement mon problème.
Je fournis une base de données assez importante en taille sur internet, pour le moment ma base a environ 15 à 18 milliards d'entrées.
Pour accéder à cette base (qui était en fait une flat donc avec des fichiers texte), j'utilisais un shell_exec en php avec des commandes unix. Sur mon mutualisé ça marchait très bien, et il me fallait environ 45s pour faire 500 requêtes.
Maintenant j'ai voulu sur mon nouveau dédié faire la même chose. Pour les essais j'ai reproduit une partie de ma base et j'ai mis le même système de shell_exec.
Sauf que maintenant ça prend environ 60s pour une trentaine de requêtes, sur un base moins grande en plus. Bref après quelques recherches je me suis rendu compte que shell_exec était ce qui ralentissait, car il crée un shell à chaque appel. Je ne sais pas pourquoi sur mon mutualisé je peux demander 1500 requêtes en 2mn avec shell_exec tandis qu'avec 60 sur mon dédié ça prend autant de temps. Bref.
Donc je me suis dit que j'allais passer à une "vraie" BDD sql. J'en étais revenu à cause des temps de lecture que je trouvais assez longs. A terme je vais avoir une base séparée en plusieurs tables d'environ 120/130Go (avec 12 milliards d'entrées par table), ces même tables seront séparées en 256 sous-section pour faciliter la recherche.
Et donc je viens vers vous pour avoir des informations sur la BDD a utiliser, ainsi que les problèmes auxquels je peux m'attendre en essayant d'importer un bon téra de données sur une base sql.
Ou si vous avez une solution pour améliorer mon shell_exec (peut être créer un cgi ? Mais je devrais l'appeler depuis php je pense).
En vous remerciant par avance pour vos éclaircissements.
Bonne journée
