Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Queryable client-side storage [closed]

What solutions are there for queryable client-side data stores? This would be used as a temporary cache to perform basic operations like sorting and aggregating over user-selected date ranges in the client

I've found a few promising candidates, but I'm not sure what the best options are

  • Lawnchair: interface to various adapter stores, has queries and aggregates implemented as plugins http://brian.io/lawnchair/
  • TaffyDB: http://www.taffydb.com/
  • LocalstorageDB: queryable localstorage github.com/knadh/localStorageDB
  • Minimongo: ephemeral mongo implementation, used as a cache for Meteor (http://docs.meteor.com/#meteor_collection)

There's also some other less-optimal options:

  • HTML5 localstorage / sessionstorage (need to build a query layer on top of this... like lawnchair or localstoragedb)
  • IndexedDB (browser compatibility)
  • Google gears (discontinued)
  • WebSQL (specification stopped)

I'd be curious to know your experiences with these options / if there are other ones that I've missed

like image 237
user1424744 Avatar asked Feb 18 '13 22:02

user1424744


2 Answers

You can use jStorage in conjunction with jLinq

like image 95
user2078169 Avatar answered Oct 29 '22 03:10

user2078169


Have you try my open source library https://bitbucket.org/ytkyaw/ydn-db/wiki/Home. It supports IndexedDB, WebSQL and localStorage. Query is NoSQL style, i.e, index base key range query. Multiple index query require use of composite index or key joining algorithm. Currently there is basic query interface to SQL, which will be better over time.

Large-scale web app, most of them are CRM, use the library in production.

like image 33
Kyaw Tun Avatar answered Oct 29 '22 02:10

Kyaw Tun