<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Browser storage: What is the correct API? SQL? JSON?</title>
	<atom:link href="http://ajaxian.com/archives/browser-storage/feed" rel="self" type="application/rss+xml" />
	<link>http://ajaxian.com/archives/browser-storage</link>
	<description>Cleaning up the web with Ajax</description>
	<lastBuildDate>Thu, 17 May 2012 07:43:39 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
	<item>
		<title>By: aljames</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272909</link>
		<dc:creator>aljames</dc:creator>
		<pubDate>Fri, 17 Apr 2009 07:16:34 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272909</guid>
		<description>@kriszyp Agreed that indexes are important (although remember that we are talking about *tiny* databases here), but pre-indexed O(log n) access is not the sole domain of SQL! 
For instance, whats the difference between &quot;SELECT * FROM rows WHERE id&gt;5&quot; and &quot;function(row){return (row.id&gt;5) ? row : null; }&quot;?

Both could be computed with a index on id, but instead of the query optimizer optimizing SQL, it would optimize javascript instead. So here we have the same as SQL, i.e. a small subset of possible queries are solvable in O(log n) using indexes, others require a table scan.

In an ideal world, the indexing would be carried out behind the scenes, like on google app engine developer kit. I.e. if you execute a query that could be solved on an index on field A so many times, it generates it so only the first access is slower.</description>
		<content:encoded><![CDATA[<p>@kriszyp Agreed that indexes are important (although remember that we are talking about *tiny* databases here), but pre-indexed O(log n) access is not the sole domain of SQL!<br />
For instance, whats the difference between &#8220;SELECT * FROM rows WHERE id&gt;5&#8243; and &#8220;function(row){return (row.id&gt;5) ? row : null; }&#8221;?</p>
<p>Both could be computed with a index on id, but instead of the query optimizer optimizing SQL, it would optimize javascript instead. So here we have the same as SQL, i.e. a small subset of possible queries are solvable in O(log n) using indexes, others require a table scan.</p>
<p>In an ideal world, the indexing would be carried out behind the scenes, like on google app engine developer kit. I.e. if you execute a query that could be solved on an index on field A so many times, it generates it so only the first access is slower.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mnx2012</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272874</link>
		<dc:creator>mnx2012</dc:creator>
		<pubDate>Thu, 16 Apr 2009 03:27:57 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272874</guid>
		<description>I used JSON and implement query syntax like SQL:

create data: http://vnjs.net/?id=1000000069
insert: http://vnjs.net/?id=1000000077
update: http://vnjs.net/?id=1000000079
delete: http://vnjs.net/?id=1000000075
select:  http://vnjs.net/?id=1000000078
......
and select HTML element from DOM:
http://vnjs.net/?id=1000000082

end link to download my framework: http://vnjs.net/www/src/kombai.rar</description>
		<content:encoded><![CDATA[<p>I used JSON and implement query syntax like SQL:</p>
<p>create data: <a href="http://vnjs.net/?id=1000000069" rel="nofollow">http://vnjs.net/?id=1000000069</a><br />
insert: <a href="http://vnjs.net/?id=1000000077" rel="nofollow">http://vnjs.net/?id=1000000077</a><br />
update: <a href="http://vnjs.net/?id=1000000079" rel="nofollow">http://vnjs.net/?id=1000000079</a><br />
delete: <a href="http://vnjs.net/?id=1000000075" rel="nofollow">http://vnjs.net/?id=1000000075</a><br />
select:  <a href="http://vnjs.net/?id=1000000078" rel="nofollow">http://vnjs.net/?id=1000000078</a><br />
&#8230;&#8230;<br />
and select HTML element from DOM:<br />
<a href="http://vnjs.net/?id=1000000082" rel="nofollow">http://vnjs.net/?id=1000000082</a></p>
<p>end link to download my framework: <a href="http://vnjs.net/www/src/kombai.rar" rel="nofollow">http://vnjs.net/www/src/kombai.rar</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kriszyp</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272848</link>
		<dc:creator>kriszyp</dc:creator>
		<pubDate>Wed, 15 Apr 2009 13:15:30 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272848</guid>
		<description>@aljames: Map/reduce is intuitive, but it doesn&#039;t help with the general use cases of a database, it does nothing to provide the workhorse parameterized queries with O(log n) access to data, that is the cornerstone of database querying. It is easy and does a great job of distributed processing for tasks that require analyzing large sets of data, but it works in O(n), so it will never compare to pre-indexed binary tree access for the majority of database query operations.</description>
		<content:encoded><![CDATA[<p>@aljames: Map/reduce is intuitive, but it doesn&#8217;t help with the general use cases of a database, it does nothing to provide the workhorse parameterized queries with O(log n) access to data, that is the cornerstone of database querying. It is easy and does a great job of distributed processing for tasks that require analyzing large sets of data, but it works in O(n), so it will never compare to pre-indexed binary tree access for the majority of database query operations.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: aljames</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272839</link>
		<dc:creator>aljames</dc:creator>
		<pubDate>Wed, 15 Apr 2009 07:59:19 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272839</guid>
		<description>@kriszyp I disagree entirely. Map/reduce at its core is just a function that returns a value (or not) for a given object in the set. This is actually a very intuitive way of working with persistent storage in object based languages (particularly loosely typed ones). It has many advantages (the mot significant of which is that you dont need to learn SQL and whatever language you are using). I am not talking about the complexity of parallel searching that is necessary on a large scale cluster.</description>
		<content:encoded><![CDATA[<p>@kriszyp I disagree entirely. Map/reduce at its core is just a function that returns a value (or not) for a given object in the set. This is actually a very intuitive way of working with persistent storage in object based languages (particularly loosely typed ones). It has many advantages (the mot significant of which is that you dont need to learn SQL and whatever language you are using). I am not talking about the complexity of parallel searching that is necessary on a large scale cluster.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: BH23</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272837</link>
		<dc:creator>BH23</dc:creator>
		<pubDate>Wed, 15 Apr 2009 06:22:00 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272837</guid>
		<description>I have been working on the nextdb.net project, which is a hosted relational database with a javascript API that allows you to update, delete, insert and execute queries that return pure JSON.  The server returns pure JSON that is structured within the very definition of the queries that are defined and securely compiled on the server.  SQL is a great query language but it was not designed for the web.  Nextdb.net has a query language that addresses the security issues making it safe and easy for javascript programming by allowing the user to sculpt the object structure of the JSON response within the query language itself, the query language is called NextQuery.  No ORM mismatch, no synchronization issues.  The project is still in alpha but getting ready for beta soon.</description>
		<content:encoded><![CDATA[<p>I have been working on the nextdb.net project, which is a hosted relational database with a javascript API that allows you to update, delete, insert and execute queries that return pure JSON.  The server returns pure JSON that is structured within the very definition of the queries that are defined and securely compiled on the server.  SQL is a great query language but it was not designed for the web.  Nextdb.net has a query language that addresses the security issues making it safe and easy for javascript programming by allowing the user to sculpt the object structure of the JSON response within the query language itself, the query language is called NextQuery.  No ORM mismatch, no synchronization issues.  The project is still in alpha but getting ready for beta soon.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: GingerNinja</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272834</link>
		<dc:creator>GingerNinja</dc:creator>
		<pubDate>Tue, 14 Apr 2009 22:59:05 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272834</guid>
		<description>@genericallyloud I agree with you mate, CouchDB could certainly be the way to go. The query interface is already JSON, and it&#039;s document-centric nature means that it essentially avoids the Object Oriented-Relational mismatch. 

It&#039;s kinda frustrating that after so many years of work and technological advances, the best thing we&#039;ve really come up with to address this mismatch is ORM. Part of me always resents having to fiddle with my domain model, even in small ways, just to satisfy the persistence strategy I&#039;ve chosen.</description>
		<content:encoded><![CDATA[<p>@genericallyloud I agree with you mate, CouchDB could certainly be the way to go. The query interface is already JSON, and it&#8217;s document-centric nature means that it essentially avoids the Object Oriented-Relational mismatch. </p>
<p>It&#8217;s kinda frustrating that after so many years of work and technological advances, the best thing we&#8217;ve really come up with to address this mismatch is ORM. Part of me always resents having to fiddle with my domain model, even in small ways, just to satisfy the persistence strategy I&#8217;ve chosen.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: thnkfstr</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272832</link>
		<dc:creator>thnkfstr</dc:creator>
		<pubDate>Tue, 14 Apr 2009 22:21:27 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272832</guid>
		<description>@mpcm

nice pratchett ref!</description>
		<content:encoded><![CDATA[<p>@mpcm</p>
<p>nice pratchett ref!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dimitryz</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272831</link>
		<dc:creator>dimitryz</dc:creator>
		<pubDate>Tue, 14 Apr 2009 22:13:53 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272831</guid>
		<description>Dion, thanks for the post.

I must say that having SQL on the client is a good idea. Once we have JS on the server become a norm, the only concern will become identifying what part of the logic is private (server) and what is public (server/client). As for Relational to Object models, they both have their strengths and weaknesses and there are tools to bridge the two. I wouldn&#039;t want to lose the performance and legacy of SQL until a mature alternative is presented.</description>
		<content:encoded><![CDATA[<p>Dion, thanks for the post.</p>
<p>I must say that having SQL on the client is a good idea. Once we have JS on the server become a norm, the only concern will become identifying what part of the logic is private (server) and what is public (server/client). As for Relational to Object models, they both have their strengths and weaknesses and there are tools to bridge the two. I wouldn&#8217;t want to lose the performance and legacy of SQL until a mature alternative is presented.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kriszyp</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272827</link>
		<dc:creator>kriszyp</dc:creator>
		<pubDate>Tue, 14 Apr 2009 20:00:49 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272827</guid>
		<description>@WebReflection: I don&#039;t have any issue with a low-level API, but SQL isn&#039;t low-level, it only becomes so when you are forced to rebuild the stack on top of it. A low-level API that provided direct access to tables and indexes through iterators and binary search would be fine. Libraries could then implement query languages on top of it (SQL or JSONQuery). However, this isn&#039;t entirely about SQL, it&#039;s about using a relational DBs to store data from an environment that is very object-oriented. If you look at all the functionality that ORMs provide, all of that is basically doing translation where data paradigms are mismatched. Why build a mismatched storage system when the data structure of the language is known (the JS object model)?</description>
		<content:encoded><![CDATA[<p>@WebReflection: I don&#8217;t have any issue with a low-level API, but SQL isn&#8217;t low-level, it only becomes so when you are forced to rebuild the stack on top of it. A low-level API that provided direct access to tables and indexes through iterators and binary search would be fine. Libraries could then implement query languages on top of it (SQL or JSONQuery). However, this isn&#8217;t entirely about SQL, it&#8217;s about using a relational DBs to store data from an environment that is very object-oriented. If you look at all the functionality that ORMs provide, all of that is basically doing translation where data paradigms are mismatched. Why build a mismatched storage system when the data structure of the language is known (the JS object model)?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: WebReflection</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272819</link>
		<dc:creator>WebReflection</dc:creator>
		<pubDate>Tue, 14 Apr 2009 18:08:41 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272819</guid>
		<description>@kriszyp, my point is that I prefer &quot;low level&quot; layers rather than high levels with inevitable lacks of this or that feature. What you would like to have is possible via intermediates layers and thanks to recent JSON.parse while having only JSON means our &quot;fantasy&quot; will be blocked because of a missed layer, the direct db manipulation via SQL language.
Why are you guys that scared from a client db engine? Possibilities are numerous and hacks problem will be the same with whaever JSON layer we put in the middle. I do not even get the discussion above ... SQLite is SQLite, it is not new, it is fast, it is reliable, it is transactional, full-text, etc etc ... I wonder why you do not use JSON in the server side as well, since I cannot figure out any difference between these two environment, only difficulties to sync them because of people whose do not want &quot;to learn&quot; SQL ... again, where is the problem? It is like getter/setter discussion, useless, imo.</description>
		<content:encoded><![CDATA[<p>@kriszyp, my point is that I prefer &#8220;low level&#8221; layers rather than high levels with inevitable lacks of this or that feature. What you would like to have is possible via intermediates layers and thanks to recent JSON.parse while having only JSON means our &#8220;fantasy&#8221; will be blocked because of a missed layer, the direct db manipulation via SQL language.<br />
Why are you guys that scared from a client db engine? Possibilities are numerous and hacks problem will be the same with whaever JSON layer we put in the middle. I do not even get the discussion above &#8230; SQLite is SQLite, it is not new, it is fast, it is reliable, it is transactional, full-text, etc etc &#8230; I wonder why you do not use JSON in the server side as well, since I cannot figure out any difference between these two environment, only difficulties to sync them because of people whose do not want &#8220;to learn&#8221; SQL &#8230; again, where is the problem? It is like getter/setter discussion, useless, imo.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ilazarte</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272816</link>
		<dc:creator>ilazarte</dc:creator>
		<pubDate>Tue, 14 Apr 2009 17:53:57 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272816</guid>
		<description>what amazes me is xsl didn&#039;t get the mass adoption it deserves.  it&#039;s xml oriented and transformation oriented which is that 90%.</description>
		<content:encoded><![CDATA[<p>what amazes me is xsl didn&#8217;t get the mass adoption it deserves.  it&#8217;s xml oriented and transformation oriented which is that 90%.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mpcm</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272813</link>
		<dc:creator>mpcm</dc:creator>
		<pubDate>Tue, 14 Apr 2009 16:37:18 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272813</guid>
		<description>JSON, like turtles, all the way down. Doesn&#039;t have to be that under the covers, but that is what the interface should be.</description>
		<content:encoded><![CDATA[<p>JSON, like turtles, all the way down. Doesn&#8217;t have to be that under the covers, but that is what the interface should be.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kriszyp</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272809</link>
		<dc:creator>kriszyp</dc:creator>
		<pubDate>Tue, 14 Apr 2009 15:37:39 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272809</guid>
		<description>@WebReflection: The point is that querying, transaction, and full-text search is not dependent on SQL, extensive DB capabilities do not require SQL to be the query language. Relational DBs/SQL are a poor fit for storage within the realm of persisting JS data. Relational DBs within JS would almost always end up at ORM, which basically means you have lost, the DB didn&#039;t fit the data, it requires translation. On other hand, we have the opportunity to use  a query language and storage engines that are actually designed for JavaScript, not just carried over from archaic traditional design.</description>
		<content:encoded><![CDATA[<p>@WebReflection: The point is that querying, transaction, and full-text search is not dependent on SQL, extensive DB capabilities do not require SQL to be the query language. Relational DBs/SQL are a poor fit for storage within the realm of persisting JS data. Relational DBs within JS would almost always end up at ORM, which basically means you have lost, the DB didn&#8217;t fit the data, it requires translation. On other hand, we have the opportunity to use  a query language and storage engines that are actually designed for JavaScript, not just carried over from archaic traditional design.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: WebReflection</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272807</link>
		<dc:creator>WebReflection</dc:creator>
		<pubDate>Tue, 14 Apr 2009 15:29:29 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272807</guid>
		<description>@kriszyp, is it better to have the possibility to implement a JSON layer over a database engine with great SQL support, transactions, and full-text searches, or have only the JSON layer without natural database development possibility?
I think we should have the possibility to use SQLite, the rest will be part of this or that library. What I mean, who cares about libraries users? Most of us do not even deeply know JavaScript or DOM, just a lib API ... SQLite is the right way, imo</description>
		<content:encoded><![CDATA[<p>@kriszyp, is it better to have the possibility to implement a JSON layer over a database engine with great SQL support, transactions, and full-text searches, or have only the JSON layer without natural database development possibility?<br />
I think we should have the possibility to use SQLite, the rest will be part of this or that library. What I mean, who cares about libraries users? Most of us do not even deeply know JavaScript or DOM, just a lib API &#8230; SQLite is the right way, imo</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kriszyp</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272803</link>
		<dc:creator>kriszyp</dc:creator>
		<pubDate>Tue, 14 Apr 2009 14:54:44 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272803</guid>
		<description>@Joeri: Believe it or not it is possible to build indices and not use SQL (I know it is difficult to imagine efficient filtering can be done without a specific query syntax :P ). We&#039;ll have a post coming out soon showing how Persevere (which uses JSON-style storage with JSONQuery query language) can actually outperform the typical MySQL setup.

@aljames: Map/Reduce is a cool technology for a specific set of problems, but it is a very poor fit for the broad general use cases of the web.</description>
		<content:encoded><![CDATA[<p>@Joeri: Believe it or not it is possible to build indices and not use SQL (I know it is difficult to imagine efficient filtering can be done without a specific query syntax :P ). We&#8217;ll have a post coming out soon showing how Persevere (which uses JSON-style storage with JSONQuery query language) can actually outperform the typical MySQL setup.</p>
<p>@aljames: Map/Reduce is a cool technology for a specific set of problems, but it is a very poor fit for the broad general use cases of the web.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joeri</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272802</link>
		<dc:creator>Joeri</dc:creator>
		<pubDate>Tue, 14 Apr 2009 14:16:31 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272802</guid>
		<description>I don&#039;t see how you get decent filtering performance on anything but a SQL engine. I want live filtering, with the same abilities as where clauses (filter on dates, count(), ...). Otherwise a client-side database just is not useful for the sort of work I would use it for.</description>
		<content:encoded><![CDATA[<p>I don&#8217;t see how you get decent filtering performance on anything but a SQL engine. I want live filtering, with the same abilities as where clauses (filter on dates, count(), &#8230;). Otherwise a client-side database just is not useful for the sort of work I would use it for.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: DomDerrien</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272800</link>
		<dc:creator>DomDerrien</dc:creator>
		<pubDate>Tue, 14 Apr 2009 13:57:13 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272800</guid>
		<description>With JSON in the browser and JSON on the wire, JSON in the database is an obvious requirement! Up to now, my REST APIs mostly converting &lt;a href=&quot;http://en.wikipedia.org/wiki/Data_Transfer_Object&quot; rel=&quot;nofollow&quot;&gt;DTOs&lt;/a&gt; from Java/Python/etc. to JSON and vice-versa, after the translation between SQL/GQL/etc. and programming languages. So much time and CPU wasted :(

Will JSON be the final format? I hope not because I would like to start carrying enhanced messages, &lt;i&gt;a-la&lt;/i&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Resource_Description_Framework&quot; rel=&quot;nofollow&quot;&gt;RDF&lt;/a&gt; with &lt;i&gt;triples&lt;/i&gt; for example...</description>
		<content:encoded><![CDATA[<p>With JSON in the browser and JSON on the wire, JSON in the database is an obvious requirement! Up to now, my REST APIs mostly converting <a href="http://en.wikipedia.org/wiki/Data_Transfer_Object" rel="nofollow">DTOs</a> from Java/Python/etc. to JSON and vice-versa, after the translation between SQL/GQL/etc. and programming languages. So much time and CPU wasted :(</p>
<p>Will JSON be the final format? I hope not because I would like to start carrying enhanced messages, <i>a-la</i> <a href="http://en.wikipedia.org/wiki/Resource_Description_Framework" rel="nofollow">RDF</a> with <i>triples</i> for example&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: genericallyloud</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272799</link>
		<dc:creator>genericallyloud</dc:creator>
		<pubDate>Tue, 14 Apr 2009 13:00:55 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272799</guid>
		<description>I think something like &lt;a href=&quot;http://couchdb.apache.org/docs/overview.html&quot; rel=&quot;nofollow&quot;&gt;CouchDB&lt;/a&gt; would be interesting to look at as a model. It already does synchronization well and uses JavaScript as a query/view language. Its document oriented as opposed to relational or OO, but its an interesting thought.

However, the practical side of me says that this kind of thing is way too new and that despite difficulties, people would rather use what they know - sql.</description>
		<content:encoded><![CDATA[<p>I think something like <a href="http://couchdb.apache.org/docs/overview.html" rel="nofollow">CouchDB</a> would be interesting to look at as a model. It already does synchronization well and uses JavaScript as a query/view language. Its document oriented as opposed to relational or OO, but its an interesting thought.</p>
<p>However, the practical side of me says that this kind of thing is way too new and that despite difficulties, people would rather use what they know &#8211; sql.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: WebReflection</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272798</link>
		<dc:creator>WebReflection</dc:creator>
		<pubDate>Tue, 14 Apr 2009 12:43:16 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272798</guid>
		<description>SQLite and its features &quot;forever&quot;. I use this little monster since version 2 as portable desktop applications engine and website database as well (faster than MySQL in many SELECT cases).
With JSON in a couple of months we all will reinvent the wheel creating libraries to search words in saved strings, order data, etc etc.
If you need JSON, use JSON, if you need a database, SQLite is the best choice ever, IMO. Both things are completely different and I hope nobody will consider seriously to remove SQLite as storage engine from browsers.</description>
		<content:encoded><![CDATA[<p>SQLite and its features &#8220;forever&#8221;. I use this little monster since version 2 as portable desktop applications engine and website database as well (faster than MySQL in many SELECT cases).<br />
With JSON in a couple of months we all will reinvent the wheel creating libraries to search words in saved strings, order data, etc etc.<br />
If you need JSON, use JSON, if you need a database, SQLite is the best choice ever, IMO. Both things are completely different and I hope nobody will consider seriously to remove SQLite as storage engine from browsers.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: andysky</title>
		<link>http://ajaxian.com/archives/browser-storage/comment-page-1#comment-272796</link>
		<dc:creator>andysky</dc:creator>
		<pubDate>Tue, 14 Apr 2009 12:11:54 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=6584#comment-272796</guid>
		<description>JSON is clearly the way to go.</description>
		<content:encoded><![CDATA[<p>JSON is clearly the way to go.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

