Oracle NoSQ DB im „kvlite“ Modus unter MS Windows für Test und Entwicklung lokal starten
Für den schnellen Einstieg und erste Testes lässt sich die Oracle NoSQL auch unter Microsoft Windows als ein Single Node System starten, ideal für die Entwicklung und die ersten Schritte mit der Datenbank.
Dazu das Archive kv-ce-3.0.14.zip für die Oracle NoSQL Jar Files von der Oracle Homepage- Oracle NoSQL Database, Server laden und entpacken, im Beispiel nach D:\work\kv-ce-3.0.14.
Für den Store legen wir ein Arbeitsverzeichnis an, im Beispiel R:\KVSTORE.
Eine Java SE Umgebung in der Version 7 muss auf dem Rechner bereitstehen. Der Store wird nur gestartet, eine eigentliche Installation ist bei der Oracle NoSQL im Prinzip nicht notwendig.
Ablauf in n der Dos Shell setzen
Umgebung in der Dos Shell setzen:
REM in das Arbeitsverzeichnis wechseln cd R:\KVSTORE REM Libraries Pfad setzen set KVHOME=D:\kv-cc-3.2.5
Beim ersten Aufruf den Store anlegen und starten:
REM Store anlegen java -jar %KVHOME%\lib\kvstore.jar kvlite -root R:\KVSTORE -store kvstore -host localhost -port 5000 -admin 5001 Created new kvlite store with args: -root R:\KVSTORE -store kvstore -host localhost -port 5000 -admin 5001
In einer zweiten Shell Umgebung setzen und Store stoppen:
java -jar %KVHOME%\lib\kvstore.jar stop -root R:\KVSTORE
Beim zweiten Aufruf nur den Store neu starten:
java -jar %KVHOME%\lib\kvstore.jar kvlite -root R:\KVSTORE Opened existing kvlite store with config: -root R:\KVSTORE -store kvstore -host localhost -port 5000 -admin 5001
Die Admin Shell aufrufen und den Status des Stores abfragen mit:
java -jar %KVHOME%\lib\kvstore.jar runadmin -port 5000 -host localhost kv->ping kv-> ping … Pinging components of store kvstore based upon topology sequence #14 … Rep Node [rg1-rn1] Status: RUNNING,MASTER at sequence number: 39 ha
Die Client Shell aufrufen, einen Datensatz einfügen und auslesen mit:
java -jar %KVHOME%\lib\kvcli.jar -host localhost -port 5000 -store kvstore Connected to kvstore kv-> put kv -key /ABC1234/-/TEST_DATA -value HUGO Operation successful, record inserted. kv-> get kv -all /ABC1234/-/TEST_DATA HUGO 1 Record returned.
Bzgl. der Client Shell siehe auch ⇒ kvcli - Client für den Oracle NoSQL ab der Version 2.1.8
Error "Exception in thread "main" oracle.kv.RequestTimeoutException: Request dispatcher"
Wird die Consistency auf „kvconfig.setConsistency(Consistency.NONE_REQUIRED_NO_MASTER);“ gesetzt, erhält bei dem lokal gestarteten Store folgenden Fehler:
Exception in thread "main" oracle.kv.RequestTimeoutException: Request dispatcher: c-748021249200599166, dispatch timed out after 0 retries. Target: not available (12.1.3.0.14) Timeout: 5000ms Fault class name: oracle.kv.RequestTimeoutException
Lösung:
⇒ kvconfig.setConsistency(Consistency.NONE_REQUIRED);