Je vois toutes sortes de référence à MongoDB en tant que client pour les points de repère YCSb pour tester l'évolutivité/élasticité du serveur de base de données NoSQL.YCSb - pourquoi je ne peux jamais trouver une configuration tesson partout sur Internet
https://github.com/brianfrankcooper/YCSB
Cependant, il est clair que l'indice de référence, il faudrait une sorte de configuration sharding, parce que les tests sont conçus pour fonctionner sur 6 à 10 machines de serveur pour afficher l'échelle et de l'élasticité.
Je ne peux trouver aucune référence sur Internet pour ce qui ressemble à la configuration avec MongoDB. Je ne peux pas trouver quelqu'un qui a publié des résultats qui ont également publié à quoi ressemble leur configuration.
était ce truc vraiment fait avec succès? Quels sont les résultats comparés aux clients YCSB d'origine comme Cassandra, HBase, etc.
Je suis particulièrement confus car, dans le code du client MongoDB il lit ..... "il y a une instance DB par thread client "... voir l'extrait.
public class MongoDbClient extends DB {
private static final Logger logger = LoggerFactory.getLogger(MongoDbClient.class);
private Mongo mongo;
private WriteConcern writeConcern;
private String database;
/**
* Initialize any state for this DB. Called once per DB instance; there is
* one DB instance per client thread.
*/
public void init() throws DBException {
// initialize MongoDb driver
Properties props = getProperties();
......
Cependant, dans les résultats Brian Cooper YCSb papier, il affirme qu'ils ont couru leur charge de travail jusqu'à 500 threads.
6,1 Configuration expérimentale
Pour la plupart des expériences, nous avons utilisé six serveur classe machines (dual core quad 64 bits 2,5 GHz Intel Xeon, 8 Go de RAM, 6 disque RAID-10 array et gigabit ethernet) pour exécuter chaque système. Nous avons également couru PNUTS sur un cluster de serveurs 47 à démontrer avec succès que YCSb peut être utilisé pour les systèmes de référence plus importants. PNUTS nécessaires deux machines supplémentaires pour servir de serveur de configuration et le routeur et HBase requis une machine supplémentaire appelé le « serveur maître . » Ces serveurs étaient légèrement chargés, et les résultats que nous rapportons dépendent principalement de la capacité de les six serveurs de stockage. Le client YCSB a exécuté une machine séparée 812 . Le client a été exécuté avec jusqu'à 500 fils, selon le débit offert souhaité. Nous avons observé dans nos tests que la machine cliente n'était pas un goulot d'étranglement; en particulier, la CPU était presque inactif, car la plupart du temps a été passé attendre que le système de base de données pour répondre .
Est-ce que quelqu'un sait où il y a une configuration sharding pour cette référence et quels sont les résultats réels par rapport à la concurrence qui peut être sauvegardé par une configuration de tesson ou d'une explication détaillée des raisons pour lesquelles un tesson ne serait pas nécessaire.
Merci, -Robert
Confusion fréquente/Point faux: la classe Mongo représente un pool de connexions plutôt qu'une connexion individuelle. Cela expliquerait une partie de la discussion par client. –
Merci pour l'info Brendan. Pouvez-vous expliquer comment cela se rapporte à ce cas où YCSB est censé se connecter avec 6 bases de données sur 6 machines différentes? Cette question est toujours sans réponse. – Robert
Malheureusement, je ne connais pas YCSB. Il est étrange qu'ils établissent un point de référence, mais ne fournissent aucun exemple de configuration ou de docs. Il est cependant tout à fait possible que cette configuration soit basée sur des ensembles de réplicas plutôt que sur Sharding. –