Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
Oracle IT

First Look: Oracle NoSQL Database 117

snydeq writes "InfoWorld's Peter Wayner takes a first look at Oracle NoSQL Database, the company's take on the distributed key-value data store for the enterprise. 'There are dozens of small ways in which the tool is more thorough and sophisticated than the simpler NoSQL projects. You get a number of different options for increasing the durability in the face of a node crash or trading that durability for speed,' Wayner writes. 'Oracle NoSQL might not offer the heady fun and "just build it" experimentation of many of the pure open source NoSQL projects, but that's not really its role. Oracle borrowed the best ideas from these groups and built something that will deliver good performance to the sweet spot of the enterprise market.'"
This discussion has been archived. No new comments can be posted.

First Look: Oracle NoSQL Database

Comments Filter:
  • by Anonymous Coward

    3 minutes and no comments :)

  • Oracle = pain (Score:5, Insightful)

    by Anonymous Coward on Wednesday November 16, 2011 @04:59PM (#38078040)

    Oracle NoSQL might not offer the heady fun and "just build it" experimentation of many of the pure open source NoSQL projects

    Oracle databases aren’t about fun, they are about pain. Severe pain. The kind of pain where you scream so loud in your mind at night that it wakes you up. Pain which you only endure if you need the power they offer over all the much more palatable alternatives available, or need support and/or the perception of not using “some freeware database” in the case of large bureaucratic enterprise.

    All that said, this actually sounds like a good idea, and from what the article describes, it sounds like a good product. It will of course be painful to use, but I can see this catching on in the “serious performance/reliability” and “large enterprise with compulsive need to spend” groups, especially as NoSQL becomes a buzzword.

    • Re: (Score:3, Informative)

      by CmdrPony ( 2505686 )
      No, Oracle databases are about performance and features that other database solutions don't offer. They have always been. "There are dozens of small ways in which the tool is more thorough and sophisticated than the simpler NoSQL projects." not only holds true for this Oracle product, it's true for all their products. Yes, they cost a lot, but also offer things anyone else don't. Your website project will probably be ok with MySQL, but enterprises have different needs.
      • Re:Oracle = pain (Score:5, Insightful)

        by Anonymous Coward on Wednesday November 16, 2011 @05:05PM (#38078154)

        > but enterprises have different needs

        Yes, like PostgreSQL

        • Exactly
        • by jedidiah ( 1196 )

          That's less like Enterprise and more like Galileo.

        • by amon ( 24507 )

          Nope. Postgres still requires that the developer and DBA actually talk to each other every once in a while, whereas Oracle does not. That's its primary value.

          • You haven't used Oracle RAC & ASM then haven't you?
          • Re: (Score:2, Informative)

            by Anonymous Coward

            Yeah, I'm not sure where you get that idea from about dbas and devs not being required to communicate... That's way off...

            What kind of world do you think you're living in?

          • Re:Oracle = pain (Score:4, Informative)

            by durdur ( 252098 ) on Wednesday November 16, 2011 @09:31PM (#38081364)

            Oracle is not "plug and play" for developers, far from it. But it is true that recent versions do a lot of auto-tuning, and you can get reasonable performance with not a lot of work (but that assumes you don't have a truly dumb design, and really high performance requires a DBA, for sure). Oracle's superior locking model also in my experience produces less developer pain that many of the alternatives.

            • Oracle's superior locking model also in my experience produces less developer pain that many of the alternatives.

              What is Oracle's superior locking model?

              • Re: (Score:2, Funny)

                by Anonymous Coward

                Vendor lock-in(g) :)

              • Re:Oracle = pain (Score:4, Insightful)

                by durdur ( 252098 ) on Thursday November 17, 2011 @10:44AM (#38085388)

                What is Oracle's superior locking model?

                Oracle uses row-level locks only, and unlike for example MS-SQL or Sybase, will never escalate lock scope to the block or table level. It does not have any limit on the number of rows that can be locked during a transaction.

                If you have a mostly-read application this may not matter, but it matters a lot if you have a high update frequency from multiple clients.

                You can try to relax the transaction isolation level in MS-SQL to get greater update performance but that does not then provide the same degree of isolation as Oracle.

                • Thanks. It would appear, then, that most other DB's, especially, I'm guessing, DB's like MySQL and Postgresql use page level locking, I'm guessing.

                  • by durdur ( 252098 )

                    For mySQL, it depends on the storage engine you are using. Postgres has row-level locks I believe but there are still some subtle differences in how Oracle does it.

          • Re:Oracle = pain (Score:4, Insightful)

            by Just Some Guy ( 3352 ) <kirk+slashdot@strauser.com> on Wednesday November 16, 2011 @11:00PM (#38081944) Homepage Journal

            Postgres still requires that the developer and DBA actually talk to each other every once in a while, whereas Oracle does not.

            s/requires/allows/, because as far as I can tell Oracle legally obligates the two parties to communicate through layers of upper management before the DBA can so much as add an index the developer needs.

          • by mangu ( 126918 )

            Postgres still requires that the developer and DBA actually talk to each other every once in a while, whereas Oracle does not.

            Oracle requires that the developer and DBA actually talk to each other all of the time. It's not like Postgres.

          • Nope. Postgres still requires that the developer and DBA actually talk to each other every once in a while, whereas Oracle does not.

            ROTFL. That has to be some kind of joke.

        • > but enterprises have different needs

          Yes, like PostgreSQL

          Thank you! My thoughts exactly.

      • Re:Oracle = pain (Score:5, Interesting)

        by Tablizer ( 95088 ) on Wednesday November 16, 2011 @05:10PM (#38078246) Journal

        The problem is that PHB's buy Oracle thinking because it's "top of the line" it will just be great out of the box. Instead, it requires skillful tuning and fiddling to use effectively, but the PHB's don't want to pay for that aspect.

        It's almost like giving a Stradivarius violin to your neighbor's newbie kid and thinking that "because it's a Strad, it will make the kid sound good."

        • Exactly, the boss doesn't pay $10/hr an hour for the CS grad who can't find a job elsewhere to tune it to handle 10 petabytes by the end of the business day for nothing.

        • It's almost like giving a Stradivarius violin to your neighbor's newbie kid and thinking that "because it's a Strad, it will make the kid sound good."

          I like how you describe this... it makes perfect sense in a way that even a PHB can understand. But can I get that in a car analogy?

      • Oh hi Larry, how do you like it here?

      • Re:Oracle = pain (Score:5, Interesting)

        by Anonymous Coward on Wednesday November 16, 2011 @06:15PM (#38079198)

        In what world do you live? Oracle DB is the only great product they have, the rest is complete and utter crap, and they don't even know how to maintain them. We've been trying for months now to get someone from Oracle to explain us why our OSB does not work as it should, and even the guy from engineering that they shipped over half the world was just as clueless as we are.Siebel has been going downhill ever since they purchased it. BRM has never worked in a large deployment. Fusion is still just a dream that doesn't really work, the list goes on...

        And you know what, it's because all the good engineers don't want to work at Oracle. Over the course of my current project, we've had three different consultants, the first two quit because they said the atmosphere is just awful and noone has a clue what's going on. And they are trying hard to hide that they have people leaving the company in droves, leaving people with very little experience maintaining software that they have no clue about.

        • by Anonymous Coward

          That doesn't match the Oracle that i work at.

        • In what world do you live? Oracle DB is the only great product they have, the rest is complete and utter crap, and they don't even know how to maintain them.

          Disclaimer: I work at Oracle. Your description does not match my experience.

          We've been trying for months now to get someone from Oracle to explain us why our OSB does not work as it should, and even the guy from engineering that they shipped over half the world was just as clueless as we are.

          I and my team use OSB every day (about 80/20 to Netbackup) to

      • Re:Oracle = pain (Score:5, Interesting)

        by sqldr ( 838964 ) on Wednesday November 16, 2011 @06:35PM (#38079412)

        They are also about selling training course. The syntax for half of the commands is appalling. RMAN for example with its "copy control file from path1 to path2 whilst patting your head and then write home to your gran" attempt at plain english language is far too obtuse for what it actually does, which isn't much. It copies a control file and then does autobackup. Wow. Didn't need a paragraph of shakespeare.

        It's the same throughout. Then they can't even install the software without running a massive java app (I really don't want to go into too much detail about how much time it took to automate Oracle installs...)

        And before you ask - we're running the 6th busiest Oracle database in Europe - according to Oracle themselves - running across 4*128 SSD drive arrays at a cost of millions.. and for the 3 or 4 features we need to justify the licenses instead or designing our way out of the same problem, at times I really wonder about the hassle, especially when our data is so important and locked up into such a bloated closed up mess.

        • Re:Oracle = pain (Score:5, Insightful)

          by hey hey hey ( 659173 ) on Wednesday November 16, 2011 @07:57PM (#38080412)

          And before you ask - we're running the 6th busiest Oracle database in Europe - according to Oracle themselves - running across 4*128 SSD drive arrays at a cost of millions.. and for the 3 or 4 features we need to justify the licenses instead or designing our way out of the same problem, at times I really wonder about the hassle, especially when our data is so important and locked up into such a bloated closed up mess.

          You might think such things as a fun fantasy, but you would be insane to actually do it. When it (say) turns out your home grown solution corrupts records spanning odd page boundaries, you will be quite sad as you and the one other guy who has a clue how your "clever hack" functions gets to work 24hour days trying to debug the problem, determine the extent of the damage, and try and figure out a solution. It is times like that when having thousands of consultants, and a major corporation with teams of dedicated programmers ready to jump on your problem (for a price, certainly for a price) is the only sane option. If you are really as big as you say, your data is WAY to valuable.

          I may not be fond of Oracle either as a corporation or as a product, but there are reasons it rules in the enterprise DB niche.

          • There is more than one way to skin a cat - a sad truth for cats the world over. Postgres combined with commodity hardware and database joining extensions like dblink allow you to partition data across dozens (or hundreds) of commodity servers, allowing you to provide massively parallel access to massively large datasets without compromising performance. The cost is developer competence.

            The trick is to have a decent abstraction layer and technologies that commoditize cross-database querying, something my com

            • Postgres combined with commodity hardware and database joining extensions like dblink allow you to partition data across dozens (or hundreds) of commodity servers, allowing you to provide massively parallel access to massively large datasets without compromising performance. The cost is developer competence.

              You nailed it. Postgres is a superb product, and a stellar example of open-source done right. Incredibly flexible, incredibly tough, easy to use for a newbie yet powerful enough for an expert, and an al

    • Re:Oracle = pain (Score:5, Insightful)

      by rrohbeck ( 944847 ) on Wednesday November 16, 2011 @05:45PM (#38078796)

      Most of all they're about lock-in => $$$ => Larry's yachts.

  • Press releases (Score:4, Insightful)

    by nyctopterus ( 717502 ) on Wednesday November 16, 2011 @05:04PM (#38078130) Homepage

    I know that a lot of submissions are inevitably going to be based on press releases (it's straight from the horses mouth so to speak), but do they have to be so blatantly biased? Could we have some sort of editorial? The last sentence of this post make me want to vomit.

    • by rrohbeck ( 944847 ) on Wednesday November 16, 2011 @05:47PM (#38078814)

      It could be worse - it could be an article about Agile.

    • by iceaxe ( 18903 )

      I found the article to be offensively biased, loaded with null-value emotionally charged language, and generally uninformative other than the couple of sentences that tried hard not to say "Oracle bought SleepyCat and re-wrote BerkelyDB with added features to avoid that whole open-source thing".

      Like the many other "NoSQL" products the author maligned and slandered, Oracle's new product may be great for the purposes it's intended for. The writer of the article is not.

  • Google Patents? (Score:4, Interesting)

    by bill_mcgonigle ( 4333 ) * on Wednesday November 16, 2011 @05:08PM (#38078198) Homepage Journal

    Anybody know how broad Google's map/reduce patents are?

    It's been said that the whole reason Oracle bought Sun was to clobber Google with the Java patents so they could cross-license the map/reduce patents and get back to an Oracle database that could scale.

    Regardless, corporations should just release their software and fight it out in court later (sorry, real people, you can't play) but now that this is out, things might get more interesting in the patent wars.

    • Comment removed based on user account deletion
    • by curmudgeon99 ( 1040054 ) on Wednesday November 16, 2011 @08:25PM (#38080742)
      I cannot understand why MapReduce has been turned into such a holy creation. The idea could not be simpler: you have a big dataset? Break it apart into pieces that are free of external dependencies, process the pieces in parallel and then aggregate the matches from the processed pieces.
      This is not Hadoop, with its elaborate application plumbing or CouchDB with its curious use of MapReduce as part of its querying system.
      MapReduce is too simple for all acclaim. It's too obvious.
    • It's been said that the whole reason Oracle bought Sun was to clobber Google with the Java patents so they could cross-license the map/reduce patents and get back to an Oracle database that could scale.

      Sure it's been said. By those who don't know what they're talking about.

      Patent licensing -- in my opinion -- would be somewhere very near the bottom of any reason for acquiring Sun. It was, plainly put, a great deal at a great time, and some huge innovations have already come out of it. Just a few:

      * Exadata

  • Obligatory (Score:5, Funny)

    by acjacinto ( 1170951 ) on Wednesday November 16, 2011 @05:09PM (#38078218)
    We're looking for Oracle NoSQL DBAs with 10 years of experience --recruiter
    • by Tablizer ( 95088 )

      Just your lucky day! I happen to have experience in NoTruth.

    • by Anonymous Coward

      I'm your man. I have 15 years of Oracle experience with no SQL (I'm still trying to configure this f***ing DB and haven't been able to run a single request yet)

    • Pffft. I got 15 years of Oracle NoSQL, even 12 years of interfacing it with HTML5.

    • Re: (Score:2, Funny)

      by Anonymous Coward

      Perfect; I myself have no SQL experience, neither with Oracle's products or anyone else's.

    • I have 10 years experience with NoSQL Oracle DBMs as well as 7 years of HTML 5 experience with IE 6

    • by Detaer ( 562863 )
      I actually know a guy who wrote a nosql distributed datastore 10 years ago.
    • by Rolman ( 120909 )

      That's why you write your résumé like this. [typepad.com]

  • by SmurfButcher Bob ( 313810 ) on Wednesday November 16, 2011 @05:10PM (#38078248) Journal

    So Sayeth Litchfield:
    http://seclists.org/bugtraq/2005/Oct/56 [seclists.org]

    'nuff said

    • by ADRA ( 37398 )

      Is there anything more recent than 6 years ago to look at? Most NoSQL DB's haven't even existed that long, so I fail to see the correlation. To assume that a bad (or good) support and maintenance never changes quality is ridiculous. How are their products that I'm actually buying today?

  • How does this differ to the key-value Berkeley DB key-value store which is around 10 years old, free software, widely used and tested, full ACID compliance AND it's owned by Oracle.

    • by Anrego ( 830717 ) *

      At a minimum it probably costs a lot more.

      Also maybe it was the subversion side and not the Berkeley DB side, but from my experience using Berkeley DB with subversion, I don't think I'd want to use it for anything else.

    • by Korin43 ( 881732 )

      BerkeleyDB is an embedded database (doesn't run as a server on your network unless you write your own server for it), and it's not particularly fast.

    • Re:Berkeley DB (Score:5, Informative)

      by Dr_Barnowl ( 709838 ) on Wednesday November 16, 2011 @06:28PM (#38079336)

      BDB is an in-process key-value store. It's limited to being accessed by a single process, and has much more limited replication ability.

      This is a server based product ; your client communicates with servers using a driver. It's "eventually consistent", meaning that changes take time to propagate across the replication axis, so not all clients see the same picture (although with this one, you can influence the ACID-ity of atoms of data by grouping them on "major" keys).

      The advantage is mostly scalability. You can throw more servers at it to provide more capacity, and the software will do a lot of the work to ensure that this works. If you want more capacity on BDB, you need to throw a bigger chunk of iron at it.

      The other major difference ; the open-source license (Sleepycat [wikipedia.org]) for BerkeleyDB is copyleft. Despite the name, it's not released under a Berkely Software Distribution style license - Oracle dual license it and you have to pay a commercial license fee to distribute products based on it without releasing your own sources.

      The Community Editor license file for Oracle NoSQL from the distribution lists a number of licenses, all of them BSD-style - new BSD and Apache 2.0 ; in certain quarters this will be greeted with a great deal more enthusiasm. The only difference between the Community and paid editions is the support.

    • by fatp ( 1171151 )
      Actually this is a repackaged Berkeley DB Java Edition. See http://www.oracle.com/technetwork/database/nosqldb/learnmore/nosql-database-498041.pdf [oracle.com]
  • by Anonymous Coward

    Is it just me or does this article present a false dichotomy? I enjoy using NoSQL, but I'm not running out and replacing every SQL db with Mongo. NoSQL is just another tool available to me, and I leverage it when it makes sense.

  • Comment removed based on user account deletion
  • There's these nosql things. I am not familiar with them at all. They seem nifty - some of you are way smarter than me, maybe you can correct me. It's like a giant bag with stuff in it, and there are keys tied to all of them hanging out the top of the bag. You just yank on the key and get your thing out. It's massively parallel and redundant, so maybe given enough leeway that bag can span continents, and we can each grab a key marked "file1.blah" and get it reasonably fast. It's got nothing to do with

  • "Oracle stole the intellectual property from these groups"
  • sounds like they ripped off my "write-only" algorithms from college. no SQL, indeed,.

  • Practically ACID (Score:5, Interesting)

    by mandelbr0t ( 1015855 ) on Wednesday November 16, 2011 @06:34PM (#38079402) Journal

    The serious part of Oracle NoSQL is a practical approximation of ACID compliance, the standard that SQL databases like to offer.

    If this claim holds up, then its easy to see where Oracle could come out ahead of other NoSQL databases. TFA mentions that this practical approximation is dealt with by arranging the cluster machines in two axes: the replication axis and the sharding axis. Along the sharding axis, each major key is guaranteed to be tied to a single machine. Since there is only one record to be updated, there is no "eventual consistency" problem. The replication axis is responsible for making multiple copies of that data. If full ACID compliance is desired, even along the replication axis, there are plenty of options for ensuring that the write is complete before calling the transaction complete: the master node is updated, a majority of replicated nodes are updated, or all replicated nodes are updated.

    This approach seems to take the best of both worlds in the NoSQL arena: sharding, which is the approach used by MySQL cluster, and replication, as used by pretty much every other NoSQL store available. Of course, if you have a fuck-ton of data, you'll also need a fuck-ton of machines. This is not a server you will be testing without considerable resources at your disposal.

    • No sharding solution can guarantee consistency in the event of node failures, unless you completely block writes or reads until the nodes are back up. It's great that they bind a key to a particular server, but I can think of several other NoSQL solutions which do the same thing. Basically everything that uses hashrings and do lookups based on that. Oracle NoSQL is hardly unique in that respect.

  • If I understand NoSQL correctly it looks to me like they just reinvented the Lotus Notes database concept.
    • I think the guy that wrote CouchDB was a Notes developer.

    • by mini me ( 132455 )

      CouchDB, yes. It took a lot of its design ideas from Lotus Notes.

      NoSQL databases in general, however, follow all different kinds of paradigms and designs. You can't make any blanket statements about them because they all were born out of the need to solve completely different problems.

    • Yes. Yes.

      And my 10 wasted years as a Notes admin trying to fix the !@#!@ that a PHB made us do in Notes instead of a relational database really makes me very wary of this whole noSQL boom.

      NoSQL Databases are definitely good for some things (as is Notes) but it is certainly no Nirvana. There is a reason relational databases were invented in the first place: a schema forces you to be consistent with your design which helps with large projects. In Notes and noSQL things very quickly become a tangled mess, and

      • by kbg ( 241421 )
        Yes Lotus Notes shines for some concepts like document work flows, for example it is possible to create a generic work flow application and add work flow to any other Lotus Notes application with a one line include. Imagine trying to add a generic work flow application to some random SQL database table, it would be a major problem. However for large databases, speed, data integrity and transactions then Lotus Notes doesn't fair well in comparison.
  • 'Oracle NoSQL might not offer the heady fun and "just build it" experimentation of many of the pure open source NoSQL projects, but that's not really its role.

    Restated: Oracle started a new project from scratch, but still managed to make the code look like it had been maintained by a megacorporation for a decade, like other long-term Oracle and Sun projects?

    • by ADRA ( 37398 )

      How about: "Not suitable for High-school kids looking to write their first database application"
      or
      "Not for mere morons"
      or
      "Not suitable for enthusiasts"

      It seems like of silly. For playing around with K/V based systems, on the low end, you can throw something together with bubblegum and gumption without much concern about reliability, concurrency, or scaling. If you are a large project with a non-trivial set of requirements, the learning curve on a solution should be far less important than the effective outp

  • by Anonymous Coward

    "Oracle borrowed the best ideas from these groups and built something that will deliver good performance"

    REALLY?

    Now others' ideas can be borrowed in the clusterfuck of regulated UNnovation that the USA is? Great news!

    Don't get me wrong, I'm 100% behind Oracle in this thing of Borrowing Ideas, I think that's the only way to unstuck innovation, but I'm a little bit skeptical about Oracle playing nice if someone borrows their ideas.

  • The person who wrote this article was an idiot. First of all, it describes several brilliant innovations Oracle brought to the table:

    It's a key-value store I guess they have to steal that idea to join the category.
    Consistency can be throttled so that a write does not complete until it has gone to one, a quorum or all replication nodes. Duh! For years that has been a feature on nearly every incumbent NoSQL DB such as CouchDB, MongoDB, Cassandra, and others.
    It allows you to attach a version number to an

  • Does it do sharding? Is it WebScale?

    http://www.youtube.com/watch?v=b2F-DItXtZs [youtube.com]

  • Oracle borrowed the best ideas from these groups and built something that will deliver good performance to the sweet spot of the enterprise market.

    Whew, thankfully there's no such thing as software patents, which means we can have actual innovation and improvements... oh.. wait, software patents exist in this timeline.. damnit!

Two can Live as Cheaply as One for Half as Long. -- Howard Kandel

Working...