Mobiles: All content tagged as Mobiles in NoSQL databases and polyglot persistence
Friday, 9 March 2012
Cross-Platform Global High-Score Using Amazon SimpleDB
Timo Fleisch provides a set of requirements for which using Amazon SimpleDB for storing mobile gaming data sound like a good solution:
In this post I am going to describe my solution for a simple global high score that works with WP7, iOS and Android. […] The preconditions for me for the global high score where:
- It should be easy and fast to implement and maintain.
- It should use standard web technologies.
- It should be scaleable.
- It should use the standard web http protocol.
- It should be secure,
- and it should be as cross platform as possible.
SimpleDB definitely fits the bill for these requirements. But there might be some other details that could lead to using a different approach or making things a tad more complex:
- the Amazon SimpleDB latency
- the always-connected to the internet requirement
Original title and link: Cross-Platform Global High-Score Using Amazon SimpleDB (©myNoSQL)
via: http://klutzgames.blogspot.com/2012/03/cross-platform-global-high-score-using.html
Thursday, 9 February 2012
Tropo and CouchDB: SMS Voting App in 10 Minutes
Mark Headd:
By pairing Tropo with CouchDB and a CouchApp running in IrisiCouch, you can have an SMS and phone voting app running entirely in the cloud in about 10 minutes. It should actually take you longer to write up the categories for your voting app than it should to deploy this solution.
Code available on GitHub.
Original title and link: Tropo and CouchDB: SMS Voting App in 10 Minutes (©myNoSQL)
via: http://blog.tropo.com/2012/02/08/sms-voting-app-in-10-minutes-with-tropo-and-couchdb/
Wednesday, 18 January 2012
MongoDB at Viber Media: The Platform Enabling Free Phone Calls and Text Messaging for Over 18 Million Active Users
Back in November there has been quite a bit of buzz around MongoDB being behind Viber Media’s technology for free phone calls and text messaging. Understandingly so, considering we are talking about a platform with more than 18 million active users talking for more than 11 million minutes every day—and these numbers have probably grown quite a bit over the holiday season.
The nice folks from Viber Media[1] have been kind enough to share more details about their platform and the way MongoDB is used. Here is the complete exchange:
Q: Could you briefly describe how your application works so we could better understand where MongoDB fit into your architecture?
Viber’s mobile clients connect to a central service that can route messages to other such clients. These messages can either be text messages or “signals” for establishing a phone call. These front-end servers use MongoDB as a common data-store. We store variable length documents that include dictionaries.
Q: What were the main reasons that led you to use MongoDB? Were there other solutions that you’ve been tempted to use for your architecture?
We started with a proprietary code, but with the large increase in the number of new registrations per day, we realized that we needed a database that will be both scalable and redundant. At that time, this was the only database that looked like a good fit for both.
Q: The announcement mentioned that currently your clusters run on 130 nodes in the Amazon cloud. Could you describe the deployment and what components of the Amazon cloud are involved?
We have 65 MongoDB shards. Each shard consists of a master and a slave. A single EC2 instance is used for running arbiters for all shards. We are using a RAID5 (moving to RAID10) volume consisting of 6 EBS volumes for each MongoDB machine. All instances are m2x.large but we plan to migrate into larger instances.
More Amazon technology at work:
- we are using ELB as a front-end for our proprietary load-balancers and for off-loading HTTPS processing
- we are using S3 for storing pictures sent between users.
Q: How do you monitor your MongoDB cluster? Are there people in your team dedicated to managing the MongoDB cluster?
We have a small team to support our application and MongoDB cluster (we’re looking for MongoDB admins, BTW). We use our own monitoring server to monitor both cluster and a 10Gen MMS (Mongo Monitoring Service) to solely monitor MongoDB.
Q: Your platform has seen amazing growth reaching 18 mil. active users in less than 1 year. What has this growth meant in terms of evolving and managing the MongoDB deployment?
Hard work :). MongoDB has been very useful for increasing our reach to active users. Our exact methods are proprietary and therefore cannot be disclosed.
Q: What were the most notable moments in the evolution of your MongoDB cluster? Has it seen any radical changes over the time? Did you have to migrate your cluster to newer versions of MongoDB, etc.?
We have migrated versions from 1.7.6 to 1.8 and now to 2.0. We are still having a few problems with the last version, but we keep improving all the time.
Q: Were there any (major) bumps in the road with MongoDB? Or differently put, are there areas in which you’d like to see MongoDB improving?
- The database of the config server is not recovering (no master-slave). This misunderstanding has caused us to have 24 hours’ downtime with Viber at the beginning.
- The memory consumption of MongoDB is too high.
Thanks guys and good luck growing your platform!
-
My thanks also to Meghan Gill and Darah Roslyn which helped getting this interview. ↩
Original title and link: MongoDB at Viber Media: The Platform Enabling Free Phone Calls and Text Messaging for Over 18 Million Active Users (©myNoSQL)
Wednesday, 4 January 2012
TouchDB: Embeddable Lightweight CouchDB-compatible
Jens Alfke:
If CouchDB is MySQL, then TouchDB is SQLite.
By “CouchDB-compatible” I mean that it can replicate with CouchDB and Couchbase Server, and that its data model and high-level design are “Couch-like” enough to make it familiar to CouchDB/Couchbase developers. Its API will not be identical and it may not support some CouchDB features (like user accounts) that aren’t useful in mobile apps. Its implementation is not based on CouchDB’s (it’s not even written in Erlang.) It does support replication to and from CouchDB.
In my books a perfect solution must:
- be small
- be fast
- reuse the target platform technologies (so it feels at home)
- support bi-directional synchronization with CouchDB
- provide an API that is either similar to the target platform APIs or is similar to CouchDB API
Original title and link: TouchDB: Embeddable Lightweight CouchDB-compatible (©myNoSQL)
Thursday, 1 December 2011
Storing High Scores in Amazon SimpleDB
This article highlights the benefits of connecting mobile devices to the cloud while also presenting an Amazon SimpleDB use case. Amazon SimpleDB is a highly available, flexible, and scalable non-relational data store that offloads the work of database administration. The app described here demonstrates how to store a high score list or leader board in SimpleDB. The app enables the user to view the high scores sorted by name or score, add and remove scores, and more.
What it doesn’t highlight is what happens with your application if your mobile device is disconnected.
Original title and link: Storing High Scores in Amazon SimpleDB (©myNoSQL)
Thursday, 7 July 2011
What Are the Benefits of Building CouchApps?
Bradley Holt[1]:
Streamlining of your codebase (no middle tier), replication, the ability to deploy/replicate an application along with its data, and the side benefits that come with going “with the grain” of how the web works are some of the benefits of building CouchApps.
The interview mentions also the potential of using CouchDB on Android and iOS platforms. CouchOne released back in September CouchDB for Android and then 6 months later—and after the merger with Membase—iOS Mobile Couchbase.
-
Bradley Holt is author of 2 CouchDB Books: Scaling CouchDB and Writing and Querying MapReduce Views in CouchDB. ↩
Original title and link: What Are the Benefits of Building CouchApps? (©myNoSQL)
via: http://radar.oreilly.com/2011/06/couchdb-couchapps-html5-mobile.html
Saturday, 11 June 2011
Using CouchDB in an iOS Application
A guide of using mobile Couchbase Xcode project templates by Marty Schoch. It takes only 5 minutes to get started.
Monday, 2 May 2011
Mobile Couchbase for iOS iPhone and iPad Beta Release
Mobile Couchbase for iOS is delivered as an embeddable library with seamless Apple Xcode IDE integration, ensuring a familiar development experience for developers building iPhone and iPad apps.
2 months after the confirmation that Apple will accept it and only 8 months after the CouchDB for Android.
Update: From the official post:
On the horizon for Mobile Couchbase is a feature we think will be crucial for adoption with more apps: ObjC Map Reduce. With ObjC Map Reduce we can make the Spidermonkey dependency optional, thus cutting the overall download size contribution of Mobile Couchbase by roughly half.
Original title and link: Mobile Couchbase for iOS iPhone and iPad Beta Release (NoSQL databases © myNoSQL)
Friday, 11 March 2011
iOS Mobile Couchbase
What iOS Mobile Couchbase gives you:
- You can embed the rock solid distributed database, Mobile Couchbase, on your iOS device.
- Your iOS apps can use Apache CouchDB’s well-proven synchronization technology.
- If you <3 CouchApps, you can deploy them as iOS apps.
CouchDB has been available on Android for 6 months. But it is great to hear that Apple will allow it on iOS.
Original title and link: iOS Mobile Couchbase (NoSQL databases © myNoSQL)
via: https://github.com/couchbaselabs/iOS-Couchbase/blob/master/dev_preview.md
Wednesday, 2 March 2011
Developing with CouchDB on Android
So you know why CouchDB on mobile is an awesome fit, but getting CouchDB working on the device is only the first step, for it to be useful CouchDB needs to provide an easy and convenient way to be used on mobile devices. This is the first in a series of introductions to CouchDB on Android.
In this post I will take a very basic CouchApp and turn it into a native Android App.
I was planning to post this link over the weekend to allow enough time for setting things up. But after reading about what you need to go through to develop on some other platform, I concluded you’ll get up to speed with CouchDB on Android in no time.
Original title and link: Developing with CouchDB on Android (NoSQL databases © myNoSQL)
via: http://arandomurl.com/2011/02/13/developing-with-couchdb-on-android.html
Friday, 10 December 2010
Thanksgiving Weekend Crash Course - Android, Sencha Touch, PhoneGap and CouchDB
Horace Lin having fun with some cool frameworks and tools, including CouchDB:
The goal of this project was to display the Sencha list view on Android device with user names, user’s icons and pop out the game the user paying on facebook if the arrow button pushed. All the users information will be stored on CouchDB and retrieve by JavaScript codes through Ajax.
Christmas is getting closer, so you can come up with fun projects too.
Original title and link: Thanksgiving Weekend Crash Course - Android, Sencha Touch, PhoneGap and CouchDB (NoSQL databases © myNoSQL)
via: http://mystonetool.blogspot.com/2010/11/thanksgiving-weekend-crash-course.html
Most Popular Articles
- Translate SQL to MongoDB MapReduce
- Tutorial: Getting Started With Cassandra
- CouchDB vs MongoDB: An attempt for a More Informed Comparison
- Cassandra @ Twitter: An Interview with Ryan King
- A Couple of Nice GUI Tools for MongoDB
- NoSQL benchmarks and performance evaluations
- Ehcache: Distributed Cache or NoSQL Store?
- Document Databases Compared: CouchDB, MongoDB, RavenDB
- Quick Review of Existing Graph Databases
- NoSQL Data Modeling