Guide to NoSQL databases: How they can help users meet big data needs
A comprehensive collection of articles, videos and more, hand-picked by our editors
Data types are divided into many different segments, each with its own nuances. Understanding various schemes is becoming ever more important for IT folks looking to derive as much value out of corporate intellectual property, transactions and other elements that make up the complex data sets in today's businesses possess. SQL and NoSQL are common databases, but can they handle all of your organization's data?
After all, the typical enterprise is awash in data of all types, including structured, semi-structured and unstructured data, archival data, Indexed Sequential Access Method (ISAM) files and non-traditional data, such as video and audio files, logs and social media information, such as tweets. All of that info is difficult to manage and even harder to correlate. What's more, it's all increasing in volume, velocity and variety -- creating even more unrealized value.
But data growth is hitting a tipping point, and what has gotten it there is redefining how data is dealt with. It goes by the ungainly name of big data, swaths of information so large and various they can't be fed into traditional technologies to derive analytical value. That situation has led to new, somewhat experimental technologies designed to deal with the big data conundrum, namely, storage platforms such as Hadoop, and data containers such as NoSQL.
NoSQL vs. SQL: Taming the data beast
So how does one deal with all that data? First we'll need an understanding of the two types of data that database administrators, data analysts and IT managers will have to deal with initially -- SQL and NoSQL -- and how to work with them in a coherent fashion that can normalize access, while providing the opportunity for mining, archiving and accessing.
Most IT professionals are familiar with SQL databases, which come in many flavors. Oracle was a pioneer of SQL and has delivered databases for years that adhere to its principles.
SQL is a programing language that forms the basis of a relational database management system, or RDBMS. With a SQL database, information is highly organized and stored in predefined tables made up of columns and rows, which are formatted to contain specific types of data. SQL databases are relatively easy to work with, but there are theoretical limits on size, and performance can be affected as tables grow.
NoSQL, which stands for "Not only SQL", is the new kid on the block and is optimized to deal with very large data sets. NoSQL dispenses with the organized, RDBMS system of dealing with tables, columns and rows. Ideally, the simpler data model offered by NoSQL translates to speed and access flexibility, which has fueled the argument of whether to use SQL or NoSQL in many enterprises. But that argument proves invalid, as most businesses will wind up using both for specific use cases, and those will be dictated by what they are trying to accomplish with the data.
Equal parts SQL, NoSQL
Database managers will have to get comfortable with both technologies, especially as they move toward big data analytics and advanced business intelligence (BI). Yet there is one question that almost always arises when having the integration conversation: How can two dissimilar technologies work together?
More on Oracle BI data
Learn data warehouse efficiency
See the benefits of business intelligence
How to choose an Oracle database
The answer lies with platform-based technologies. But what types of platforms make it possible?
In the world of Oracle, there are several ways to tackle that thorny integration problem and derive actionable results. Oracle recently unveiled its NoSQL Database 2.0, which offers integration with the distributed file systems used by Apache Hadoop and Oracle SQL databases. A key component of Oracle NoSQL Database 2.0, which is Oracle's big data platform, is designed as a key-value database, which incorporates flexible transaction support, allowing users to manage high-velocity transactional data generated by Web-based applications, social media, sensors, smart meters and communications services.
The key integration aspect comes from creating application programming interfaces that allow Oracle Database users to view and query Oracle NoSQL Database records by using SQL scripts. That functionality is supported by external tables, which allow NoSQL data to be immediately accessible from Oracle's traditional SQL database. So SQL-based Oracle Database becomes a centralized management and retrieval engine for SQL and Oracle NoSQL databases.
That merge allows data to be queried from multiple resources to create fluid data sets that are ideal for analytics and can become the foundation of a big data analytical platform. What Oracle has accomplished with that unified data access is a platform that does not force someone to choose between SQL and NoSQL, but creates an environment where the strengths of both can be used for operational needs, as well as for analytics.