Cassandra Fréquentes En Lecture Et En Écriture Délais D'Attente

J'avais changé l'ensemble de la base de code de Thrift à CQL à l'aide de datastax java driver 1.0.1 et cassandra 1.2.6..

avec l'épargne, j'ai été fréquents délais d'attente depuis le début, je n'étais pas en mesure de poursuivre l'Adoption de CQL, tableaux conçus selon que j'ai eu de la réussite et moins de délais d'attente....

Avec qui j'ai pu insérer de données énorme qui n'ont pas de travail avec l'épargne...Mais après une étape, dossier de données autour de 3,5 GO. Je suis de fréquents écrire des exceptions d'expiration. même je n'ai même plus tôt de travail de cas d'utilisation de nouveau qui jette aussi de l'exception délai maintenant. SES ALÉATOIRE UNE FOIS TRAVAILLÉ NE FONCTIONNE PAS ENCORE, MÊME APRÈS UNE INSTALLATION FRAÎCHE.

CASSADNRA JOURNAL DU SERVEUR

c'est cassandra serveur partielle log DEBUG mode à l'époque, puis j'ai obtenu l'erreur :

http://pastebin.com/rW0B4MD0

Client exception est la suivante :

Caused by: com.datastax.driver.core.exceptions.WriteTimeoutException: Cassandra timeout during write query at consistency ONE (1 replica were required but only 0 acknowledged the write)
    at com.datastax.driver.core.exceptions.WriteTimeoutException.copy(WriteTimeoutException.java:54)
    at com.datastax.driver.core.ResultSetFuture.extractCauseFromExecutionException(ResultSetFuture.java:214)
    at com.datastax.driver.core.ResultSetFuture.getUninterruptibly(ResultSetFuture.java:169)
    at com.datastax.driver.core.Session.execute(Session.java:107)
    at com.datastax.driver.core.Session.execute(Session.java:76)

Infrastructure :
16 GO machine avec 8 GO de segment donné à cassandra, i7..
Je suis en utilisant un SEUL nœud de cassandra avec cette yaml tordu pour les délais d'attente, tout le reste est par défaut :

  • read_request_timeout_in_ms: 30000
  • range_request_timeout_in_ms: 30000
  • write_request_timeout_in_ms: 30000
  • truncate_request_timeout_in_ms: 60000
  • request_timeout_in_ms: 30000

CAS D'UTILISATION :
je suis en cours d'exécution d'un cas d'utilisation qui stocke les Combinaisons(mon projet de terminologie) de cassandra....Actuellement à des essais de stockage de 250 000 combinaisons avec 100 threads parallèles..chaque thread stocker une combinaison...véritable cas où j'ai besoin de l'appui de dizaines de millions de personnes mais qui aurait besoin d'un matériel différent et multi-nœud de cluster...

Dans le Stockage d'UNE combinaison prend 2sec et implique:

  • 527 requêtes INSERT INTO
  • 506 requêtes de mise à JOUR
  • 954 requêtes SELECT

100 threads parallèles parallèles stockage de 100 combinaisons.

J'avais trouvé le comportement d'ÉCRIRE des délais d'attente aléatoire un certain temps, il travaille jusqu'à 200 000 de jeter des délais d'attente ET, parfois, ne pas travailler, même pour 10k combinaisons. ALÉATOIRE COMPORTEMENT.

Arrêter la journalisation de DÉBOGAGE et de regarder ce qui Statuslogger dit au INFO.

OriginalL'auteur user2572801 | 2013-08-07