Relational databases have been popular for more than 40 years, in the process has become a standard SQL relational database operations. SQL data storage will be packaging and abstraction, so that developers can focus on application logic. Simplify work for developers and SQL relational databases and even popular.
Community development, data changes. Data from social networks, scientific research, networking and other data sources is no longer confined to a fixed structure, and therefore good for these data structures relational database data would be difficult to deal with.
Relational database preferably has a fixed schema, which also makes it difficult to meet the agility and fast iterative modern business requirements. Dynamic schema requires us to rethink not only the data model and the database, we also need a new query language to read the data.
Let's look at the data model. With the popular '90s GUI applications and Web applications, the majority of business application programs use the object-oriented development model. For Web applications, JSON is a standard data exchange between objects, servers and applications is one JSON file. About two thousand became popular NoSQL databases, NoSQL databases purpose is to facilitate the storage and management JSON files.
JSON database developer popular favorite because of its representation of data and other object-oriented programming languages such as Java, C ++ ,. NET, Python and Ruby are the same and can be flexible schema. However, developers of database files has always been the lack of easy to use query language.
Lack of document database query language enables developers caught in a dilemma: either to enjoy JSON flexible data model either enjoy SQL relational database but the two can not have both.
N1QL (pronounced "ni knock") is a document introduced goalkeeper SQL database query language. Put a little technical, JSON is not consistent with the first paradigm of the data model and the data model N1QL then this operation. N1QL traditional SQL operations on tables and rows expand to JSON (nested file).
The SQL introducing JSON bit like car oil to electricity, although the engine change but the driver mode of operation remains unchanged. Now developers can either use the familiar SQL schema to operate and can be dynamically expanded applications.
Benefits Extended SQL rather than a complete re-creation of a classic language is SQL keywords operators set sorting and other functions can be multiplexed. This greatly reduces the developers N1QL threshold.
But the model of relational databases and database files is always different, so N1QL there are some new things. For example, the introduction of NEST and UNNEST N1QL keyword set or decompose nested object, IS NULL and IS MISSING to handle dynamic schema and ARRAY function to traverse or filter array element.
Powerful flexibility and new data model developers familiar query language combination for the next generation more flexible and powerful application development has laid a good foundation. Developers enjoy by beating Nicole files database now!