2017-09-29 11 views
0

Je viens de créer un magasin de valeurs-clés distribuées (écrit en C++) pour un projet de recherche de diplômés, et j'ai besoin de le tester avec des benchmarks db standard. J'aimerais pouvoir utiliser les points de repère du PTC-C et de la YCSB. La banque de valeurs-clés fournit une sémantique ACID (transactionnelle), mais n'a pas d'interface SQL. Il prend en charge deux API: read() et write().Exécution du test de performance TPC-C (ou YCSB) sur le KV-store

Ma question est la suivante: quelle est la manière la plus rapide d'exécuter TPC-C (ou YCSB + T, ou tout autre benchmark db) sur ma base de données? Est-ce que je crée une interface SQL au-dessus de mon magasin k-v (je ne sais pas à quel point cela sera facile/difficile)? Ou est-ce que j'écris les requêtes TPC-C en termes de lectures/écritures, à partir de la spécification du benchmark TPC-C?

Existe-t-il une façon différente de procéder, comme modifier un outil existant qui fait la plupart des travaux lourds pour travailler avec mon kv-store?

Répondre

0

Jetez un oeil à dbbench:

DBbench - Indice de référence de la Embedded Database

Ceci est une réécriture de l'outil de dbbench de Google LevelDB en C, et porté à une grande variété d'autres moteurs de base de données intégrée. Un cadre a été créé pour minimiser la quantité de code qui doit être écrit pour un moteur de base de données particulier. Ajout de la prise en charge pour un nouveau moteur juste nécessite l'écriture d'un petit encapsuleur C fournissant DB ouvrir, fermer, lire, et routines d'écriture, plus les paramètres de ligne de commande facultatifs au besoin.