Getting to Know NoSQL
by John Moore
Database technology may not rank among a developer's most favorite things, but a class of software dubbed NoSQL might rate a look.
NoSQL databases have gained a higher profile in recent months, winning over a broader base of customers and attracting investment. Advocates say NoSQL bests relational database technology when it comes to the task of handling very large datasets, the so-called "Big Data" problem. Beyond scalability, other selling points that could win over programmers include greater flexibility in data models.
The technology is expected to experience high growth. Market Research Media, a San Francisco company that analyzes markets including IT, predicts the worldwide NoSQL market will hit $1.8 billion by 2015. The sector will expand at a compound annual growth rate of 32 percent between 2011 and 2015, according to the firm.
NoSQL software has been largely open-source.
Examples include the Apache Cassandra Project, which Facebook open-sourced in 2008; Apache's CouchDB; and MongoDB. Some software is published in both open-source and commercial versions. That's the case with the Riak database, which is produced by Basho Technologies Inc.
The technology initially took root among social media firms that were struggling with data management issues. But NoSQL's appeal now extends beyond that original customer set. Derrick Harris, structure editor and staff writer at GigaOM, points to traditional media companies, which generate a significant volume of unstructured content, as one example.
Market Research Media, meanwhile, points to other vertical market adopters. The company cites successful attempts to develop NoSQL applications in the biotechnology, defense and image/signal processing fields.
Another endorsement comes from the private equity community, which has placed some recent bets on NoSQL. In September, a group of venture capital firms invested $20 million in 10gen, the company that sponsors MongoDB and offers consulting, training and support services for the database. Earlier this year, Basho closed on a $7.5 million round of equity financing.
Getting Acquainted with NoSQL
So, is it time for developers to pile on?
"It is definitely becoming more mainstream," says Harris, referring to NoSQL. "It's not such a crazy idea that you might need it for something in the near future."
In particular, programmers who work on applications that deal with or generate lots of different unstructured data types might want to start learning NoSQL skills, he adds.
Harris cites two reasons to look at NoSQL:
"One is that unstructured data, by definition, doesn't fit into relational tables, and NoSQL is designed to deal with unstructured data," he says. "The other is that unstructured data piles up fast -- from Web transactions, machine-generated data, etc. -- and NoSQL databases are designed to scale along with that data and maintain fast performance."
Tony Falco, chief operating officer at Basho, says both developers and operations personnel tap Riak for a growing class of highly interactive applications. He says some customers start with Riak from the beginning and scale up. Others begin with a relational database and scale on to NoSQL when they bump into relational technology's restrictions at scale, he adds.
Scalability isn't the only potential draw for developers, however.
Programmers who find relational database schemas overly rigid may find NoSQL more palatable.
Falco says that developers appreciate the ability to start programming, move into production, and later add a new relationship between objects.
"They have the flexibility to change and express dynamically the relationship between any objects and any sort of entity in an application," he says. "A developer no longer has to sweat that they are going to make some sort of decision in the beginning that ultimately limits their applications."
The advantages of NoSQL aside, relational databases won't be disappearing.
"I think there is a maturing in the landscape where it isn't either/or," says Falco. "Our point is that relational models are one way of capturing and expressing the relationships between data, and other models are needed as the Web becomes more interactive and far more distributed."
Market Research Media also suggests the relational database managers will endure.
"Non-relational database is not a replacement but rather a supplement to RDBMS," according to the company's report on the NoSQL market.
The market watcher forecasts "gradual convergence" of those technologies into a hybridized ecosystem and a "takeover of NoSQL technology leaders by established RDBMS vendors."
Market Research Media predicts that the arrival of that converged market to occur around 2015.
Harris says he'll be watching how legacy vendors get into the NoSQL space.
"NoSQL is going to be part of a portfolio in a vendor's product line," says Harris.
- Teaching the World to Code in a Day
- Power Your Apps With GPU Programming
- How Will DevOps Impact Mobile App Development?
- The Future of HTML5 and Where It's Headed
- HTML5 App and Game Development
- Sound Strategy: Leveraging Mobile Speech Recognition
- Harnessing WinRT APIs
- Development Trends: Using Government Data
- The Evolution of APIs
- Why Is Parallel Programming So Hard
- Open Source IDEs: An Update
- Android App Development: Some Devices Just Can't Handle It
- App Developer Competitions: Worth It?
- New Programming Languages to Watch
- Is Ruby on Rails a Crown Jewel?
- Getting to Know NoSQL
Article: Copyright © 2017 Studio One Networks. All rights reserved