2021. What an interesting year. With the world turned upside down by a pandemic that seemingly had its sights set on...
A new look for NonStop SQL/MX DBS
Frans Jongma, Hewlett Packard Enterprise Advanced Technology Center, NonStop Enterprise Division
NonStop SQL/MX DBS is a solution that provides a multi-tenant database environment where the databases and users are isolated from each other while still sharing common resources such as compute power, storage, and network capacity. However, while the databases share the storage, each database uses dedicated devices which prevents them from encountering bottlenecks such as database cache and lock-space. Cache and lock space are part of the NonStop SQL Data Access Managers which are dedicated to only one database and not shared with others.
Databases can be used by anyone who has permission to use the resources. Initial permissions are granted by a system administrator who, upon a request from an end-user, will create the environment on behalf of this user. The end-user will then be one of the tenants of the multi-tenant SQL/MX DBS environment that hosts multiple databases, be the owner of the database and will be able to add other users to this database and give them permissions as needed, without further involvement of the system administrator. In a SQL/MX DBS environment, the tenants will only access the database using the JDBC and ODBC SQL interfaces or perform actions using the WebDBS user interface. These users do not have access to the NonStop system shell.
The WebDBS user interface is the “New Look for NonStop SQL/MX DBS”. It replaces the demonstration software that has been used in webinars, tradeshows, and YouTube videos to show the possibilities of Database Services for NonStop SQL/MX, aka SQL/MX DBS.
Using ServiceNow or standalone?
ServiceNow (www.servicenow.com), is a company that provides a cloud computing platform that helps companies manage digital workflows. SQL/MX DBS can be integrated with ServiceNow using a set of Ansible plugins.
Database creation by the system administrator is fully automated when ServiceNow is used. ServiceNow uses workflows that ultimately execute a job that creates a SQL/MX DBS database using a system administrator role. In the context of ServiceNow, the system administrator is just the account that acts as an approver in the workflow.
However, database lifecycle actions can be performed also in WebDBS, where the system administrator, as well as the tenants, can perform NonStop system-related tasks, some of which are also possible from the ServiceNow interface.
In the 1.0 release of WebDBS, system management functions, such as deployment and removal of databases were only possible through ServiceNow workflows. WebDBS release 1.1 provides complete administrator functionality. This allows customers to manage the database lifecycle without requiring ServiceNow.
The software will adjust the actions allowed in WebDBS depending on the presence of ServiceNow: if active, WebDBS will not provide actions that are already performed via ServiceNow workflows, since these actions might interfere with those managed by these workflows.
Creating databases with WebDBS 1.1
In a multi-tenant environment, there must be some authority that is responsible for managing the systems and -if applicable- for making sure that some user control is in place. Often, tenants are charged for their usage in some form, and therefore SQL/MX DBS delegates the provisioning or create of the environment to a system administrator function. There are two ways how an end-user can request and obtain a NonStop database environment.
When ServiceNow is used, an end-user will typically start the workflow by entering a service request or ticket into the system which contains the necessary information to deploy a database. This request then initiates a workflow that puts the request into the queue of a ServiceNow administrator, also called the approver. The approver needs to review the request and decides if all requirements are met and confirms the request. This will then continue the create workflow and launch the deployment tasks that run on the NonStop server. Upon completion, the request will appear in the requestor’s list of subscriptions along with the information the user needs to connect to the database or to execute database-owner functions with WebDBS. For example, the URL, required to connect as a tenant to WebDBS will be displayed in ServiceNow. The administrator/approver in ServiceNow does not require any access to the NonStop system, as the process is fully automated.
When WebDBS is used to run without a framework such as ServiceNow, an administrator can initiate the deployment of behalf of the end user. An end-user will notify the administrator in some form, this can be by phone, app, email, or even using ticketing system that is not integrated with NonStop SQL/MX DBS. When the administrator decides to honor the request, he or she will login to WebDBS as administrator and select the Create Database action and enter the data that the requestor has provided as shown in Figure 1.
Only a few attributes are required to setup an environment:
Database name uniquely defines a database on the system. Depending on the customer, this name can be provided by the end-user of it can be defined by the system administrator. Database connections require a database name as well as the IP address information of the server that hosts the database.
Schema name defines a logical group of database objects within a database. Multiple schemas exist within a database; the one that is entered on this screen will be used to be set as the default when application connect to the database. If the application does not rely on any schema, enter DEFAULT_SCHEMA.
Figure 1: Create database
User Name is the name of the user that will act as the database owner. This user will be granted CREATE access, which is required to create and maintain database objects. This user, along with the password that is entered are used to connect to the database and perform WebDBS tenant functions. Usernames can be in the form of email IDs (firstname.lastname@example.org) or Windows IDs (\HOST.USER) or simple names as shown in the example. Usernames that are or can be used as NonStop OS user IDs will be rejected.
New Password needs to adhere to the Safeguard standards, such as password quality, that are defined for the NonStop server. The password must be re-entered to make sure it was entered correctly.
Optional parameters are:
Initial Number of Servers the number of server processes to handle connections that are activated when the database is started. Each connection is represented by a dedicated server process.
Maximum Number of Servers the maximum number of connections allowed for this database. As more clients connect to the database, new processes are started to satisfy the needs. When connections are closed, idle server processes may remain in the available state until they reach the time that is specified with idle timeout.
Idle Timeout is the time a server waits for new connections before it terminates.
Connect timeout is the time that an application can keep a connection open without sending data. This means that after a time of non-activity the connection will be closed automatically.
The check boxes Create Metadata Views and Log User Sessions are useful for users and administrators.
Metadata views are views on SQL/MX metadata which is highly normalized and writing queries directly on the metadata tables can become quite complex. The views are created in the default schema and allow simple SQL queries on the objects that are defined in the schema.
User Sessions logging includes records for start and end sessions to be logged in the system (EMS) logfile.
SQL/MX DBS is a great opportunity for existing customers to reach out to parts in their organizations that have no exposure to or knowledge of what NonStop databases can do for them. With DBS, this exposure is as easy as providing them a URL which can be used to download a driver and start exploring.
Service providers could use SQL/MX DBS to add new initiatives to their services. Especially with virtualized NonStop servers, testing the waters can be relatively risk-free.
Application software providers who require a highly available database alternative to e.g., Oracle RAC or sharded implementations of other databases, could provide NonStop SQL/MX as an alternative to those solutions. The applications do not have to be ported to NonStop from their currently execution environment, like Windows, Linux, or container platforms. They just need to connect to a different database using ODBC or JDBC using the driver for SQL/MX.
WebDBS 1.1 will be available soon. If you are interested to hear or see more, don’t wait, but contact me at email@example.com.
In the meantime, the YouTube channel is still active and currently shows the demonstration web interface built with simple HTML. See https://www.youtube.com/channel/UCPFo-_xTLaYPVXiHDOrgAlg