W3C home > Mailing lists > Public > public-webapps@w3.org > April to June 2011

Re: [WebSQL] Any future plans, or has IndexedDB replaced WebSQL?

From: Keean Schupke <keean@fry-it.com>
Date: Mon, 4 Apr 2011 16:25:49 +0000
Message-ID: <BANLkTin1rs+zBmegKQsEAWgw6CHxHLu0_g@mail.gmail.com>
To: Mikeal Rogers <mikeal.rogers@gmail.com>
Cc: Joran Greef <joran@ronomon.com>, public-webapps@w3.org
Some thoughts:

On 4 April 2011 16:10, Mikeal Rogers <mikeal.rogers@gmail.com> wrote:

> i've mostly stayed out of this thread because i felt like i'd just being
> fanning the flames but i really can't stay out anymore.
>
> databases are more that SQL, always have been.
>

> SQL is a DSL for relational database access. all implementations of SQL
> have a similar set of tools they implement first and layer SQL on top of.
> those tools tend to be a storage engine, btree, and some kind of
> transactional model between them. under the ugly covers, most databases look
> like berkeleydb and the layer you live in is just sugar on top.
>

SQL is a standard language (or API) for talking to databases. Why should a
developer need to learn a different API for each database. W3 is about
standardising APIs. SQL is just an API standardised as a DSL. It is good for
all the reasons any standard is good. Add to that the sound mathematical
theory of relational-algebra, means it has a lot going for it. Although like
any standard is has its problems, most of those seem to be where it has
deviated away from the pure relational-algebra.


>
> creating an in-browser specification/implementation on top of a given
> relational/SQL story is a terrible idea. it's unnecessarily limiting to a
> higher level api and can't be easily extended the way a simple set of tools
> like IndexedDB can.
>

Its not limiting it provides a more powerful (higher level) interface, that
allows developers to concentrate on what to do with the data not how to do
it.


>
> suggesting that other databases be implemented on top of SQL rather than on
> top of the tools in which SQL is built is just backwards to anyone who's
> built a database.
>

RelationalDB is not a database its a relational-data model.


>
> it's not very hard to write the abstraction you're talking about on top of
> IndexedDB, and until you do it i'm going to have a hard time taking you
> seriously because it's clearly doable.
>

Surely its the API that is important, not how it is implemented? You can try
the API now implemented on top of WebSQL. The API will stay the same no
matter what underlying technology is used.


>
> i implemented a CouchDB compatible datastore on top of IndexedDB, it took
> me less than a week at a time when there was only one implementation that
> was still changing and still had bugs. it would be much easier now.
>
> https://github.com/mikeal/idbcouch
>
> it needs to be updated to use the latest version of the spec which is a day
> of work i just haven't gotten to yet.
>

I am not overly impressed by CouchDB.


> the constructs in IndexedDB are pretty low level but sufficient if you know
> how to implement databases. performance is definitely an issue, but making
> these constructs faster would be much easier than trying to tweak an off the
> shelf SQL implementation to your use case.
>

I look at the amount of man hours that have gone into developing SQLite, and
BDB and I think, hey if its so easy to write a high performance database,
those guys must have been wasting a lot of time?


Cheers,
Keean.
Received on Monday, 4 April 2011 16:26:24 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 18:49:44 GMT