- 15 Non-Certified IT Skills Growing in Demand
- How 19 Tech Titans Target Healthcare
- Twitter Suffering From Growing Pains (and Facebook Comparisons)
- Agile Comes to Data Integration
Network World - For online relationship match-making site eHarmony, pairing up two people to potentially spend the rest of their lives together is no simple task.
The company provides each member an in-depth personality test made up of dozens of questions aimed at determining exactly who someone is and what type of person they would be compatible with. That ends up being a lot of data the company has to manage. But this isn’t just any type of data that fits neatly into rows and columns. Some people want to sort potential matches by only a handful of important characteristics while others want an entire gamut full of categories to be compatible. Members have photos of potential matches to see if they’ve found Mr. or Mrs. Right.
Since being founded in 2000, eHarmony.com has relied on a power open source relational database, PostgresSQL. The centralized server-nature of the SQL system made it difficult to scale the database across a distributed platform though. Something new was needed. After CTO Thad Nguyen explored other SQL options, like MySQL from Oracle, eHarmony turned to NoSQL database MongoDB instead.
[MORE DATA: Big data reaching the peak of its Hype, Gartner says]
While the adoption of NoSQL databases is still in the early stages, some companies like eHarmony are beginning to realize the limitations of their SQL relational databases and are looking to next-generation NoSQL databases for answers. While NoSQL databases are generally regarded as being more easily scalable, lower cost (because many times they run on commodity infrastructure), the major difference between the two is the non-relational nature of NoSQL databases.
“You’re not concerned about keeping data in synch between tables to maintain the relational integrity,” says Nick Heudecker, a Gartner analyst who tracks the NoSQL market. This allows users of NoSQL systems to create different types of database architectures instead of in a relational world, which is based on graphs and tables for data storage.
Over at eHarmony, MongoDB allows Nguyen’s engineers to create new database architectures on the fly, giving users more flexibility to create customized multi-attribute searches, and matching users in a bi-directional basis (meaning both users have attributes that match with one another, as opposed to a system like Netflix in which a user is choosing a movie, but the movie doesn’t care which user watches it).
Using the NoSQL database on its distributed system has vastly increased the speed with which the company can process its data. The company’s entire user set can be searched for matches in 12 hours now, as opposed to it potentially taking weeks beforehand thanks to the sharing and distributed nature of the platform. “We have close to 1 billion potential matches we’re pouring through every day,” Nguyen says, so he needed a database that could keep up and elastically scale to that demand while keeping costs in order. “It provides the scalability we need, with high throughput, built in support for high availability and the ability to support rich and complex queries.”