auf CouchDB Ich habe die folgende Ansicht:CouchDB scheint anders MapReduce zu implementieren zu Couchbase-lite
function(doc) {
if(doc._id === 'countryMobileNumberCodes') {
Object.keys(doc.dictionary).forEach(function(k, i) {
emit(k, doc.dictionary[k]);
});
}
}
Dies gibt das folgende Ergebnis:
{"total_rows":2,"offset":0,"rows":[
{"id":"countryMobileNumberCodes","key":"1","value":"+265"},
{"id":"countryMobileNumberCodes","key":"2","value":"+27"}
]}
Die gleiche Ansicht auf Android (mit couchbase- lite-android 1.2.1) gibt keine Zeilen aus. Wenn ich jedoch die Ansicht, dies zu ändern war:
function(doc) {
if(doc._id === 'countryMobileNumberCodes') {
emit(doc._id, doc.dictionary);
}
}
Dann mache ich Ergebnisse von Couchbase-lite bekommen (so die Dokumente existieren definitiv auf dem mobilen Gerät).
Implementiert CouchDB MapReduce anders als couchbase-lite?
Ich habe Bezug genommen auf die Tatsache, dass Couchbase-Lite und CouchDB 100% kompatibel sind, aber das scheint nicht der Fall zu sein (Couchbase-lite and CouchDB).
Sie sind kompatibel, dass sie miteinander synchronisieren können, aber abgesehen davon, dass sie zwei Produkte sind, die von zwei Entitäten entwickelt werden. Sie verwenden verschiedene Javascript-Engines usw. – borrrden