Laste ned presentasjonen
Presentasjon lastes. Vennligst vent
1
på Android (Relax?) på Android (Relax?) @glennbech @baksiaOslo glenn.bech@inmeta.com http://www.baksia.org http://www.baksia.org http://www.glennbech.com
2
• Litt om CouchDB • Demo • CouchDB på android devicer • Hvorfor? • Hvordan? Et par alternativer • (Demo)
5
• http://www.infoq.com/presentations/katz-couchdb-and-me http://www.infoq.com/presentations/katz-couchdb-and-me • http://blog.stackoverflow.com/2009/06/podcast-59/ http://blog.stackoverflow.com/2009/06/podcast-59/
6
Lotus Notes askSam Apstrata Datawasp CRX MUMPSDatabase UniVerse UniData Jackrabbit CouchDB FleetDB MongoDB GemFire Enterprise OrientDB RavenDB Redis StrokeDB Terrastore ThruDB Persevere DBSlayer
7
{ "_id": "BCCD12CBB", "type": "person", "name": "Darth Vader", "age": 63, "headware": ["Helmet", "Sombrero"], "dark_side": true } { "_id": "BCCD12CBC", "type": "person", "name": "Luke", "age": 35, "powers": ["Pull", "Jedi Mind Trick"], "dark_side": false }
8
SQLREST Insert into…HTTP PUT /db/id Select * fromHTTP GET /db/id UpdateHTTP PUT /db/id DeleteHTTP DELETE /db/id DBAHTTP GET /mydb/, HTTP GET/_all_dbs, HTTP PUT /_replicate, HTTP POST /mydb/_bulk_docs
9
• Multi master replikering som oppdager konflikter • «Eventual Consistency»
10
SQL > Select id, name from Person CouchDB Function (doc) { emit(doc._id, doc.name) }
12
SQL > Select darkside, count(*) from Person group by darkside
14
• Starte server Starte server • http://46.137.75.167:5984/_ all_dbs http://46.137.75.167:5984/_ all_dbs • http://46.137.75.167:5984/_ utils http://46.137.75.167:5984/_ utils • curl -X PUT http://46.137.75.167:5984/anewdb • curl -X DELETE http://46.137.75.167:5984/anewdbhttp://46.137.75.167:5984/
15
• Android har god rammeverstøtte for JSON & HTTP
17
• Full funksjonalitet i områder uten nettdekning/variabel dekning • Økonomiske hensyn (Roaming? Synkronisere data over WIFI)
18
Replication OFFLINE [ONLINE]
19
• Skrivehastighet viktig, Nettverk ingen opsjon • «Runkeeper» • Telemetri
20
POST http://127.0.0.1:5984/db/_bulk_docs
21
GET /db/_changes?feed=continous&since=4 Delta (n1,n2,n3,n4)
23
• Adb forward tcp:80 tcp:5984
25
• Couchbase for Android • Basert på Apache CouchDB • Støtte for å pakke databasen sammen med Applikasjonen på under 5mb
26
• Beta. Kun master på Github • <9 timer siden sist modifikasjon ved min «git clone» • Måtte laste ned Android Native Development KIT (NDK) • Fikk ikke utviklingsmiljø på Windows 7 i gang (måtte bruke Ubuntu) • Replikering via. Curl fungerer fint • Jobber nå med Replikering initiert fra Android kode • Ta gjerne en prat på Oslo mekaniske om dere er nysgjerrige
27
Noen forslag • Jackson JSON (~200k) POJO Mapper mm. http://jackson.codehaus.org/ http://jackson.codehaus.org/ • Couch Droid. «Lightweight» (< 39k) http://nosql.mypopescu.com/post/371951782/droidcouch- android-library-for-couchdb http://nosql.mypopescu.com/post/371951782/droidcouch- android-library-for-couchdb • AndCouch (Super lettvekt, en klasse, del av Couchbase) https://github.com/couchbaselabs/Android-Couchbase.git https://github.com/couchbaselabs/Android-Couchbase.git
28
• http://horicky.blogspot.com/2008/10/couchdb- implementation.html http://horicky.blogspot.com/2008/10/couchdb- implementation.html • http://wiki.apache.org/couchdb/Installing_on_Ubuntu http://wiki.apache.org/couchdb/Installing_on_Ubuntu • http://guide.couchdb.org/ http://guide.couchdb.org/ • http://www.youtube.com/watch?v=3RdcKWYGqig http://www.youtube.com/watch?v=3RdcKWYGqig • https://github.com/couchbaselabs/Android-Couchbase https://github.com/couchbaselabs/Android-Couchbase • https://cloudant.com/ https://cloudant.com/
Liknende presentasjoner
© 2024 SlidePlayer.no Inc.
All rights reserved.