2016-08-04 7 views

Antwort

1

Accumulo hat zwei Debug-Versionen, die Sie vor Ort bei der Entwicklung zu helfen, laufen oder Gerät verwenden in testen.

MockAccumulo - eine leichte In-Memory-Version. Ich glaube, dass dies relativ bald zugunsten von Mini Accumulo Cluster aus der Codebasis entfernt werden könnte.

Mini Accumulo Cluster - dies ist viel repräsentativer von Accumulo als MockAccumulo, es führt eigentlich Zookeeper und führt den gleichen Code ein normales Accumulo-Cluster würde laufen.

Ich habe MockAccumulo schon lange benutzt, um bei der Iterator-Entwicklung zu helfen und mindestens einige Arten von Komponententests zu ermöglichen, und fand es sehr hilfreich.

+1

Danke, das funktioniert. Findet das auch zwischen Frage und Antwort - http://affy.blogspot.com/2013/03/testing-your-grepiterator-without.html – kgu87

1

Leider ist das Protokollieren meist das Beste. Es ist ziemlich schwierig, mit einem herkömmlichen Debugger zu debuggen, insbesondere in einer Produktionsumgebung aufgrund der verteilten Natur von Iteratoren. Für das Debugging auf der Geräteebene sollten Sie am besten einige Skripts zusammenstellen, um alle Ihre Protokolle an einem Ort abzurufen, damit Sie sie effizient analysieren können. Im Entwicklungsmodus können Sie Ihren Hadoop-Cluster im lokalen/Einzel/Standalone-Modus einrichten, wodurch es einfacher wird herauszufinden, wo Ihre Iteratoren ausgeführt werden, sodass Sie einen Debugger an den laufenden Prozess anhängen können.

Diese Frage ist nicht für Accumulo pro sagen, aber könnten Sie ein paar Ideen zu tun Protokollierung Debuggen

Consolidate MapReduce logs