Talk:NoSQL

From Citizendium
Revision as of 16:01, 19 August 2010 by imported>Pat Palmer (→‎history of NOSQL movement (a rant))
Jump to navigation Jump to search
This article is developing and not approved.
Main Article
Discussion
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
 
To learn how to update the categories for this article, see here. To update categories, edit the metadata template.
 Definition A number of non-relational distributed database architectures, usually that store data as key-value pairs. [d] [e]
Checklist and Archives
 Workgroup category Computers [Categories OK]
 Talk Archive none  English language variant American English

Just a question on an interesting topic

Only a personal interest, but to what extent do these use XML, or are the key-value relationships implemented more as type-length-value or something even simpler? --Howard C. Berkowitz 14:54, 28 July 2010 (UTC)

Useful article?

You may want to use ACID properties. Howard C. Berkowitz 02:29, 8 August 2010 (UTC)

Pat's review of this article

This is a great beginning. The article as it stands today is written at a high level of expertise--I learned a lot from reading it--and I appreciate the DOI in the reference list, plus the spare, lean and precise technical language employed in many sections. Some comments, questions, and ideas for additional development are detailed in the following subsections (to be added shortly):

intended readers

This article is the product of one or more writer who appear to have a high level of technical expertise with databases in general, and who writes with admirable clarity and conciseness about technical matters. The article seems to assume that readers are already familiar with the capabilities of conventional relational database management systems, and also with map-reduce algorithms. While the technology being described is sufficiently complicated that much of the article probably may necessarily be beyond the scope of what an expert lay reader might understand, IMO it is still important to strive for satisfying both intelligent lay experts and deep subject experts. Perhaps there might be added some kind of statement about this in the overview at the beginning. It might also be useful to provide some history and market descriptive material near the top, before launching heavily into the tech speak.Pat Palmer 20:09, 19 August 2010 (UTC)

P. S., While I was able to follow most of the article, I am forced to admit that I am not sure what is meant by "ad hoc query". I could just Google it. It would also be great if the article briefly defined it (and other terms) on first use, or else pointed off to another article that contains a definition.Pat Palmer 20:38, 19 August 2010 (UTC)

intro

The nice intro would possibly be even better by providing a quick summary of when, where, why, who, etc. See next comment below about the history of this technology. Also, the surge of interest in the open source community as a result of recently create cloud computing technologies would fit will into the opening overview. I would consider moving the very last section up into the end of the introductory overview.Pat Palmer 20:25, 19 August 2010 (UTC)

code snippets

It is important that the two code snippets identify the language that they are written in. I can pretty much surmise that one is Java, and the other C (or C++), but it needs to be made explicit somewhere.Pat Palmer 20:36, 19 August 2010 (UTC)

semi-structured data

Wow, use of JSON to identify rather free-form data. After just reading the Semantic Web article, I am very curious to know whether there is (or could be some day) a relationship between semi-structured data and Semantic Web technologies. Or is there already, and I am just to new to these ideas to get it?Pat Palmer 20:41, 19 August 2010 (UTC)

history of NOSQL movement (a rant)

I noted with interest (and disappointment, though not surprise) that Lotus Notes is not currently shown in the list of "popular document-based databases". While the recent surge of NOSQL development is a product of the emergence of cloud computing platforms by Google, LinkedIn, Facebook, and the open source movement's interest in low-cost software, the technology has its roots in an earlier, high commercially successful product: Lotus Notes, first released in 1989 by a small group of developers (led by Ray Ozzie) in Boston. The product was eventually bought up by IBM and still enjoys significant sales today. Currently, much of the writing in Wikipedia and elsewhere in the NOSQL movement misses that Lotus Notes DID NOSQL FIRST. It was a first in many other respects, such as role-based security, use of an optimistic non-locking strategy, provision for replication and off-line use of databases, automatic indexing and rendering of all database contents as HTML, and it has fantastic administration and support tools.

The article cited for the history buries Lotus Notes in the 1980's with a 2-line blurb. This is a glaring historical inaccuracy. The open source community is possibly overlooking Lotus Notes because it is not free (in fact, just like Oracle or SQL Server, one has to pay a fair amount for it). Lotus Notes achieves its "distributed" claim to fame not with cloud computing, but with fast replication to local disks, along with fast re-merging of local replicates later. The product deserves prominent mention as a non-relational, distributed database architecture THAT ACTUALLY WORKS (but which is not "open source"). The advent of today's cloud technologies such as Google's MapReduce platform has, of course, brought things to a new level in terms of scalability. How could any younger person who hasn't had a chance to work with Lotus Notes possibly know its technology, given that it is proprietary? I'm mentioning this, though, because I do know about LN and feel that this article, to be really accurate and fair, should consider addressing Lotus Notes more thoroughly in its written history of NOSQL.

IMO, there are other NOSQL movement "history" issues as well. Wikipedia charmingly describes Berkley DB as created by "old school" (hello?). DaaS (Database as a Service) is not particularly new--only the use of the phrase is; web hosting services have been offering hosted relational databases and Lotus Notes databases "for hire" well before the phrase came into common use. I fear I am privileged to notice this kind of thing simply by being very experienced, which really means just getting old (big sigh here).Pat Palmer 20:25, 19 August 2010 (UTC)