In this and other spaces I have written and talked about NonStop SQL/MX Database Services (DBS) on a regular basis. I described a web-based user interface and how it makes it easy to set up and use a NonStop SQL/MX database with just a few clicks in a few minutes. Selected customers and partners had a firsthand experience, and it has been demonstrated at customer events in Europe. However, until now, shipping the user interface was not automatically done by HPE. This was due to some additional components, such as a separate Python-Django webserver that was used. With the upcoming release 3.9 of SQL/MX, I am happy to see that the user interface software will now be shipped to all NonStop SQL/MX customers.
Featuring NSHTTP server and NSMF 2.0
The NonStop HTTP server will now provide the user interface and will use version 2.0 of the NonStop Manageability Framework (NSMF). NSMF 2.0 provides a REST interface to the SQL/MX DBS APIs which is an enhancement over the version we used in the Proof of Concept. The look and feel of the interface are the same as what we demonstrated before and the latest recordings on YouTube. (See https://www.youtube.com/channel/UCPFo-_xTLaYPVXiHDOrgAlg ).
Database isolation through MXCS functionality
SQL/MX DBS is an extension of SQL/MX that allows you to create a multi-tenant database that provides the same SQL function as the core product, with extras features.
Using an enhanced version of SQL/MX Connectivity Service (MXCS), it introduces the concept of a NonStop SQL database, which comprises one or more dedicated volumes for database data, registered in one SQL/MX catalog and accessed through its own MXCS data source. A database owner defines their own users who have access to the database data via the dedicated data source. Only users that are registered to a DBS database can access data via its data source.
This setup provides database isolation, where users of one database cannot see, let alone access other user’s data. For example, in regular MXCS, everyone with a valid NonStop user ID can connect to any data source and will have access to the data based on SQL/MX or Guardian access privileges. In SQL/MX DBS, only assigned users may connect to the data source.
Figure 1 provides an overview of how database isolation is implemented by SQL/MX DBS using the MXCS Subsystem. This figure was taken from the Overview section of the NonStop SQL/MX Database Services manual, which can be found on the HPE Support Center. This section provides a good overview of the environment and architecture of SQL/MX DBS.
Self-service via web user interface
The user interface of SQL/MX DBS also provides more user self-service, freeing up system administrator time for other tasks. Once the database and its environment have been created, the database owner has control over the database and who can access the data as well as relevant data source configuration from a single web user interface. Because a database contains best-practice default settings, only minimal configuration adjustments, if any, will be needed.
SQL/MX DBS Databases can be accessed solely via their data sources, and the typical client applications will run on other platforms, such as Windows, Linux or containerized applications using JDBC or ODBC application interfaces. However, applications that run on NonStop using these APIs are also supported.
With applications accessing via ODBC and JDBC and database management performed using HTTPS and REST, SQL/MX DBS does not require NonStop specific knowledge to develop applications for it. Of course, it helps that a developer knows a bit of the NonStop parallel architecture to understand how database execution happens.
Kick-start developers with hybrid installation
A hybrid setup for development systems may be particularly useful for customers who want to kickstart their developers on using SQL/MX. Database developers don’t need access to NonStop resources (TACL or OSS shell) and they will not require introduction training to the platform. Moreover, there is no need to provide them with Guardian user IDs and aliases, to set up an environment for them and to clean up after they are done. All it takes is setting up a few volumes, for example, using partitioned disks for development databases. These disks are then reserved by the Safeguard product for use by SQL/MX DBS, while on-platform SQL/MX and other development projects can still use other volumes on the system.
Single-port version of database connections
Another highlight of SQL/MX 3.9 that I would like to mention in this article is an updated version of the MXCS software that is also available for non-DBS use. As a result of a customer proof of concept this version of MXCS implements single-port access to all instances of mxosrvr processes that serve the database connections. This MXCS version can run side-by-side to the current implementation that requires a port for every active connection.
The significance of the updated version compared to the older one is enhanced security. Cyber-security teams do not like to open many ports in their firewall for database access use. With this version, a firewall that protects a NonStop system only needs to open one port for all database clients. Cloud providers who use port mapping to back-end server ports made it even impossible to set up MXCS on their standard infrastructure. A problem that no longer exists with the new MXCS.
Ease of Use, a Tandem Fundamental revisited
In this year where we celebrate 50 years of NonStop, I am celebrating 35 years of my involvement with the platform in many ways. I remember the Tandem Fundamentals: Fault Tolerance, Scalability, Availability, and Data Integrity. I remember that I learned “Ease of Use” was a fundamental as well. SQL/MX with DBS and its new web-based user interface makes it easier to manage and to access a fault-tolerant database.
Be the first to comment