A l'occasion de la conférence TPCTP 2011, qui se tient cette semaine à Seattle, les chercheurs de Microsoft s'apprêtent à suggérer au Transaction Processing Performance Council (TPC) d'ajouter une mesure de disponibilité à ses tests de performances portant sur les bases de données. Une telle mesure fournirait une indication sur la conception du système de base de données et aussi sur la maturité de la technologie, a expliqué Yantao Li, chercheur chez Microsoft. Avec son collègue, Charles Levine, il présentera son argumentaire lors de la conférence (du 29 août au 2 septembre). Cela illustre aussi la nécessité croissante de pouvoir disposer de SGBD opérationnels 24 heures/24, sept jours par semaine.

Le TPC-E décrit par le TPC peut mesurer la performance et les capacités d'extension des systèmes transactionnels en ligne (OLTP), en simulant une charge moyenne dans une société de courtage financier. Mais il ne tient pas compte du temps pendant lequel ces systèmes peuvent fonctionner, ni la rapidité avec laquelle ils peuvent être remis en service si, pour une raison ou une autre, ils sont tombés. C'est cette mesure que les chercheurs de Microsoft proposent donc d'ajouter au test : combien de temps faut-il au système pour redémarrer après un arrêt.

Le fonctionnement des bases de données peut être stoppé pour toutes sortes de raisons. L'arrêt programmé des systèmes peut intervenir à des fins de maintenance ou pour appliquer un correctif de sécurité, par exemple. Les arrêts non programmés peuvent être provoqués par des bugs sur les logiciels, des dysfonctionnements matériels, des coupures de courant ou des erreurs humaines.

Délai moyen avant remise en route

Le test proposé concentrerait dans une mesure unique le temps pendant lequel une base de données peut fonctionner, en moyenne, sans tomber et la rapidité de remise en service après une intervention en cas d'interruption. Cela reviendrait à combiner un MTBF (mean time between failures), temps moyen entre deux pannes, et un MTTR (mean time to recovery), indiquant le temps moyen que le système prend pour se remettre en route.

Pour mesurer le MTTR, les chercheurs proposent d'étendre le System Under Test (SUT) de TPC à tous les composants d'un système de base de données, pas seulement aux serveurs principaux, mais aussi aux serveurs de secours et à la connectivité entre ces différents éléments. Le coût du système pourrait aussi être calculé en même temps que le critère de disponibilité, ce qui permettrait aux acheteurs potentiels d'évaluer si la disponibilité dont ils ont besoin pour leur nouveau système vaut la peine de débourser autant. 

41 secondes pour basculer sur le serveur de secours

Cette proposition est issue de tests d'ingénierie internes de Microsoft. « Nous avons pensé qu'il y avait là des éléments intéressants qui pourraient profiter à une plus large audience », explique Charles Levine, de Microsoft. L'éditeur de Redmond a lui-même utilisé la mesure pour son propre système de bases de données, SQL Server. L'un des tests met en oeuvre un serveur principal et un serveur secondaire, tous deux reposant sur des Dell PE 2950 dotés de processeurs Intel quatre coeurs à 2,66 GHz et de 16 Go de mémoire, exploitant Windows Server 2008 et SQL Server 2008. Dans cette configuration, un arrêt du serveur principal qui conduirait à basculer le traitement sur le serveur de secours prendrait environ 41 secondes, indique le chercheur.

« Nous sommes en quête d'idées de ce type », a expliqué Raghunath Nambiar, responsable de Cisco travaillant sur les stratégies de performance, et co-chairman de la conférence TPCTC 2011. Il rappelle que cette dernière a pour objectif de rassembler de nouvelles idées sur la façon dont les tests de performance peuvent être étendus.

Après la présentation, le Transaction Processing Performance Council va évaluer l'intérêt qu'il peut y avoir pour la communauté à insérer de telles mesures dans son indice TPC-E. « C'est quelque chose qui pourrait  être fait assez rapidement, parce qu'il s'agit d'un ajout à un modèle qui existe déjà », estime pour sa part Charles Levine, de Microsoft.

Illustration : les éléments de l'environnement de référence du TPC Benchmark E (source : TPC)