Slashdot Mirror


Unified NoSQL Query Language Launched

splitenz writes "Hoping to unify the growing but disparate market of NoSQL databases, the creators behind CouchDB and SQLite have introduced a new query language for the format, called UnQL (Unstructured Data Query Language — .PS). It has Microsoft's backing."

194 comments

  1. Obligatory xkcd by Daetrin · · Score: 3, Funny
    --
    This Space Intentionally Left Blank
    1. Re:Obligatory xkcd by Pieroxy · · Score: 1

      More than standards: www.arnnet.com. I will never understand how greed can get someone to serve an ad to some random user instead of the article the user requested in the first place.

      If I come to view an article and I don't, I deem the website broken and I leave. I will NEVER again click on a "skip this ad" button. This is just going way too far. If they don't want my eyeballs on their content, that's perfectly fine with me. But they won't have my eyeballs on their crappy advertisements either.

    2. Re:Obligatory xkcd by Anonymous Coward · · Score: 0

      A page with a "skip this ad" button is going "way too far"?

      Relax, hippy.

    3. Re:Obligatory xkcd by webmistressrachel · · Score: 1

      Yes, some of use still do connect over POTS modems, GSM, crappy 3G and unreliable Belkin54g routers.

      Relax, trendy!

      --
      This tagline was transcoded to result in at least one smirk. If you experience failure to smirk, please consult your Gen
    4. Re:Obligatory xkcd by Anonymous Coward · · Score: 0

      Best xkcd ever!

    5. Re:Obligatory xkcd by Anonymous Coward · · Score: 0

      Speaking of xkcd and SQL... This one is a classic (in case you live under a rock and never saw it)
      http://xkcd.com/327/

    6. Re:Obligatory xkcd by wsxyz · · Score: 1

      If you buy Belkin, you have only yourself to blame.

    7. Re:Obligatory xkcd by Billly+Gates · · Score: 1

      To your sig I have to say HA!

    8. Re:Obligatory xkcd by webmistressrachel · · Score: 1

      The use cases I'm referring to above don't refer to me, however, those people who do have little choice about this (financially or geographically) should be considered when designing the "Internets" (i.e. websites)

      --
      This tagline was transcoded to result in at least one smirk. If you experience failure to smirk, please consult your Gen
  2. Unstructured [...] Microsoft backing by Noughmad · · Score: 0

    This is expected, did MS write anything well-structured in their history?

    --
    PlusFive Slashdot reader for Android. Can post comments.
    1. Re:Unstructured [...] Microsoft backing by Pieroxy · · Score: 1

      This is expected, did MS write anything well-structured in their history?

      I'm fairly sure their legal dept. is well-structured. I could be wrong though.

  3. Holy fuck, they've reinvented SQL! by Anonymous Coward · · Score: 1

    Oh my gosh, they've managed to reinvent SQL, but with a shitter JSON-based syntax.

  4. Ah the cycle continues by discord5 · · Score: 1

    Unified NoSQL Query Language

    You mean, like a No Structured Query Language Query Language?

    UnQL - Unstructured Data Query Language

    Oh... Wellp, I'm always going to read this as "uncle". Then again I always read SQL as "squeel", so I'm far from the authority on abbreviations, but strangely enough I always read NoSQL as "No Squirrel".

    It has Microsoft's backing.

    Queue flamewar in 5.. 4.. 3..

    1. Re:Ah the cycle continues by ianare · · Score: 1

      FTFA :

      UnQL, pronounced "Uncle"

    2. Re:Ah the cycle continues by hedwards · · Score: 1

      SQL isn't an acronym, it's just a series of three letters that get pronounced as such. It's not fundamentally any different than FBI, FDA or DSHS in that respect.

    3. Re:Ah the cycle continues by Anonymous Coward · · Score: 1

      Structured Query Language.

      /perhaps I missed the 'whooosh'.

    4. Re:Ah the cycle continues by osu-neko · · Score: 1

      SQL isn't an acronym, it's just a series of three letters that get pronounced as such.

      Depends on where you are, apparently. I was told by someone once that you could tell which coast someone was from depending on whether they pronounced that "ess que ell" or "sequel", but I don't remember which coast was which, or whether that's still true today (or for that matter, whether it ever really way). I hear it both ways in the midwest, in any case. I pronounce is "ess que ell" myself, but I do recognize that your statement is false in general, despite being true for me.

      --
      "Convictions are more dangerous enemies of truth than lies."
    5. Re:Ah the cycle continues by Anonymous Coward · · Score: 0

      Uncool dude, uncool

    6. Re:Ah the cycle continues by colinrichardday · · Score: 1

      According to the author of the O'Reilly book Learning SQL, SQL is not an acronym.

    7. Re:Ah the cycle continues by Anonymous Coward · · Score: 0

      Unhand yourself, fiendish (incorrect) grammar Nazi!

      FBI, FDA and DSHS are all acronyms!!! They also happen to be initialisms!

      Not all acronyms are initialisms. But all initialisms are acronyms!

      Now go cry in a corner for being wrong.

    8. Re:Ah the cycle continues by Anonymous Coward · · Score: 0

      Kudos to you. I originally read it as "unquill", but your "uncle" is indeed how the author's of the paper pronounce it.

    9. Re:Ah the cycle continues by Anonymous Coward · · Score: 0

      I want to buy a doovd, and a flight to the oosa.

    10. Re:Ah the cycle continues by Anonymous Coward · · Score: 0

      Maybe you should go look up the meaning of the word Acronym.

      First you say it's not an acronym, then you say it's fundamentally the same as three well known acronyms. None of which are pronounceable in any format other than speaking out the letters. Duh.

      ...often referred to as Structured Query Language...

      ...The acronym SEQUEL was later changed to SQL because "SEQUEL" was a trademark of the UK-based Hawker Siddeley aircraft company...

      http://en.wikipedia.org/wiki/SQL

    11. Re:Ah the cycle continues by arglebargle_xiv · · Score: 1

      According to the author of the O'Reilly book Learning SQL, SQL is not an acronym.

      According to Wikipedia, it is. It was invented by the ancient Egyptians. Something to do with a sun god.

    12. Re:Ah the cycle continues by Aladrin · · Score: 1

      East coast here. I pronounced it S-Q-L until I moved to California, where my boss pronounced it 'sequel'. That has stuck and now I'm pronouncing it 'sequel', even though I'm on the east coast again.

      --
      "If you make people think they're thinking, they'll love you; But if you really make them think, they'll hate you." - DM
    13. Re:Ah the cycle continues by Jonner · · Score: 1

      I've always thought "NoSQL" is a dumb term and idea because it's nothing more than a negative position. Its proponents seem to be anti-SQL, though not necessarily for all the same reasons. In many cases, people seem to be equating SQL with the relational model and abandoning the latter because of deficiencies in the former. UnQL seems to be bringing things full circle in that its designers realize that there's no sense in abandoning the relational model and all work done on query languages so far. It's incredibly ironic though since UnQL is trying to be a superset of SQL. How can you call your database "NoSQL" if the language you use to access it looks almost exactly like SQL?

  5. common term by jeremypv · · Score: 1

    SQL - Sequel
    UnQL - Un-Cool

    --
    ~jeremypv
    1. Re:common term by Seumas · · Score: 0

      Commonly incorrect term, you mean.

    2. Re:common term by Anonymous Coward · · Score: 0

      UnQL - Uncle, Ankle, Unglue

    3. Re:common term by Anne+Thwacks · · Score: 0
      Anyone who is not an MS Shill knows that Sequel was the (IBM) predecessor to SQL, and is not the same as SQL at all. MS shills, by definition, know nothing.

      Now get of my lawn.

      --
      Sent from my ASR33 using ASCII
    4. Re:common term by FreakyGreenLeaky · · Score: 1

      Now get ofF _my_ lawn!

  6. What flamewar? by Migala77 · · Score: 1

    No flamewar necessary. Oracle is the new evil overlord.
    Having backing from Microsoft just makes it irrelevant.

    1. Re:What flamewar? by arglebargle_xiv · · Score: 1

      Having backing from Microsoft just makes it irrelevant.

      Arggh! Some folks at Microsoft research published a paper that discussed NoSQL. They've also published papers on computational linguistics, emerging markets, robot programming, synthetic biology, online sharing and mobile applications, pricing algorithms and market equilibriums, and who knows what else. It's a research institution that publishes all manner of stuff on esoteric research.

      Microsoft corporate probably doesn't even know NoSQL exists.

    2. Re:What flamewar? by Jonner · · Score: 1

      No flamewar necessary. Oracle is the new evil overlord.

      Having backing from Microsoft just makes it irrelevant.

      I'm sure Oracle would be offended by your implication that they've only recently become evil.

  7. Let me get this straight by Anonymous Coward · · Score: 0

    They're putting together a structured language for querying this unstructured DB crap.

    Microsoft is backing an open-source initiative.

    Wake me up when Im sober. No I did not read TFA

  8. What? by Anonymous Coward · · Score: 0

    I'm sorry... what? TFA has no content and UnQL is from 2000.

    1. Re:What? by sammyF70 · · Score: 1

      from TFA : "This version of UnQL has no relation to an identically named unstructured data query language proposed by a University of Pennsylvania researcher over a decade ago, Phillips said."

      --
      "DRM is like the Ford Pinto: it's a smooth ride, right up the point at which it explodes and ruins your day."-C.Doctorow
  9. Trivially by VincenzoRomano · · Score: 2

    It has Microsoft's backing."

    It won't work.

    --
    Maybe Computers will never be as intelligent as Humans.
    For sure they won't ever become so stupid. [VR-1988]
    1. Re:Trivially by KiloByte · · Score: 1

      Yet your boss will read things on glossy paper and make you use it.

      --
      The creatures outside looked from Alt-Right to Antifa; but already it was impossible to say which was which.
    2. Re:Trivially by Anonymous Coward · · Score: 0

      I'm my boss, and glossy paper, colorful schemas and PowerPoint(tm) presentations are never enough.
      You could change my mind by showing me real benefits in terms of development effectiveness and runtime performances ...
      Both things are usually out of Micro$oft scopes.

    3. Re:Trivially by KiloByte · · Score: 1

      Unless you're selling an end-user product, which hardly ever happens in IT, you rarely get to choose what you need to interface with.

      --
      The creatures outside looked from Alt-Right to Antifa; but already it was impossible to say which was which.
    4. Re:Trivially by aztracker1 · · Score: 1

      To hell with that, I've been pushing MongoDB and NodeJS as a means for a unified language... JS everywhere (we do a lot of Flash/ActionScript work too). Not taking a slide back if I can avoid it. Have 3 pretty big projects coming up, one of which just screams use node/mongo given the use case, and data needs. UnSQL really seems like an attempt for MS & CouchDB to have their standard (probably a bastard cross between OData and the current couch interfaces).

      --
      Michael J. Ryan - tracker1.info
    5. Re:Trivially by colinrichardday · · Score: 1

      Won't work as a language, or as a way to generate revenue? I'm guessing that Microsoft is more concerned with the latter.

    6. Re:Trivially by ultranova · · Score: 1

      Yet your boss will read things on glossy paper and make you use it.

      That's fine by me, I own no stock and get paid by the hour.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

  10. no examples? seriously? by MichaelKristopeit352 · · Score: 0
    a text based article about a new text language without a single example of the new language or any attempt to justify its necessity?

    slashdot = stagnated

  11. About time by ianare · · Score: 1

    Hopefully the other DBs get on board with this, especially MongoDB and Cassandra, which at the moment seem to be the most advanced and stable. At least that in the future it would be much easier to test and/or migrate from one NoSQL DB to another. Easier options are a good thing !

    For example, we've been looking into using a NoSQL solution for storing certain elements of our web application. Unfortunately, it's hard to test the advantages and disadvantages of each without rewriting the connection and logic code. Writing some sort of custom wrapper just for basic testing seems like a huge waste of time and a likely source of errors.

    1. Re:About time by aztracker1 · · Score: 1

      Not if it's a bastard cross between Couch's interface and OData... I really wouldn't want that. I happen to like the MongoDB interfaces. The largest issue is that different NoSQL systems have different features that a unified interface can't/won't cover because of their nature. Migration paths are fine, but with document-centric data, moving is easier than switching differing SQL based data stores, as someone who's worked on a migration from Sybase to Oracle, and another from DB2 to MS-SQL, it isn't fun. NoSQL would have been, grab next document from A, shove into B, for the most part... Different models have differing use cases.

      I honestly like the MongoDB interfaces better than what I would get from MS + Couch imho.

      --
      Michael J. Ryan - tracker1.info
    2. Re:About time by slack_justyb · · Score: 1

      Wait, wait, wait... I thought the whole point of NoSQL was that not only were you able to free yourself of schema's and traditional DB related fluff, but you got a subset of features that were tuned to a specific range of use cases.

      The fact that NoSQL has no standard level of commonality between implementation has provided fertile ground for programmers to enhance what they feel is important. If we standardize NoSQL then people will begin to focus more on the core functions than the fringe functions, at some point people will forget altogether the fringe points of each implementation and poof, people will soon be writing NoUnQL. I mean, correct me if I wrong, but isn't this exactly the same thing that happened with SQL? Every DB vendor had their own magic voodoo for their DB and then slowly everyone thought SQL was "da bomb" and start focusing on SQL's core functions and optimizing around those functions; that optimizing made magic voodoo in each DB less and less important until we got to the point that DBA's feel TSQL is a bad word.

      Huzah! Everything old is new again! Dumb terminals are dead, long live the cloud!

  12. Can somebody explain NoSQLers to me? by Anonymous Coward · · Score: 1

    I just don't get NoSQLers at all. Can somebody explain them to me?

    So they have trouble scaling systems using existing relational databases because they don't know about indexes, or data partitioning, or how to set up proper hardware configurations for database servers. (Keep in mind that the system they're "scaling" is a blog getting 50 hits per day.)

    Their solution to this problem is to avoid relational databases completely, instead opting to use so-called "NoSQL" databases that don't offer ACIDity, or basically every other useful feature of relational databases. Then again, many of these NoSQLers don't even seem to know what transactions or referential integrity are in the first place, so maybe they don't even realize what they're missing.

    When they find out that their NoSQL database has corrupted or lost data, they start trying to hack together application-level support for stuff like transactions and constraints. It doesn't work, and may in fact cause more problems than it actually prevents. Now they mistakenly think that their data has better integrity, when it reality it doesn't.

    Then they realize that they need some way to query this data. Since most of them only seem to know JavaScript (maybe they were all web designers who pretend to be programmers?), they decide to contort it into a query language.

    Eventually, their custom-brewed query language ends up evolving into something that's very remarkably like SQL. But of course it isn't SQL! That would be incompatible with their "NoSQL" philosophy, which strongly states that SQL is a horrible thing and should forever be avoided. (But when confronted with this similarity, they'll backpedal and claim that the "No" in "NoSQL" means "not only", contradicting the "NoSQL means no SQL ever!" claims they'd made the week before.)

    In the end, they've spent a lot of time and effort creating a "database" system that doesn't adhere to the ACID principles in any sensible way, that uses a mangled JavaScript-inspired dialect of SQL, that loses data constantly, that doesn't perform any better than existing relational databases, that doesn't have the maturity of existing relational databases, and that doesn't have the rich set of development and administration tools of existing relational databases.

    So after all of this time, effort and pain, what have they truly gained? They're worse off than when they started! Instead of spending a few days to a week to learn how to properly use a relational database, they've spent years upon years trying to do a very poor reimplementation of it. Why? Why do they do this?

    1. Re:Can somebody explain NoSQLers to me? by chriswaco · · Score: 3, Insightful

      Relational databases work well for certain types of data but to assume that tables of rows and columns work for every need is silly.

      Relational databases are inherently hard to scale because they mix data together that doesn't necessarily need to be together. If there's no reason why Bob and Alice's records should be in the same table or on the same machine then they shouldn't be. You can avoid all contention by distributing each individual's records on unique or underutilized machines.

      Relational databases do not work well for storing hierarchical data like a file system or an object-oriented data store. They do not work well for large blobs like movie files or for unstructured documents like medical records. Because of their rigid structure, they do not version well because copying records to older versions of the schema loses data - if the column doesn't exist there's no place to put the data (imagine if application versions 1 and 2 have to read and write to the same database).

      Relational databases have their place and I completely agree that transactions are vital to data integrity, but the fixed column data model is way too limited to store all of the kinds of data used in the real world.

    2. Re:Can somebody explain NoSQLers to me? by Anonymous Coward · · Score: 5, Insightful

      Have you ever used a relational database?

      Every NoSQL approach, be it document-oriented, key-value storage, or the various hybrid approaches, can be very easily implemented using relational techniques. In fact, they are all just subsets of the relational model. Key-value storage is merely a two-column table, for instance.

      Basically every decent relational database system today allows you to easily partition your data in almost any way possible. It's trivial to store or replicate a single table's data cross hundreds, thousands, or even tens of thousands of storage and processing nodes.

      Relational databases work very well for storing hierarchical data, as well. Recursive common table expressions make it extremely easy to work with such data.

      There's just no reason to use a NoSQL database. Relational databases can do everything a NoSQL database can, and then a fuck of a lot more.

    3. Re:Can somebody explain NoSQLers to me? by luis_a_espinal · · Score: 2, Insightful

      I just don't get NoSQLers at all. Can somebody explain them to me? So they have trouble scaling systems using existing relational databases because they don't know about indexes, or data partitioning, or how to set up proper hardware configurations for database servers. (Keep in mind that the system they're "scaling" is a blog getting 50 hits per day.)

      Generalizations + lies + attempt to ridicule without facts in hand

      Their solution to this problem is to avoid relational databases completely, instead opting to use so-called "NoSQL" databases that don't offer ACIDity, or basically every other useful feature of relational databases.

      Apparently obvious to the fact that in many non-trivial business cases, you don't need full ACIDity and an eventually consistency model is more appropriate.

      Then again, many of these NoSQLers don't even seem to know what transactions or referential integrity are in the first place, so maybe they don't even realize what they're missing.

      Generalizations and unsubstantiated blanket statements about a group of software engineers for the mere sake of ridicule (this in contradiction to the first question that is dishonestly presented as a genuine question.)

      When they find out that their NoSQL database has corrupted or lost data, they start trying to hack together application-level support for stuff like transactions and constraints.

      Generalization, speculation.

      It doesn't work, and may in fact cause more problems than it actually prevents.

      Generalizations + hand waving (surprisingly, this didn't contain an instance to a "think of the children" fallacy)

      Now they mistakenly think that their data has better integrity, when it reality it doesn't.

      Generalization based on a claim that AFAIK has never been made (a poor man's attempt at a strawman.)

      Then they realize that they need some way to query this data. Since most of them only seem to know JavaScript (maybe they were all web designers who pretend to be programmers?)

      More generalizations as an attempt to ridicule or even insult (no actual, scientific and honest interest to understand the issue at hand.)

      they decide to contort it into a query language.

      You do have a point, ergo the need for a querying language, which pretty much the topic of TFA.

      Eventually, their custom-brewed query language ends up evolving into something that's very remarkably like SQL.

      That is a possibility, your point?

      But of course it isn't SQL! That would be incompatible with their "NoSQL" philosophy

      As it has been made apparent in the shitload of literature, interviews and presentations out there (fucking google it?), it has been acknowledge that NoSQL is a misnomer, as the intention was never to move out of SQL, but to provide alternative/competing data representations to the relational model (which provides a very good formal symbolic representation of a certain ubiquitous but not universal class of data.)

      which strongly states that SQL is a horrible thing and should forever be avoided.

      Says who? Cite references to this effect.

      (But when confronted with this similarity, they'll backpedal and claim that the "No" in "NoSQL" means "not only", contradicting the "NoSQL means no SQL ever!" claims they'd made the week before.)

      Red herring, strawman. I short, generalizing stupidity.

      In the end, they've spent a lot of time and effort creating a "database" system that doesn't adhere to the ACID principles in any sensible way

      Because full ACIDity is not desirable in certain classes of problems. Where have you been all this time?

      that uses a mangled

    4. Re:Can somebody explain NoSQLers to me? by Anonymous Coward · · Score: 4, Informative

      Try to read CJ Date work on relational theory and relational databases. Every single thing you say is wrong, I'm sorry to say that. Relational databases are not about "fixed column data models". It's not an ACID Excel. It's not about tables. It's about sets and how sets relates to it's members and to other sets. This includes hierarchical models, which are easily expressed in a RDBMS.

      Those who doesn't understand relational databases are bound to reinvent it, poorly.

    5. Re:Can somebody explain NoSQLers to me? by Anonymous Coward · · Score: 1, Insightful

      Try that again, but without so much ad hominem, and without using "generalization" as your only argument against what was said.

      It's hard to take you, and other NoSQL advocates, seriously when you don't present sound arguments. The comment you replied to provided us with all of the facts, in a coherent and intelligent manner. You, on the other hand, just threw out one insult and pathetic argument after another.

    6. Re:Can somebody explain NoSQLers to me? by The+MESMERIC · · Score: 1

      UnReaL !!
      GodLike !!
      MASSACRE !!!

      Multi Kill !!
      Mega Kill !!
      Ultra Kill!!

      M M M MONSTER KILL !!!!

    7. Re:Can somebody explain NoSQLers to me? by Joey+Vegetables · · Score: 5, Informative

      Developer and former DBA here. Yes, the relational model is more than capable of expressing hierarchical data. However, the SQL language, at least the subset common to most popular RDBMSs, doesn't grok hiearchical data very well. And that leads to a point Codd, Date and others make pretty much every day of their lives: Relational =! SQL. The relational model has elegance and power that can't be expressed in SQL, at least not easily. But many of those confronted with the shortcomings of SQL falsely assume these to be shortcomings of the relational model as well, which in most cases they are not.

    8. Re:Can somebody explain NoSQLers to me? by cjcela · · Score: 1

      I do not understand why instead of answering the well stated questions of the parent post, people votes it down it. He/She has several good points. And it is also true that a lot of the people who talks about NoSQL has never done serious work, studied, or understand relational databases. Also, I am noticing a lot of fellows commenting here confuse the concept of a relational database with SQL - they are not the same thing, SQL is just one of the possible languages one can use to work with RDBs.

    9. Re:Can somebody explain NoSQLers to me? by Anonymous Coward · · Score: 0

      It's sad you're being marked Troll for this post. Nothing about what he said merit being flagged troll, retards.

    10. Re:Can somebody explain NoSQLers to me? by Anonymous Coward · · Score: 0

      NoSQL advocates consider the truth to be "trolling", since for some reason it always contradicts what they're saying.

    11. Re:Can somebody explain NoSQLers to me? by luis_a_espinal · · Score: 1

      Try that again, but without so much ad hominem, and without using "generalization" as your only argument against what was said.

      It's hard to take you, and other NoSQL advocates, seriously when you don't present sound arguments.

      Ad hominems. How do pot-kettle. Instead of telling me that I'm ad hominem'ing you, tell me exactly which of the accusations I made (generalizations and ridiculing) is not true. Then we talk.

      Also, I'm not a NoSQL advocate at all. I'm a whatever-works advocate. For the majority of cases, for the general case, a relational database system works just fine. For a certain class of problems, it doesn't. Use the tool that is appropriate for the task.

      But then again, you are free to generalize me as a NoSQL advocate if that helps you build your argument (given that generalization seems to be your forte.)

      The comment you replied to provided us with all of the facts, in a coherent and intelligent manner. You, on the other hand, just threw out one insult and pathetic argument after another.

      O really? If that's your understanding of presenting facts in an intelligent, coherent manner, you need to get psychiatric help. Allow me to quote that wonderful piece of intellectual work you are referring to as my last, parting shot. Feel free to stay and belabor on it as you see fit:

      1. Attempt to insult via generalizations:

      Then they realize that they need some way to query this data. Since most of them only seem to know JavaScript (maybe they were all web designers who pretend to be programmers?)

      2. Attempt to a counter-argument by strawman (by referring to a false position NoSQL advocates have ever made):

      But of course it isn't SQL! That would be incompatible with their "NoSQL" philosophy

      3. Attempt to trivialize by taking a dumb thing to do and painting it as if that's what serious NoSQL advocates do in real life:

      (Keep in mind that the system they're "scaling" is a blog getting 50 hits per day.)

      4. Attempt to create a refutation via ridicule without substantiating data or citations to the fact:

      When they find out that their NoSQL database has corrupted or lost data, they start trying to hack together application-level support for stuff like transactions and constraints.

      5. Attempt to negatively compare apples and oranges without specifying a particular context, without showing numbers and while ignoring the fact that many well-published companies (Google, FB, Twitter, LinkedIn) to name a few have use non-relational stores to improve their performance numbers.

      that doesn't perform any better than existing relational databases,

      6. Attempt to take a few edge case (MongoDB and CouchDB) while maliciously ignoring all the other non-relational stores out there that use more familiar querying languages based on SQL (GAE's data store and GQL, Amazon BigTable restricted SQL, Oracle BerkeleyDB and its restricted SQL capabilities, all other NoSQL stores out there that you can query with XQuery.)

      that uses a mangled JavaScript-inspired dialect of SQL

      And this last goes to the heart of the matter. You criticize all of the NoSQL stores because a few use a JSON-based query language (which is natural if you store and query things in JSON or BSON format). And the meat of this article is about providing a unifying querying language that is based or related on Codd's relational algebra.

      So pretty much you bitch about the problem... in a discussion about a solution to that problem... and where the solution closely resembles at a very mathematical level to the thing you feel more comfortable with (SQL.)

      Here is a crowbar. Please use it to get your head out of your ass.

    12. Re:Can somebody explain NoSQLers to me? by spectro · · Score: 0

      Have you ever used a relational database as the datastore for a big object oriented application?

      If you do, you will find most of the complexity in your application will lie in all the hacks used to make your domain model work with a relational database.

      You can see this working with fluent nhibernate: create a complex object model and then look at how the automapper bends over backwards to generate a relational database schema matching it (and don't show that schema to your DBA or he might get a heart attack)

      I think one of NoSQL aims is to solve this issue by replacing the relational database with a datastore that handles objects straight without hacky schemas or ORM libraries.

      --
      HTML is obsolete. It's time for a new, simpler and richer markup language.
    13. Re:Can somebody explain NoSQLers to me? by Anonymous Coward · · Score: 2, Funny

      Mr Breivik, is that you?

    14. Re:Can somebody explain NoSQLers to me? by Mitchell314 · · Score: 1

      It could be that gp's post was centered around strawmen. Horrible way to make a point.

      --
      I read TFA and all I got was this lousy cookie
    15. Re:Can somebody explain NoSQLers to me? by codepunk · · Score: 1

      Actually no I am not running a blog I am running a gaming system running well over 300k transactions per second at peak load.

      It is also a requirement that I be able to run this on virtual instances so that if I need to double in size in the next 24 hrs I can do it.

      It has nothing to do with being able to put a index on a lookup column. It has everything to do with insane transaction rates not obtainable using a traditional approach.

      Then there is also the cost factor, I need to run on as few instances as possible and little to zero in software cost.

      --


      Got Code?
    16. Re:Can somebody explain NoSQLers to me? by chriswaco · · Score: 1

      Have you ever used a relational database?

      Yes, I've cursed them for more than 25 years because trying to fit desktop application storage into relational models nearly always creates more work than necessary.

      Key-value storage is merely a two-column table, for instance.

      Except that the column types are fixed. What happens if keys point to different types of data (images, text, movies, urls, other tables)? Do you create one column for every type of data that may be used into the future? One table per data type? Do you misuse blob columns? One of the nice things about sqlite is that it doesn't force developers into such a restricted world view.

      Just because you can haul anything in a semi truck doesn't mean that a semi truck is the optimal vehicle for hauling everything. Sometimes it's better to use 5 minivans. Do you seriously think that Google Maps are implemented in BigTable because the folks at Google were too stupid to use a relational database?

      The OOP to Relational mismatch is described at: http://en.wikipedia.org/wiki/Object-relational_impedance_mismatch

    17. Re:Can somebody explain NoSQLers to me? by codepunk · · Score: 1

      Yep google got it all wrong they should have implemented their search on a relational db instead of big table.

      There is nothing wrong with relational databases they just are not designed to handle the transaction and latency rates required by some applications.

      --


      Got Code?
    18. Re:Can somebody explain NoSQLers to me? by ultranova · · Score: 1

      They do not work well for large blobs like movie files or for unstructured documents like medical records.

      Neither movie files or medical records are unstructured. No data with meaning is.

      In fact, there's a great case for putting your "blob" to a relational database through a filter that gives it structure - after all, it's a good thing a doctor could access his patient's entire medical history but not name, right? Easy to do with SQL, impossible to do with blobs.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    19. Re:Can somebody explain NoSQLers to me? by gfody · · Score: 3, Insightful

      If you're persisting the objects from your oo app then you're already doing it wrong. ORM libraries, etc. are just further down the hole. If you can't be bothered to think about what information describes your objects then you don't have persistence, you have persistent cache which is all hibernate is supposed to be. If your app is boxed software or a game or something then that's probably good enough. But if your app is online and expected to scale and evolve over time then choosing to persist objects rather than information is shooting yourself in the foot.

      I'm curious, what happens to all the objects in your object store when the application changes?

      --

      bite my glorious golden ass.
    20. Re:Can somebody explain NoSQLers to me? by DarwinSurvivor · · Score: 1

      the automapper

      I think I found your problem

    21. Re:Can somebody explain NoSQLers to me? by gfody · · Score: 2

      BigTable is 15 year old technology that has been completely surpassed by modern relational systems. Many Googlers complain about it and would rather not use it.

      The object/relational impedance mismatch is often cited by people who think they should not have to model information to persist information (they mistake their object model for an information model). While it's almost always worth your while to design an information model behind your objects, in the case that it's not you don't have to. Either way a modern relational system has you covered.

      --

      bite my glorious golden ass.
    22. Re:Can somebody explain NoSQLers to me? by Anonymous Coward · · Score: 0

      If you're persisting the objects from your oo app then you're already doing it wrong...If you can't be bothered to think about what information describes your objects then you don't have persistence, you have persistent cache which is all hibernate is supposed to be.

      Well, if you can't be bothered to think about what information describes your objects, you're doing OO wrong.

      For the record, I kind of agree with your point, but I persist objects from my OO app to a relational database. I don't encounter any problems doing that, because the whole "data" vs. "functionality" thought process was going on during the design of the application, before the database ever got involved.

    23. Re:Can somebody explain NoSQLers to me? by AuMatar · · Score: 3, Interesting

      And then you ha0ve a use case change. Or need to interface with an app written in another language. Or find that *shock* while a certain object is very effective for holding some information, it's a horrible way of storing for query. An object should be designed for the use case at hand, the database should be designed for efficient retrieval for that and future use cases. The two are damned near never the same. Persistence frameworks are a mistake.

      --
      I still have more fans than freaks. WTF is wrong with you people?
    24. Re:Can somebody explain NoSQLers to me? by Paul+Fernhout · · Score: 1

      Even as a CouchDB user, I've found your comments in this thread interesting, thanks. You might also like the book "Data & Reality" by William Kent on information representation:
          http://www.bkent.net/Doc/darxrp.htm

      I agrre with you that changing application needs is a big issue, no matter what system you use.

      That said, CouchDB's easy peer-to-peer replication is still pretty neat. :-) Can you point to a FOSS SQL-based system that can easily match that specific feature?

      --
      A 21st century issue: the irony of technologies of abundance in the hands of those still thinking in terms of scarcity.
    25. Re:Can somebody explain NoSQLers to me? by Mjec · · Score: 1

      Relational databases do not work well for storing hierarchical data like a file system or an object-oriented data store. They do not work well for large blobs like movie files or for unstructured documents like medical records.

      Emphasis added.

      This is part of the problem I have with NoSQL. It is a great solution to certain types of problem, but a lot of data is structured. Medical records are extraordinarily structured and should be stored as such. Structured medical records means portability, easy epidemiological research, better use by consumers, finer control of authorities...

      Structuring medical data is hard, no doubt. But that doesn't make it unstructured data. The benefits of structure are significant. Use NoSQL for things it's good at - like storing Facebook messages - but please don't restructure your problems to fit it. Structure is good!

      --
      "But everyone should know everything." -markab
    26. Re:Can somebody explain NoSQLers to me? by gfody · · Score: 1

      If you've modeled your information well and not let specifics of your application creep in then changes in your application need not be a problem at all. Even if you do need to refactor your information any modern RDBMS has great tools to help. I really do wonder what people with very large object stores are doing when their objects change.

      PostgreSQL supports all manner of replication, I imagine it's not as easy as something called "easy replication" but would count on it being more flexible. Or use one of the many clustering systems to trade some flexibility for ease of use.

      --

      bite my glorious golden ass.
    27. Re:Can somebody explain NoSQLers to me? by MichaelSmith · · Score: 1

      The article seems mostly about an expressive language for querying xml trees. Its not simple, and totally different from the relational database model. If anything it is more expressive than sql, which is quite procedural by comparison.

    28. Re:Can somebody explain NoSQLers to me? by devnil · · Score: 1

      Hey, it's not that bad IMO. Actually, anything that lets you move away from that horrible xml mapping files is worth a try.

    29. Re:Can somebody explain NoSQLers to me? by Anonymous Coward · · Score: 0

      He didn't have a hand launchable tactical nuclear missile to redeem himself.

    30. Re:Can somebody explain NoSQLers to me? by justforgetme · · Score: 1

      ... don't offer ACIDity ...

      I don't know about its acidity but I have heard that Cassandra can give you AIDs!

      disclaimer: my facts are all true! I have been know to lie though...

      --
      -- no sig today
    31. Re:Can somebody explain NoSQLers to me? by justforgetme · · Score: 1

      well..

      The NoSQL movement gets meaningful with the concept that no one solution fits all problems. Relational databases are great for some jobs and not so for others. MySQL is the go to solution for 95% of websites because it will provide exactly what those websites need. On the other hand if you are developing a web app that deviates from the classic layout in its data needs some noSQL solutions might provide a better fit.

      I'm not saying that either is pointless here, and personally I can't see any of today's established DB solutions (mySQL and Postgres; for the other ones I don't care much...) going away anytime soon. Obviously the evolution of our activities brings up (and will keep bringing) up demand for solutions that didn't exits earlier. So if you want to be ahead of the curve better understand the currents needs and available solutions or be left behind as a relic from more primitive times.

      I don't know if there is a relation between noSQL evangelists and the truth, but them being noSQL heads probably means that they wouldn't perceive the relation as you do ;-)

      --
      -- no sig today
    32. Re:Can somebody explain NoSQLers to me? by Paul+Fernhout · · Score: 1

      Thanks. It is suggested here that "Multi-master replication" is not supported, which is what CouchDB excels at.
          http://wiki.postgresql.org/wiki/Binary_Replication_Tutorial

      Contrast with what is easy in that regard for CouchDB:
        http://wiki.apache.org/couchdb/Replication

      Anyway, everything has strengths and weaknesses in different situations. But in general, I agree SQL systems can do a lot as a mature technology, and maybe more than some NoSQL advocates understand or are willing to admit.

      As in the book, Data & Reality, it can be pretty hard to model data well. Every model make simplifications of reality, and sometimes we find out the choice of simplification was not a good one, especially if needs change. But I also agree with you that good tools can make that easier to handle. I think one big advantage of SQL systems over NoSQL Schema-free systems is that the database schema serves as form of documentation of intent of what is going on. That documentaiton of intent then is traded off against flexibility at the application level.

      Ideally, one could use a system without those kind of documentaiton/flexibility tradeoffs.

      --
      A 21st century issue: the irony of technologies of abundance in the hands of those still thinking in terms of scarcity.
    33. Re:Can somebody explain NoSQLers to me? by Sarten-X · · Score: 1

      I worked with medical records, stored in HBase with minimal structure. The application dealt with statistics over millions of patients. Missing a few elements of a record by the time a processing job went looking for them was practically irrelevant, and even desirable sometimes. By discarding most of the structure of the data, the meaningful information could be summarized in a concise form suitable for the needs of the application. The application I worked on could deliver results from scratch in 3 hours comparable to a (Oracle-using) competitor's results after 6 months. That speed improvement came primarily from being able to directly compare medical cases, regardless of how the records were originally organized.

      The benefits of flexibility are significant. Use an RDBMS for things it's good at - like storing data where ACID is necessary - but please don't require unnecessary constraints on the possible uses. Flexibility is good!

      --
      You do not have a moral or legal right to do absolutely anything you want.
    34. Re:Can somebody explain NoSQLers to me? by maraist · · Score: 1

      Maybe I'm missing something, but I don't see how that's possible. Hibernate is idiot-simple when you have a single table of primitive types. I can write my own adaptor that serializes the entire row contents into a blob, then inject that into a RDBMS or key-value blob-store identically. In fact, the RDBMS will probably do this faster because it has many years of disk-oriented (memory is too small) code, v.s. most NoSQL solutions that are in-memory optimized and page-to-disk bolted on. If you use a BigTable or couchDB javascript document as your serialization, then you're straight back to explicit table land.. Namely because your Hibernate schema definition is rigid (while your BigTable/couchDB definition is not) - but you're limited by the weakest link.

      The power of a CouchDB documents is in writing custom filters to translate the data. The power in BigTable is in it's efficient 1-to-many storage. Neither of which, again are leveraged by Object oriented solutions (save perhaps a dynamic scripting language like groovy).

      I'm not disparaging NoSQL solutions - but I don't see a one-hat-fits all mold

      --
      -Michael
    35. Re:Can somebody explain NoSQLers to me? by gfody · · Score: 1

      You'll want to check out the clustering systems, anything stating to provide write-scaling is probably multi-master. PG-XC describes itself as a "write-scalable synchronous multi-master postgresql cluster". Interestingly 'synchronous' implies that this system scales out without sacrificing consistency. I haven't used it so I can't say for sure. My experience is with commercial RDBMSs and the eventual consistency model.

      Data & Reality looks like an interesting read for sure, I will add it to my queue thanks!

      --

      bite my glorious golden ass.
    36. Re:Can somebody explain NoSQLers to me? by GrandTeddyBearOfDoom · · Score: 1

      Relational Theory (RT) is a kind of Set Theory (ZF) for databases: a good universal foundation for expressing what a database should do. But virtually no applications need all of its power, and many applications are better implemented by implementing a `weak fragment' of RT. SQL injection is possible because SQL is so powerful a language compared to what the solution requires, and it is very difficult to fully anticipate all cases of possible inputs. Thus a much weaker theory and database language may be a better option. (I have a certain interest in weak fragments of theories and how much of a theory is required to prove its results, though my area is more based around Arithmetic than Set Theory.)

      --
      -- The Grand Teddy Bear has Spoken: "Windows 8 Source Code Available NOW! more disgusting than your pr..."
    37. Re:Can somebody explain NoSQLers to me? by Anonymous Coward · · Score: 0

      But virtually no applications need all of its power, and many applications are better implemented by implementing a `weak fragment' of RT

      That depends of the expected lifetime of the the information and the application. On the other hand, I don't think there are many DB products implementing even the ANSI standard fully.

      SQL injection is possible because SQL is so powerful a language

      When you mishandle inputs you are screwed irrespective of strength of the query language.

    38. Re:Can somebody explain NoSQLers to me? by godefroi · · Score: 1

      What happens if keys point to different types of data (images, text, movies, urls, other tables)?

      In that case, you should be using something like SQLite. See this page for more information.

      --
      Karma: Poor (Mostly affected by lame karma-joke sigs)
    39. Re:Can somebody explain NoSQLers to me? by Paul+Fernhout · · Score: 1

      "Postgres-XC"

      Cool, thanks.

      --
      A 21st century issue: the irony of technologies of abundance in the hands of those still thinking in terms of scarcity.
  13. Just in time! by Angst+Badger · · Score: 2

    There was way too much experimentation and innovation going on in the NoSQL world. This should help kill it.

    --
    Proud member of the Weirdo-American community.
    1. Re:Just in time! by Anonymous Coward · · Score: 0

      What sort of "innovation" are they responsible for? The only "innovation" I've seen from the NoSQL community is in their ability to rapidly hype what are really fucking stupid ideas. But that's more marketing and propaganda innovation, rather than technical innovation.

      All of the concepts that today are called "NoSQL" were first discovered in the 1970s and earlier. Yes, we've known about these ideas for decades, if not centuries in some cases.

      Starting in the 1970s, it was realized that it's important to maintain data integrity, as well as to easily and efficiently query that data. Relational databases were able to provide this functionality.

      Fast-forward to the 2000s and 2010s. Now we have web designers pretending to be DBAs and programmers, but they don't know how to use relational databases at all. So instead of learning how to use a relational database properly, they've just re-discovered what everyone else knew of (and wrote off, due to its flaws) decades ago.

      They aren't responsible for any innovation or experimentation. They're just decades behind everyone else, knowledge-wise. The new Dark Age they're ushering in is misinterpreted as "innovation" and "experimentation" by fools.

    2. Re:Just in time! by Anne+Thwacks · · Score: 1

      mod parent +1 knowledgeable

      --
      Sent from my ASR33 using ASCII
    3. Re:Just in time! by A+nonymous+Coward · · Score: 1

      Yes, we've known about these ideas for decades, if not centuries in some cases.

      Clue me in. Which of these ideas have we known about for centuries, that the NoSQLers claim to have (re-)invented?

      Otherwise I mostly agree with you. I get the impression, for instance, that memcached was invented by Zberg strictly because he couldn't wrap his ego around SQL and thought he was so smart that he didn't need to waste time understanding it.

    4. Re:Just in time! by codepunk · · Score: 2, Interesting

      "Fast-forward to the 2000s and 2010s."

      This is the issue, fast forwarding to 2010 we are dealing with scaling and environment issues that your precious relational database cannot solve.

      Tell me mr genius how you are going to handle 300k select queries on you mysql database holding 10 million rows, running on a virtual instance with shitty IO. Now add the fact that you have a very limited budget etc.

      NoSQL stores are designed to address this sort of scenario not your little app with a hundred concurrent users hanging off of it.
       

      --


      Got Code?
    5. Re:Just in time! by Joe+U · · Score: 1

      Tell me mr genius how you are going to handle 300k select queries on you mysql database holding 10 million rows, running on a virtual instance with shitty IO. Now add the fact that you have a very limited budget etc.

      There are scenarios where NoSQL is a valid alternative, this is not one of them.

    6. Re:Just in time! by Splab · · Score: 1

      10 million rows? That should fit in most database servers main memory.

      Oh, and if your I/O is the trouble, NoSQL wont magically make it disappear.

      The only thing NoSQL has solved is doing multimaster cheap, yes those are hard to solve in traditional databases, however, you can only solve it, if your datamodel is ok with eventually correct, most business aren't.

    7. Re:Just in time! by tgv · · Score: 1

      If you're willing to spend a lot of money, perhaps. But if you want to run on the cheap, where you've got more time than money, NoSQL database provide excellent performance. I'm working with an Oracle Enterprise installation, and it just cannot compete with the 30M rows that the Hypertable db on my laptop can serve up in a couple of seconds. Perhaps if the DB guys threw a load of money at it, Oracle could do that too. However, using Hypertable means that you have to write a lot of extra code. That's not good for business in the long term. But for a start? Or for throwaway data (I'm thinking Twitter)?

    8. Re:Just in time! by HarrySquatter · · Score: 1

      I'm working with an Oracle Enterprise installation, and it just cannot compete with the 30M rows that the Hypertable db on my laptop can serve up in a couple of seconds

      Then you have incompetents running your database if it's having issues with a measly 30 million rows. That's fucking childs play. It's not uncommon for a enterprise databases to be handling hundreds of millions if not billions of rows of data and they do it just fine in the hands of people who aren't incompetent.

    9. Re:Just in time! by tgv · · Score: 1

      It's not that the data cannot be stored, we've got billions and billions of rows. I just cannot get 30M rows returned from the server in a couple of seconds; that takes ages under Oracle, whereas Hypertable returns them very, very quickly. E.g. fast enough to generate reports on the fly.

    10. Re:Just in time! by Anonymous Coward · · Score: 0

      Let me make a couple of stupid questions: How's the network doing? What about the server? You haz got views?

    11. Re:Just in time! by ultranova · · Score: 1

      Clue me in. Which of these ideas have we known about for centuries, that the NoSQLers claim to have (re-)invented?

      Your query can't be answered, for it requires taking the intersection of two sets, which is SQL-like stuff nobody uses.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

  14. PDF version of paper by gmueckl · · Score: 2
    --
    http://www.moonlight3d.eu/
    1. Re:PDF version of paper by ggy · · Score: 1

      But to the wrong paper, as stated in TFA.

  15. Microsoft Legal Dept. by bobbuck · · Score: 1

    I don't know how good they are. They tried to sue me but the court couldn't access the complaint without agreeing to a 30 page EULA.

  16. Wrong link in the summery? by ggy · · Score: 4, Informative
    Hrm, if you read TFA you'll notice the part

    This version of UnQL has no relation to an identically named unstructured data query language proposed by a University of Pennsylvania researcher over a decade ago, Phillips said.

    which funnily enough is linked in the summery.
    Maybe you should fix this to point to the actual link in TFA http://wwww.unqlspec.org/ ?

    1. Re:Wrong link in the summery? by Anonymous Coward · · Score: 0

      Right now that just takes me to a CouchBase page. The closest thing to a spec seems to be at http://www.unqlspec.org/display/UnQL/Home

  17. Not standard, unified. by pedantic+bore · · Score: 3, Funny

    "So, everyone will use this unified query language?"

    "Yes, it'll be great. No need to rewrite things when moving from one database to another."

    "Sounds great. Portable apps! Hooray!"

    "It amazes me that nobody has ever done anything like this before."

    "Yes, in hindsight it's blindingly obvious. There should have been a single query language all along."

    "A single query language--we could call it `S-QL` or something like that."

    "Nah, I heard that there's already something called SQL. People would get them confused."

    "Why? They're probably totally different things."

    "Yeah, probably. It's better to make up new names than to risk confusion. So, what's it called?"

    "Uncle."

    "Isn't that what you say when you surrender?"

    "Yes, but in this case there's no possibility of confusion."

    --
    Am I part of the core demographic for Swedish Fish?
    1. Re:Not standard, unified. by arglebargle_xiv · · Score: 1

      "So, everyone will use this unified query language?"
      "Yes, it'll be great. No need to rewrite things when moving from one database to another."
      "Sounds great. Portable apps! Hooray!"
      "It amazes me that nobody has ever done anything like this before."
      "Yes, in hindsight it's blindingly obvious. There should have been a single query language all along."
      "A single query language--we could call it `S-QL` or something like that."

      Then all they need to do is reinvent ACID and they'll have made it to the 1980s. At that point they'll only have another thirty years of catching up left to go...

    2. Re:Not standard, unified. by Anonymous Coward · · Score: 0

      "So, what's it called?"

      "Uncle."

      "Isn't that what you say when you surrender?"

      "Yes, but it is also an arcaic word for daddybrother or mommybrother."

    3. Re:Not standard, unified. by Anonymous Coward · · Score: 0

      "Lets add goto to the Uncle, so that everybody knows we are neither structural, nor structured."

    4. Re:Not standard, unified. by colinrichardday · · Score: 1

      Then all they need to do is reinvent ACID and they'll have made it to the 1980s.

      Wouldn't that be the 1960s?

    5. Re:Not standard, unified. by arglebargle_xiv · · Score: 2

      Then all they need to do is reinvent ACID and they'll have made it to the 1980s.

      Wouldn't that be the 1960s?

      Having sat in on technical debates among users of different NoSQL implementations, I would say they have plenty of that type already.

      It was kinda scary sitting with a roomful of heavy-duty NoSQL users debating technology and having the organiser ask if anyone had any experience across a range of NoSQL implementations, to allow comparisons to be made. Zero hands were raised. This led to an extended debate about "How can we know X is a good approach if we have no idea how it compares to anything else?". The impression was of lots of little islands of NoSQL use that were motivated more by "Well, at least it's not Oracle" than any real cost/benefit analysis. One or two people even mentioned that "We should really be using Postgres, but Mongo/Couch/whatever is trendier". A number of users also mentioned the pain of having to hand-implement ACID on top of NoSQL using chewing gum and rubber bands, and the inevitability of switching to a proper RDBMS at some point when the pain became too much, or when they started experiencing serious losses due to the lack of transactional capabilities and whatnot.

      Maybe NoSQL should be renamed NoOracle, which seems to a major factor in its use.

    6. Re:Not standard, unified. by Anonymous Coward · · Score: 0

      It has been done before, many years before the introduction of SQL. What do you think was reading and writing data before the verb-stripping relational database was introduced? In those days, we used both verbs and nouns. Today, its nouns all the way down; verbs at the whimsy of the BI crowd.

  18. get(key) by codepunk · · Score: 1

    The beauty of a nosql store is defined by this query method get(key) it need to be nothing more and nothing less than that. Adding a query language totally defeats this purpose. Not to mention once you commit to using a search mechanism you are tightly bound to it.

    For instance I use mongodb but I do not allow anyone to use it's built in search mechanisms other than find by some key within the app itself.

    Sticking to this rule allows us to move to something like pure memcached, membase etc as a store by a simple config change.

    Now using search capability outside the app is handy but again tightly binds you to the platform.

    --


    Got Code?
    1. Re:get(key) by Anonymous Coward · · Score: 0

      I've heard a lot of pretty stupid shit out of the NoSQL community, but my word, you've taken it to a whole new level.

    2. Re:get(key) by purpledinoz · · Score: 1

      Searching is for pussies. Real men memorize every unique key in the database.

    3. Re:get(key) by Jonner · · Score: 1

      The beauty of a nosql store is defined by this query method get(key) it need to be nothing more and nothing less than that. Adding a query language totally defeats this purpose. Not to mention once you commit to using a search mechanism you are tightly bound to it.

      For instance I use mongodb but I do not allow anyone to use it's built in search mechanisms other than find by some key within the app itself.

      Sticking to this rule allows us to move to something like pure memcached, membase etc as a store by a simple config change.

      Now using search capability outside the app is handy but again tightly binds you to the platform.

      Yeah, I yearn for that beauty when I use PostgreSQL. If only I had to write pages of new application functionality every time I wanted to search in a different way or add a new kind of thing to my database. Who wants to write a couple of lines of SQL when you can write hundreds of lines of C++?

  19. I don't get it... by Anonymous Coward · · Score: 0

    Well, call me crazy, but the idea of NoSQL was NOT USING SQL AT ALL... now we got a language that in FACT "could be considered a superset of SQL", ok now we have to learn SQL and MORE to use a NOsql set of data. Great but let's change the name of NoSql to something else because this is more st..p thing I heard in the last years... now what.. people is going to hand out meatballs at PETA meetings ....

    1. Re:I don't get it... by luis_a_espinal · · Score: 1

      Well, call me crazy, but the idea of NoSQL was NOT USING SQL AT ALL... now we got a language that in FACT "could be considered a superset of SQL", ok now we have to learn SQL and MORE to use a NOsql set of data. Great but let's change the name of NoSql to something else because this is more st..p thing I heard in the last years... now what.. people is going to hand out meatballs at PETA meetings ....

      Crazy? No. Ignorant. Yes. In essence "the idea of NoSQL was NOT USING SQL AT ALL" is simply not true. This has been mentioned for a while now, but apparently people can't seem to grasp it. NoSQL is a misnomer since the idea is not to move away from SQL but to provide data models alternative to Codd's relational model for a variety of reasons (high availability is just one of them.) I agree that the name needs to be changed, but I'd also say that Google is your friend.

  20. what's new? by Anonymous Coward · · Score: 0

    am i missing something or is this just same old sql, what exactely is new here? no map/reduce?

  21. Superset of SQL by Anonymous Coward · · Score: 0

    UNQL, for a post-relational world. Nice. Meanwhile 90% [citation needed] of people working with databases can't even get relational databases right.
    Learning to run before learning to walk, anyone?

    1. Re:Superset of SQL by luis_a_espinal · · Score: 1

      UNQL, for a post-relational world. Nice. Meanwhile 90% [citation needed] of people working with databases can't even get relational databases right. Learning to run before learning to walk, anyone?

      And we are moving into functional and functional-object-hybrid models of programming when the majority of programmers in 2011 cannot even do structured programming, and try every single way to break the Bohm-Jacopini Theorem using whatever du jour OOP language of the day. So what's your point?

      If we had to wait for every moron code monkey to come up to speed, we would still be reading data off punch cards using a bastard mix of COBOL and mainframe assembly. Industrial and academic R&D and innovation forces have an obligation to move forward. Individual programmers have an obligation to educate themselves and to develop the work ethics to do things right wherever and whenever possible. Lack of the later is not reason to bog down the former.

    2. Re:Superset of SQL by purpledinoz · · Score: 1

      The Structured Programming Theorem (redirected from Bohm-Jacopini Theorem) from Wikipedia states: The structured program theorem is a result in programming language theory. It states that every computable function can be implemented in a programming language that combines subprograms in only three specific ways. These three control structures are:

      1. Executing one subprogram, and then another subprogram (sequence)
      2. Executing one of two subprograms according to the value of a boolean variable (selection)
      3. Executing a subprogram until a boolean variable is true (repetition)

      How does one exactly break this theorm?

    3. Re:Superset of SQL by luis_a_espinal · · Score: 1

      The Structured Programming Theorem (redirected from Bohm-Jacopini Theorem) from Wikipedia states: The structured program theorem is a result in programming language theory. It states that every computable function can be implemented in a programming language that combines subprograms in only three specific ways. These three control structures are: 1. Executing one subprogram, and then another subprogram (sequence) 2. Executing one of two subprograms according to the value of a boolean variable (selection) 3. Executing a subprogram until a boolean variable is true (repetition) How does one exactly break this theorm?

      It seems exaggeration and figures of speech to express the terrible state of affairs of the programming and software engineering practices cannot be performed lightly in what is supposed to be a "news for nerds" website. Let me break it down for you:

      1. Hyperbole:

      is the use of exaggeration as a rhetorical device or figure of speech. It may be used to evoke strong feelings or to create a strong impression, but is not meant to be taken literally. Hyperboles are exaggerations to create emphasis or effect

      2. Rhetoric:

      • The art of effective or persuasive speaking or writing, esp. the use of figures of speech and other compositional techniques
      • Language designed to have a persuasive or impressive effect on its audience, but is often regarded as lacking in sincerity or meaningful content.(me: this could be the hyperbolic nature of a figure of speech gets lost in the interweebz)

      3. Figurative speech:

      S: (n) trope, figure of speech, figure, image (language used in a figurative or nonliteral sense)

      With that cleared up, the figure of speech -slash- hyperbolic piece rhetoric below:

      cannot even do structured programming, and try every single way to break the Bohm-Jacopini Theorem using whatever du jour OOP language of the day

      is meant to serve as a grotesque, pejorative description of the equally grotesque situation of programmers - both the type who know nothing but OOP languages like Java or C#, but also "old guard" ones from the procedural bygone era - who despite working with a OOP language end up writing spaghetti with meatballs code.

      There are other pejorative terms floating around for a good while now: hyper-spaghetti, GOT-OOP, hyper-lasagna and the like. Even when the code has no goto statements in it, the abuse and apparent lack of coherent use in the nominal control structures mentioned by Bohm and Jacopini makes the disastrous, impenetrable code within and across classes look like the type of GOTO-ridden code Dijkstra railed against it (with Bohm and Jacopini's work as theoretical validation).

      These references have existed for a good while now (and given the sentence that preceded it), my hyperbole should have been clear from its context. I guess it was not. The analogy is very clear when you have seen a mass of recently developed production code based on nothing but GOTOs on a past recent enough to have seen widespread use of OOP languages (sadly, I have).

    4. Re:Superset of SQL by purpledinoz · · Score: 1

      What the hell is a rant?

    5. Re:Superset of SQL by luis_a_espinal · · Score: 1

      wooosh!

  22. This will make nosql stores even *more* Web Scale by c0d3g33k · · Score: 1
  23. Wrong spec link in article by CNeb96 · · Score: 1

    The link to the spec appears to be http://www.unqlspec.org/ not http://wwww.unqlspec.org/ as shown in the article, which appears to just a site about couchbase.

  24. And In Other News... by MightyMartian · · Score: 1

    And in other news, wheel reinvented, news at 11.

    --
    The world's burning. Moped Jesus spotted on I50. Details at 11.
  25. SPARQL by TuringTest · · Score: 1

    So, this is better than existing unstructured languages like SPARQL, how?

    --
    Singularity: a belief in the "God" idea with the "demiurge" relation inverted.
    1. Re:SPARQL by 21mhz · · Score: 1

      SPARQL belongs to the RDF la-la land, so it's designed by academics who never tried to implement anything convenient and scalable.
      Just ask them how easy it is to store and query a semantic equivalent of an ordered list of strings.

      --
      My exception safety is -fno-exceptions.
  26. I will say it now... by cjjjer · · Score: 1

    CouchDB, SQLite and Microsoft are shepherding the project and are inviting other parties to participate. "We're not trying to drive some sort of heavyweight process," Phillips said. Future versions of both CouchDB and SQLite will support UnQL queries, their creators promise.

    Somehow I feel that MS will be either buying up of these NoSQL companies or is developing their own in the near future. Why else would MS get involved...

    1. Re:I will say it now... by Noughmad · · Score: 1

      Why else would MS get involved...

      Because nobody wants SQL Server, and they need to spread some more FUD about its competitors.

      --
      PlusFive Slashdot reader for Android. Can post comments.
    2. Re:I will say it now... by sgt+scrub · · Score: 1

      I doubt that. Microsoft's extend and embraced version of SQL has XML support using XQuery. They are obviously looking for someone like Sybase, the origin of msSQL, to unify the sql language to handle queries on both XML and Relational Data without switching languages. I mean really, how else can Microsoft "invent" it?

      --
      Having to work for a living is the root of all evil.
    3. Re:I will say it now... by osu-neko · · Score: 1

      Somehow I feel that MS will be either buying up of these NoSQL companies or is developing their own in the near future. Why else would MS get involved...

      Congrats, you win the "Duh" of the Year award, and you gain and extra obliviousness point if you didn't already think for some time now that MS must be working on coming up with their own NoSQL soon (via either acquisition, internal development, or a combination thereof).

      --
      "Convictions are more dangerous enemies of truth than lies."
    4. Re:I will say it now... by Anonymous Coward · · Score: 0

      Microsoft SQL Server has had considerable success in SMB market, but enterprise is still dominated by Oracle and DB2.

      Right now, there's no NoSQL implementation that is backed and marketed by a big company. They all use some solutions for their own needs, but don't sell/support one. Most NoSQL solutions are open source and/or startups with no coherent long-term strategy or enterprise support.

      Large enterprises are a potential market for NoSQL, but they won't use any solution that doesn't have major corporate backing, and esp. support, even where it would otherwise make sense. Part of the "enterprise" image is being able to cite a long list of standard documents to which a product conforms.

      If Microsoft SQL Server starts supporting NoSQL tomorrow, and can claim to implement a newly approved "NoSQL standard query language", it would give it a good chance to take over the entire - as yet, unclaimed - niche of enterprise NoSQL solutions.

  27. Truly fascinating by jasomill · · Score: 1

    What I don't get is why they're adopting something modeled on one of the key weaknesses of traditional relational database management systems. "Familiarity," perhaps, but this seems likely to be superficial, and the stated goal of "creat[ing] some form of commonality among non-SQL databases" strikes me as similar to the goal of finding "some form of commonality among non-elephant mammals."

    That there exist applications for data storage where a relational database isn't the appropriate tool is trivial, and well-understood by the relational database community, as is the fact that integrity guarantees are not, in general, available "for free." This has nothing at all to do with one's choice of query language, incidentally.

    The whole "NoSQL" thing strikes me as an attempt to use straw man arguments to drum up publicity, which, as I pointed out in response to another article, can be quite brilliant if done artfully. Unfortunately, the NoSQL community is hardly Groucho Marx, and the relational database "establishment," taken as a whole, is hardly comparable to a bunch of money-grubbing, back-stabbing studio executives.

    The result, predictably, seems to be even more misinformed skepticism in a field already full of it, sort of like Twain's line about "lies, damn lies, and statistics" being mistakenly invoked as a general indictment of mathematical modeling (and, by extension, most of empirical science).

  28. What a major f* fail in citations by luis_a_espinal · · Score: 3, Informative
    What a fail. Notice the second link in the quote below:

    splitenz writes:

    "Hoping to unify the growing but disparate market of NoSQL databases, the creators behind CouchDB and SQLite have introduced a new query language for the format, called UnQL (Unstructured Data Query Language .PS). It has Microsoft's backing."

    Then, FTA (right at the bottom of it):

    This version of UnQL has no relation to an identically named unstructured data query language proposed by a University of Pennsylvania researcher over a decade ago, Phillips said.

    I know it's slashdot, but c'mon. Just looking at the linked postscript file shows you a major WTF discrepancy. First the paper is from 2000, and then that paper's query language is based on algebras that do not resemble Codd's relational algebra at all. And that runs counter to this, also FTFA:

    Like SQL, UnQL was built on the foundation of relational algebra, Phillips said.

    The news are great. The coverage blows. It would pay to read the stuff that is being submitted as a story... just sayin...

  29. Quick! Somebody tell... by kgeiger · · Score: 1

    the CODASYL people they've fresh meat.

    --
    Vision with execution is hallucination.
  30. NoSQL language based on SQL? by chimerafun · · Score: 1

    It's a superset of SQL with extra operators? So NoSQL has become SQL? {face palm}

  31. That leads to question by Anonymous Coward · · Score: 0

    How many years we have till NoUnQL movement?

  32. Microsoft Backing Database Projects by The+O+Rly+Factor · · Score: 1

    Step 1: Structured query databases exist for four decades, show they are perfectly capable of scaling, load balancing, and anything else you want them to do.

    Step 2: Microsoft writes a structured query database, it can hardly do any of these.

    Step 3: "Rararara structured query sucks lets support some half-baked DB idea and as soon as there is a breakthrough buy it up."

    Step 4: ???

    Step 5: Profit!

  33. Are you for real? You're not joking, are you? by Anonymous Coward · · Score: 2, Informative

    This is the issue, fast forwarding to 2010 we are dealing with scaling and environment issues that your precious relational database cannot solve.

    Relational databases can scale just fine. It's merely fools like yourself, who are fucking clueless, who have trouble getting them to scale. The problem isn't relational database technology; it's the morons incorrectly designing and implementing the systems who are at fault.

    Tell me mr genius how you are going to handle 300k select queries on you mysql database holding 10 million rows, running on a virtual instance with shitty IO. Now add the fact that you have a very limited budget etc.

    Well, I would clearly use a real relational database, rather than MySQL. See, using MySQL was your first big mistake. PostgreSQL and Firebird make fine alternatives, and they fit very nicely with your "limited budget" constraint, considering that they're free. Commercial relational database systems work quite well, too, if you're willing to pay a little bit of money.

    10 million rows in a single database is absolutely nothing. 10 million rows in a single table is nothing. If you're having trouble scaling with such a small amount of data, then you're doing something seriously, seriously wrong. Whatever it is that you've fucked up, that's yet another mistake on your part. For real professionals, scalability issues usually don't arise until you're dealing with databases containing numerous tables each containing trillions of rows of data.

    Of those 300,000 SELECT queries you mention, most are likely unneeded. It sounds like you're just doing a shitty job of caching data. This is yet another mistake you have made.

    Only a fool would run a database in a virtual machine that does not provide a proper IO subsystem. If I take the wheels off my car, it's not the car's fault when it doesn't move. Likewise, if you choose the stupidest and most feeble data storage approach possible, it's not the database's fault when IO becomes the bottleneck.

    The database you describe can be very easily run, without scalability issues, on most low-end dedicated hosting plans costing a few hundred dollars per year. If your budget so so tight that you can't afford $300 a year, then whatever it is that you're doing is a joke, and the data that you're storing is useless.

    (I apologize if your comment was just a joke, and I missed it. Whoosh on me! Sometimes it's just hard to tell when people are joking, and when people are seriously advocating NoSQL techniques. Both involve a similar style of ignorance. In the professional DBA case it is feigned, but in the NoSQL advocate case it is real, pure, honest-to-goodness ignorance.)

    1. Re:Are you for real? You're not joking, are you? by codepunk · · Score: 1

      Oh I know all of these .com shops that are running nosql solutions are doing it wrong because they don't know how to use a relational database?

      Again we are not talking about your little app with a 100 to 1000 concurrent users hanging off of it.

      --


      Got Code?
    2. Re:Are you for real? You're not joking, are you? by fimbulvetr · · Score: 1

      This is 100% bullshit and you (should) know it. You tout yourself as some sort of RDBMS person, but you come across as knowing absolutely nothing.

      At the end of the day, Firebird, Postgres and Mysql all really only support one index type (or variant): b-tree. No matter where your data is presently (index or ram), you will ALWAYS pay a price for insert, and ALWAYS pay a price for select. Now, the number of i/os required for a btree seek is a very attractive equation for anything under the 10s or even hundreds of millions mark. If you're using a quote "standard server", it's exceeding that, or having to write where things _really_ start to suffer. Couple that with that foreign keys, which usually have a btree as well, and all your combinatorial indexes, and you're fucked with any reasonable large data set. There is no disagreement here, unless you suggest that btrees are infintely fast, or that postgres does indeed have a better index (It does have hash, but it's a piece of shit).

      If you want to know more, I suggest you investigate the CAP theorem and apply some critical thinking skills to the age old question - given these tradeoffs and relationships and my tolerance to any given one, what is the best tool for the job?

  34. Advocacy of NoSQL is a warning sign... by aristotle-dude · · Score: 1

    Shitty programmers who cannot be bothered to learn how relational databases work or seem to be completely oblivious to the fact that they are paid to create systems that not only serve the front end consumer user but also people on the backend business side would advocate NoSQL. If the product/service you are writing has anything to do with money, business users need to have information stored in a relational model that can be easily queried or extracted into a data cube for business analytics. This is why you have data translation layers with data transformation objects (DTOs) in the first place to translate your object model into a relational model and back again.

    If you work for a "for profit" company that deals with customer and sales data in any capacity then you need to have people competent people working who have at least a basic understanding of the relational model and transactions. If you work for one of those companies and are advocating NoSQL for data that the business needs for data mining or processing sales then you should either be reeducated or offered the door because you have forgotten who your actually work for.

    --
    Jesus was a compassionate social conservative who called individuals to sin no more.
    1. Re:Advocacy of NoSQL is a warning sign... by Anonymous Coward · · Score: 0

      IBM and Oracle, among many others, have in-memory data grid products which give provide the benefit of storing data in memory for quick access and also provide a way to store data in a relational database in the background. Put an object in the in-memory data store and at some specified point in the future (X transactions later or X seconds later) it will be loaded into the relational database.

      In most cases the data grid products give much better read/write performance than the database. The data grid acts as a read-through/write-through cache. In order to get the most out of the grid a programmer may need to rethink their object model in order to ensure and preserve locality of reference. From there, data mining can be done as usual on data in the database.

      The tools for data mining from a relational format are mature and work. The same can not be said of tools that do this from a NoSQL format because they don't exist yet. IBM and Oracle, our two largest database vendors, offer data grid products. They seem to believe there is something to the best of both worlds approach.

      I do not work for any company that creates/sells/distributes in-memory data grids. I have only used them in past projects and got fantastic results.

    2. Re:Advocacy of NoSQL is a warning sign... by russellh · · Score: 1

      Yeah that's great when your data fits the relational model.

      --
      must... stay... awake...
    3. Re:Advocacy of NoSQL is a warning sign... by Anonymous Coward · · Score: 0

      If your data doesn't fit "the" relational model, get a better model. Or a better modeler.

    4. Re:Advocacy of NoSQL is a warning sign... by tgv · · Score: 1

      And if your data doesn't fit in a relational database, how are you going to get it into a noSQL one? Writing serialized data in the value field?

    5. Re:Advocacy of NoSQL is a warning sign... by FooBarWidget · · Score: 1

      Or maybe said "shitty" programmer:
      - is writing a for-profit web app for his own company that consists of mostly programmers
      - already knows in advance that the only queries he's ever going to make are those defined by the programmers, and that for his particular use case it's no disaster if newly introduced queries only work over new data
      - already knows in advance that his data size will become several terabytes in several months and thus needs sharding
      - does not want or have the resources to spend several million dollars on expensive Oracle licenses

      Go ahead. Find me an auto-sharding solution for MySQL or PostgreSQL that doesn't involve tons of money. Then I'll change my mind.

    6. Re:Advocacy of NoSQL is a warning sign... by osu-neko · · Score: 1

      So, because there are times when a relational DB is needed, your conclusion is nothing else should exit? Using the right tool for the job is a concept completely lost on you, apparently.

      --
      "Convictions are more dangerous enemies of truth than lies."
    7. Re:Advocacy of NoSQL is a warning sign... by codepunk · · Score: 1

      I know google is all fucked up they should run their search engine on oracle rac.

      NoSql solutions are for extreme transaction rates on cheap or virtual hardware. It has nothing to do with not knowing how a database works. It has everything to do with how I am going to get sub second response with transaction rates in the 100s to thousands per second.

      Not everything or every application fits into your perfect little view of the world.

      --


      Got Code?
    8. Re:Advocacy of NoSQL is a warning sign... by Anonymous Coward · · Score: 0

      Yeah, like the whole Google is a warning sign when they popularized NoSQL. Why can't you just understand that SQL does not fit every purpose?
      BigTable and MapReduce are extremely powerful, as is Pregel, Dremel, Percolator, Neo4J, MongoDB, Voldemort - none based on SQL.

      Even Michael Stonebraker (one of PostgreSQL authors) says that SQL is outdated after publicly denouncing NoSQL for multiple years. Now he's on VoltDB...

      What about reading something about beauty of distributed hashes, consistent hashing, CloudTPS...?

      SQL is relational, which is both its strength and weakness - relational DBs are perfect for writing (denormalized) and lousy for reading (joins, loss of data locality). For specialized tasks you can nowadays achieve ~30x speed-up if you avoid it. And no, SQL != relational algebra, it's far from the purity of the mathematical concept.

      And yes, I implemented parts of XA transaction handling in one of SUN's middleware systems so there is a chance I know what I am talking about.

    9. Re:Advocacy of NoSQL is a warning sign... by Anonymous Coward · · Score: 0

      If you think you need something SQL provides but NoSQL doesn't you are ignorant. You can express relational data efficiently in NoSQL, query is easily and efficiently, and cache it.

      It's just a matter of expressing the logic, and not having it expressed for you in a restrictive way.

    10. Re:Advocacy of NoSQL is a warning sign... by Anonymous Coward · · Score: 0

      I have more data than you, so does Facebook. Try harder.

    11. Re:Advocacy of NoSQL is a warning sign... by aristotle-dude · · Score: 1

      I have more data than you, so does Facebook. Try harder.

      Sorry but I'm not falling for that. I have been working with relational databases for over a decade but I am not about to divulge who I work for.

      --
      Jesus was a compassionate social conservative who called individuals to sin no more.
    12. Re:Advocacy of NoSQL is a warning sign... by Jonner · · Score: 1

      Shitty programmers who cannot be bothered to learn how relational databases work or seem to be completely oblivious to the fact that they are paid to create systems that not only serve the front end consumer user but also people on the backend business side would advocate NoSQL. If the product/service you are writing has anything to do with money, business users need to have information stored in a relational model that can be easily queried or extracted into a data cube for business analytics. This is why you have data translation layers with data transformation objects (DTOs) in the first place to translate your object model into a relational model and back again.

      If you work for a "for profit" company that deals with customer and sales data in any capacity then you need to have people competent people working who have at least a basic understanding of the relational model and transactions. If you work for one of those companies and are advocating NoSQL for data that the business needs for data mining or processing sales then you should either be reeducated or offered the door because you have forgotten who your actually work for.

      It has nothing to do with "for profit" status. I work for a non-profit and work with a relational database all day. Observe how widely SQLite (which always has been a relational, SQL-based DBMS) is used, from Firefox to most smart phones. People who know how to use relational databases know they save a lot of development time which would otherwise have to be spent reinventing many wheels.

      One area that needs work is language design, since SQL is far from ideal. I'm convinced that most of the complaints NoSQL proponents have against traditional RDBMSes have to do with the SQL language and limitations of specific implementations of the same rather limitations of the relational model. Perhaps UnQL will contribute something in that area, but I doubt it, since it looks too similar to SQL.

    13. Re:Advocacy of NoSQL is a warning sign... by Jonner · · Score: 1

      Yeah that's great when your data fits the relational model.

      What's your hypothetical data that can't be represented relationally? I haven't come across anything like that yet.

    14. Re:Advocacy of NoSQL is a warning sign... by russellh · · Score: 1

      Everything involves trade-offs, right? So if the relational model is ideal for all data, then tell me why, after all these years and billions of dollars in research, why do we have a file system and store documents in opaque file formats? I mean everything can be ordered into rows and columns, right? Oh, wait, I know: relational databases can store BLOBs, right? But you said you haven't come across data that can't be represented relationally. Why must BLOBs exist? You can't stop there, you must break them down. We can't just say some things fit the model and others are just big opaque BLOBs. I can only imagine your sorrow at being such an idealist living in this evil mirror world.

      --
      must... stay... awake...
    15. Re:Advocacy of NoSQL is a warning sign... by russellh · · Score: 1

      Who cares? XML documents are trees. Not easy to store in a relational database unless you *also* just store the serialized data. whoop-de-do.

      --
      must... stay... awake...
    16. Re:Advocacy of NoSQL is a warning sign... by tgv · · Score: 1

      I was afraid of such a response. XML documents can be stored in a relational database. Either in a neat structure, with linked tables and such, or just as a BLOB, in case you don't care. And then there is Oracle's XML datatype, which allows you to write queries using XPATH.

      As I wrote in another comment, I love the performance and scalability of NoSQL, but this is really not an argument in favor of them.

  35. Re:Microsoft's backing? by WrongSizeGlass · · Score: 2

    so much for UnQL.

    Microsoft likes this? Is that why UnQL is pronounced uncool?

  36. The Spec by hey · · Score: 1

    http://www.unqlspec.org/display/UnQL/Home
    Wow took a lot of looking around!

    1. Re: The Spec by spacey · · Score: 1

      This is a soft-sell way to get nosql databases into traditional IT situations, where familiarity with SQL will let current support and DBAs say "oh, it's like SQL, but it doesn't have joins. I can do that".

      I always did like the sqlite docs, specifically the diagrams of the state machine for each statement.

      --
      == Just my opinion(s)
    2. Re: The Spec by Jonner · · Score: 1

      This is a soft-sell way to get nosql databases into traditional IT situations, where familiarity with SQL will let current support and DBAs say "oh, it's like SQL, but it doesn't have joins. I can do that".

      I always did like the sqlite docs, specifically the diagrams of the state machine for each statement.

      If the DBAs think it's acceptable to lack joins, perhaps they should look for another job.

  37. NoSQL DB's are a "rehash" (pun intended) of by Anonymous Coward · · Score: 0

    Of ISAM/VSAM DB engines, which also use Hash Tables vs. B-Trees (what Relational DB's use), so your point was what?

    * My take on "NoSQL" DB's is they are a rip-off (or more politely, an "evolution") of ISAM/VSAM stuff IBM was doing ages ago in databases, because of their foundations designs noted above (& largely, the Windows filesystem + registry use a similar concept also iirc).

    APK

    P.S.=> In the end? Well - Everyone's "building & standing on the shoulders of GIANTS before they" (in other words, reaming ideas/stealing, but... making each iteration better than the last one, hopefully)...

    SO, who gains?

    Well, we, the end users (that's ALL OF US, everyone IS A CONSUMER), who are, after all, THE IMPORTANT ONES really!

    (They're/We're the "customers" & consumers of said products, which is every one of us, & who hopefully PAY for the wares keeping an economy moving (this point? Well, it is 1 of the parts I don't like about "Open SORES" really because FREE can harm economic monetary movements between hands IF you *think* about it... but oems/manufacturers like it because, as in the case of routers, it keeps "per unit" co$t$ down, because the underlying OS or DB engine is "FREE" as in beer etc./et al))...

    ... apk

  38. Hmm, I have a better name by Anonymous Coward · · Score: 0

    Nearly Unstructured Map Space Query Language (NUMSQL, pronounced "numb-skull")

  39. Re:More than advertising by b4dc0d3r · · Score: 2

    I have the opposite problem. If a website doesn't work with NoScript enabled, I deem it broken and never return. I don't have AdBlock, they can show me ads, but not like what you're describing.

    I saw an article when I clicked.

    Here's the idea. It's my computer, my processor, and if a website wants me to run something they need to ask permission first.

  40. What about recursive closure? by Anonymous Coward · · Score: 0

    Is that even defined in the "standard" relational algebra?

  41. Not quite true by Anonymous Coward · · Score: 0

    "Relational databases" (I'll assume you mean RDBMSs here) are not about sets, they're about rows. The difference is that duplicates are permitted unless you explicitly forbid them -- this has various consequences. In relational algebra there is no concept of a "duplicate row".

  42. NoSQL SQL .. ARG!!!! by Anonymous Coward · · Score: 0

    I have been trying to figure out what exactly is the difference between relational and NoSQL data models.

    And, I still don't fully (or at all really) understand them. CAN SOMEONE PLEASE EXPLAIN THE DIFFERENCE

    OR at least give me a link to a well thought out explanation with some examples in it?

    Honestly, this all sounds like new coke to me

    But, I also know that I am not getting something

    1. Re:NoSQL SQL .. ARG!!!! by Anonymous Coward · · Score: 0

      NoSQL databases, especially MongoDB, tend to be more web scale.

    2. Re:NoSQL SQL .. ARG!!!! by arglebargle_xiv · · Score: 1

      NoSQL databases, especially MongoDB, tend to be more web scale.

      NoSQL databases, especially MongoDB, tend to be more cromulent.

      There, FTFY.

  43. flamewar, indeed by Anonymous Coward · · Score: 0

    Queue flamewar in 5.. 4.. 3..

    It's cue, you ignorant fuck.

    1. Re:flamewar, indeed by Mitchell314 · · Score: 1

      Technically both are correct, you slobbering idiot. :P

      --
      I read TFA and all I got was this lousy cookie
  44. ^------ THIS by malakai · · Score: 1

    ...THIS...

    RDMS Scale poorly because of poorly trained dev/admins. I've walked into 10s of shops and _laughed_ at their production RDMS. They would throw hardware at a problem that was from the outset simply poorly engineered. in fairness, most of these VLDB systems were built by glorified 'power' users who just kept hacking away at a problem. Bravo to them for making something work, but at some point when your whole business depends on this intern-built multi-TB database, you need to bring in an expert.

    You don't need lots of $$$ to handle VLDB these days. You just need to understand the individual throughput and bottlenecks of the complete solution.

    Also, once you understand and properly implement horizontal partitioning, the number of records in your table really doesn't matter.

  45. Another one? by Anonymous Coward · · Score: 0

    Cassandra has CQL which appears to be farther along. Neo4j has its own query language, as well. This appears to just be CouchDB's variant, which shouldn't be news worthy if they haven't coordinated with their competitors.

  46. Re:This will make nosql stores even *more* Web Sca by adthebad · · Score: 1

    This is funny, nice link :)

  47. Advocacy of SQL and relational model is a warning by rubycodez · · Score: 2

    You must have limited experience, relational model fits only set-based data well. There are plenty of hierarchical data structures for which the relational model is a terrible fit and give abysmal performance for both storage time and queries. I've seen this time and again in my three decades of working with relational databases. A client of mine has been working with medical AI systems for a few years, one early discover was relational model is absolutely an inferior representation for most knowledge base ontologies,

  48. Re:no examples? seriously? by Anonymous Coward · · Score: 0

    This is a faggot imposter. I'm informing the FBI that you have stolen my identity.

    - The Real Michael Kristopeit

  49. Re:More than advertising by Anonymous Coward · · Score: 0

    LOL! you are visiting their website, you are using their computer, their processor, their bandwidth. If you want information from their website, you deal with their terms. If you don't like it, then you are free not to visit. You are also free to whine like a little girl if you like. And I am free to make fun of you.

  50. Invented before? by Anonymous Coward · · Score: 0

    Wasn't this invented before

  51. Querying Objects and NoSQL by Anonymous Coward · · Score: 0

    As someone with 19 years of Object DB experience, I can safely say this idea is stupid. The ignorance of the IT industry never ceases to amaze me. It seems like people have a talent for repeating history and inventing things that already exist. NoSQL as a "movement" is already something of a "wecome to 30+ years ago."

    We tried coming up with a standard query language years ago for various "NoSQL" type databases - graph databases, object databases, etc. Everyone decided it was a dumb idea in the end, and companies could not agree because there are more downsides than up sides. What you end up creating is just another library that may be useful for ordinary cases, but overall is useless. It's also a great way to kill many of the benefits of an object, graph, big table, whatever type NoSQL database. Why? Most good NoSQL databases worth anything have specific query techniques and libraries highly optimized for each. The minute you abstract that to a standard, you break not only performance, but you lose functionality because you are trying to comply with a standard.

    Consider that the whole point of working with many of these databases is often performance and elimination of impedance mismatches such as object-relational mapping. A standard query language only serves to undo the facilities provided by each vendor. Object and graph databases often already have relatively standard query languages - the languages they are written in. Using collections APIs, map reduce, and other functions in languages such as C++, Smalltalk, Lisp, Ruby, Python, C#, and Scala is more than enough for most databases. Indeed consider that the existing language functionality can form the basis of a more complex query API tweaked for particular use cases. For instance, need massive multi-threading - just write your queries using lockless collections, special data structures, or split up the calls in clever ways. You are given full freedom, and vendors often ship implementations good enough for 99% of people anyway.

    One of the other reasons for the status quo is it makes sense that different structures of objects can be optimized by querying with different techniques. Not just on a performance level, but on a framework, maintenance, architectural, and encapsulation level. Flat structures need very different styles of querying than graph structures or deeply nested objects. It is impossible to create a one size fits all query language and is exactly the reason people look for alternatives to SQL.

    I'm sorry, but if it pains you so much to learn a query API for your data store, you are in the wrong business. Just about any product, service, or library has its own set of APIs. This is nothing new and not normally a bad thing. Learn them or don't use them, it's your choice. If you are too dumb to figure it out, too bad. Find a new career. If the documentation is bad, bear with it or find something else. Simple as that assuming you have intelligent managers and developers (but maybe a big assumption these days).

    I am happy that some people are waking up and seeing that SQL is not always the best tool for the job. Sometimes SQL and Relational DBs are great, but I find most of my problems are better dealt with objects or graphs. The one and only issue I've ever had that the current generation of poor reinventions of the wheel is addressing is scalability. More specifically, distributing data across multiple machines has always been doable, but annoying and sometimes challenging. It's just funny that people "solve" some of these problem by then destroying all the other benefits of using such technologies. Worse yet, they enjoy the research and innovations of the past. Sometimes I wonder if anyone has done any real work since Parc.

  52. Re:Advocacy of SQL and relational model is a warni by Anonymous Coward · · Score: 0

    No, I'd say you have no grasp of history. Relational designs are a superset of hierarchichal. Also, if you're having problems with performance then your design & implementation are at fault, not the fundamental data model.

    I have lots of experience with the hierarchical databases common in medical systems. They have all the flaws that the relational model was built to address. In addition they are killer proprietary and wear their 1960's origins on their proverbial sleeves.

    Conversely, I've had lots of experience with those same types of medical systems built on relational constructs. All of a sudden you are back in the modern world, with ODBC drivers, SQL support, access to a broad range of 3rd party toolsets, superior documentation, and so forth. No more arguing with the vendor only to lose every argument because "we (meaning the vendor) don't do it that way". They are not only correct in that assertion, but because they don't acknowledge any outside standards, you cannot effectively bring in any external frame of reference.

  53. Simple redefined by Ice+Station+Zebra · · Score: 1

    select {result: e}
    where {something {something : something}}

    Sorry, but simple it is not.

  54. Re:Advocacy of SQL and relational model is a warni by Anonymous Coward · · Score: 0

    what the hell are you waffling on about?

  55. spec here by skastrik · · Score: 1

    the specification can be found here: http://www.unqlspec.org/display/UnQL/Home

  56. Re:Advocacy of SQL and relational model is a warni by rubycodez · · Score: 1

    No commercial database system fully implements the relational model, because parts are absurd for real world use. The tables of the relational model are a minuscule subset of the possible hierarchies, not the upside down world view you seem to hold, and the relational systems show their limitations in very poor query response against multiple levels of the data structures. The AI systems of which I speak have their recent origin in the late 90s, unlike the fossilized 60s systems (and moreover the ancient 1970s relational model) you mention. You are an advocate because that's all you know.

  57. What gets me about SQL databases by LukeWebber · · Score: 1

    I hate updating data using SQL. The need to have both INSERT and UPDATE statements, with their very different syntaxes, is a considerable drag on my time. I've worked with non-SQL DBMSs in the past, and it can be so very much easier.
    Don't get me wrong, there's a lot I like about SQL, but my ideal database would support SQL for queries, but also provide simpler mechanisms for read by key and create/update/delete operations.

  58. I've Got Experience by Anonymous Coward · · Score: 0

    I have 5-10 years of experience with this new UnQL NoSQL query language. Who will hire me?

  59. Re:Advocacy of SQL and relational model is a warni by Jonner · · Score: 1

    You must have limited experience, relational model fits only set-based data well. There are plenty of hierarchical data structures for which the relational model is a terrible fit and give abysmal performance for both storage time and queries. I've seen this time and again in my three decades of working with relational databases. A client of mine has been working with medical AI systems for a few years, one early discover was relational model is absolutely an inferior representation for most knowledge base ontologies,

    The relational model fits hierarchical data just fine. It's only the awkwardness of SQL that was holding you back or the particular implementation if queries were too slow. Is any of your experience based on a non-SQL relational language?