2014-01-10 7 views
7

Ich bin total neu in couchbase. Ich benutze die Java API und möchte irgendwie alle verfügbaren Schlüssel in einem Eimer sehen. Ist das möglich? Vielen Dank im Voraus.So extrahieren, in einer Liste, alle Schlüssel aus einem Eimer in couchbase

+0

Mayer06, könnten Sie recht haben, aber im Sinn haben, dass nicht alle Menschen Devs sind, dass fassen kann einfach alle info.For Beispiel bin ich ein qa engineer.Ich benutze Dev-Tools und ich Code, aber aufgrund meiner Art von meiner Arbeit kann ich nicht immer so tief gehen, wie Sie wahrscheinlich können. –

+1

Einverstanden, kein Problem dort - aber StackOverflow Fragen sollten ein wenig Aufwand von Ihnen zeigen :) – theMayer

Antwort

11

Es ist möglich, aber Sie müssen eine Ansicht erstellen, um dies zu tun (Sekundärindex).

Sie können wie so eine Ansicht in Couchbase webconsole erstellen:

function (doc, meta) { 
    if(meta.type == "json") { 
    emit(null); 
    } 
} 

Diese alle Schlüssel emittieren (Schlüssel werden ohnehin automatisch ausgesendet, so dass keine Notwendigkeit, etwas extra enthalten).

Dann können Sie die Ansicht wie folgt mit dem Java-SDK abfragen. (Natürlich müssen Sie den Client Couchbase etc instanziiert)

View view = couchbaseClient.getView("DESIGN_VIEW NAME", "VIEW_NAME"); 
Query query = new Query(); 
ViewResponse viewResponse = couchbaseClient.query(view, query); 

List<String> keys = new ArrayList<String>(); 
for (ViewRow viewRow : viewResponse) { 
    keys.add(viewRow.getKey()); 
} 
+0

danke! Ich werde es versuchen und ich werde Sie wissen lassen –

+0

gibt es einen Weg ohne eine Sicht? –

+0

Hi @BenoyPrakash Dies ist die einzige Möglichkeit, auf alle Schlüssel in Couchbase zuzugreifen. – scalabilitysolved

Verwandte Themen