Databases make an essential part in the online operations for enterprises. Depending upon the type of data that is required to be managed by enterprises, one has to choose among the different types of databases. Whether to use a SQL database or a NoSQL database completely depends upon the data that has to be stored, but sometimes there is a curious case of needing both the types of database simultaneously for the enterprise data management.
Well, in that case, MySQL Document Store comes to your rescue. This clearly optimizes your database resource use and cost by letting you enjoy both SQL and NoSQL database under a single Database Management System. MySQL Document Store enables you to work with SQL Relational Tables at the same time you can also work with schema-less JSON collections.
With MySQL Document Store you can use both the kinds of data without the need of having a separate NoSQL document database management system. This entitles you to avail maximum flexibility where you are free to mix and match relational data and JSON documents within the same application by using a single database. You can query the data models in the same application and fetch the results in the form of JSON or table formats.
MySQL Document Store does all of this using its X Dev API that focuses on CRUD (Create, Read, Update and Delete). It provides you with a fluent API where you can work with JSON formats seamlessly. It is the X protocol that is highly extensible and optimized for both CRUD as well as SQL API operations letting you get the best of both the worlds together on a single platform.
Architecture of MySQL Document Store
Let us understand how MySQL Document Store is capable of doing all this by shedding some light on its architecture and getting an insight into its components.MySQL Document Store consists of the following components:
- Native JSON Document Storage
With a native JSON data type storage in binary, MySQL also provides the ability to create virtual columns. These columns can be indexed. JSON documents in a MySQL Document Store can be automatically validated.
- X Plugin
MySQL Document Store has X Plugin that enables it to use X Protocol. It uses Connectors and the Shell to act as clients to the server.
- X Protocol
It is a new client protocol that is based on the Protobuf library. The X Protocol works for both CRUD and SQL that makes it the foundationl for the dual operations.
- X DevAPI
On top of the X Protocol, it is X DevAPI, which is a modern, new async developer API meant for the CRUD and SQL operations. The X DevAPI introduces the Collections as new Schema objects. The documents are stored in the Collections which have their dedicated CRUD operation set.
- MySQL Shell
- MySQL Connectors
Here are the MySQL Connectors that support X Protocol and allows you to use X DevAPI in the language you choose:
- MySQL Connector/Node.js
- MySQL Connector/PHP
- MySQL Connector/Python
- MySQL Connector/J
- MySQL Connector/NET
- MySQL Connector/C++
The Next Step
Apart from the flexibility and the optimization which the MySQL Document Store offers you, some of the other benefits of using MySQL Document Store are its high reliability, compliance, high availability, online hot backup, security, ease of use, reports, and analytics.
Given the extensive benefits that the MySQL Document Store has to offer you, it is very important that the Database Administrator uses it in the best possible manner for the optimization.
Having a diligent DBA for your enterprise database would help you in many ways to ensure the high performance of your database. As a result, your online operations will be much more efficient than ever.
If you are looking forward to improving your enterprise database by hiring a diligent professional DBA who specializes in optimization, then maybe I could help you with this.
Being a DBA professional with an industry experience of over a decade, I would be obliged to help you in the optimization of your enterprise database.
Get in touch to find the best optimization solutions for your enterprise database.
Database PerformanceTechnical Blog Writer - I love Data