What's new in IBM Informix version 12.10.xC6

What's new in IBM Informix version 12.10.xC6

Server changes
Administration
Multitenancy
Backup and restore
JSON compatibility
High availability
Application development
JDBC
SQL
Performance
Security
Time series data
Warehousing

Support for additional platforms

  • Informix is now available on IBM POWER8® for ppc64le with Red Hat Enterprise Linux 7.1, SUSE Linux Enterprise Server 12, and Ubuntu 14.04 LTS.
  • The spatial data feature is now available on the following platforms:
    • IBM Power Series® 64-bit with Red Hat Enterprise Linux ES releases 5.3, 6, and 7, and SUSE SLES 11
    • IBM zSeries 64-bit with Red Hat Enterprise Linux ES releases 5.3 and 6, and SUSE SLES 11

Server changes that affect migration

Due to new features and functionality, Informix version 12.10.xC6 contains the following new configuration parameters and environment variable:

  • BAR_MAX_RESTORE configuration parameter
  • IFXGUARD configuration parameter
  • SHARD_ID configuration parameter
  • SHARD_MEM configuration parameter
  • SMX_NUMPIPES configuration parameter
  • TENANT_LIMIT_CONNECTIONS configuration parameter
  • TENANT_LIMIT_MEMORY configuration parameter
  • IFX_SOC_KEEPALIVE environment variable

These changes are summarized in the Migration Guide.

Limit shared memory and connections for tenant databases

You can limit shared memory and the number of connections for tenant databases in a multitenancy environment. You can use configuration parameters to set limits for all tenants or parameters to the tenant create or tenant update argument to the task or admin SQL administration API command:

  • Limit the amount of shared memory for all sessions that are connected to the tenant database. When the limit is exceeded, the session that is using the most shared memory is terminated. Set the TENANT_LIMIT_MEMORY configuration parameter or include the tenant_limit_memory parameter.
  • Limit the number of client connections to a tenant database. When the limit is reached, subsequent connection requests to the tenant database are rejected. Set the TENANT_LIMIT_CONNECTIONS configuration parameter or include thetenant_limit_connections parameter.

This feature is documented in the IBM Informix Administrator’s Reference.

Restore tenant databases to a point in time

You can now restore a tenant database to a particular point in time. Run the onbar -r command with the new -T option to specify the tenant database and the -t option to specify the point in time.

This feature is documented in the IBM Informix Administrator’s Guide and the IBM Informix Backup and Restore Guide.

Control restore resources

You can set the number of parallel processes to run during a restore independently from the number of processes for a backup with the new BAR_MAX_RESTORE configuration parameter. Previously, the BAR_MAX_BACKUP configuration parameter controlled the number of processes for both backups and restores.

This feature is documented in the IBM Informix Backup and Restore Guide.

Parallel sharded queries

You can now run SELECT statements in sharded queries in parallel instead of serially on each shard. Parallel sharded queries return results faster, but also have the following benefits:

  • Reduced memory consumption: Table consistency is enforced on the shard servers, which eliminates the processing of data dictionary information among the shard servers.
  • Reduced network traffic: Client connections are multiplexed over a common pipe instead of being created individual connections between each client and every shard server. Client connections are authenticated on only one shard server instead of on every shard server. Network traffic to check table consistency is eliminated.

To enable parallel sharded queries, set the new SHARD_ID configuration parameter in the onconfig file to a unique value on each shard server in the shard cluster. Also set the new sharding.parallel.query.enable=true and sharding.enable=true parameters in the wire listener configuration file for each shard server. You can customize how shared memory is allocated for parallel sharded queries on each shard server by setting the new SHARD_MEM configuration parameter. You can reduce latency between shard servers by increasing the number of pipes for SMX connections with the new SMX_NUMPIPES configuration parameter.

If you plan to upgrade your existing shard cluster from a previous version of Informix 12.10, upgrade and set the SHARD_ID configuration parameter on all the shard servers to enable parallel sharded queries.

This feature is documented in the IBM Informix JSON Compatibility Guide and the IBM Informix Enterprise Replication Guide.

MongoDB 2.6 and 3.0 compatibility

Informix now supports the following MongoDB commands:

  • The following database management commands:
    • The query and write operation commands insertupdate, and delete.
    • The instance administration commands createIndexeslistCollections, and listIndexes.
    • The user management commands, for MongoDB 2.6 and later, createUserupdateUserdropUser,dropAllUserFromDatabasegrantRolesToUserrevokeRolesFromUser, and usersInfo.
    • The role management commands: createRoleupdateRoledropRoledropAllRolesFromDatabase,grantPrivilegesToRolerevokePrivilegesFromRolegrantRolesToRolerevokeRolesFromRole, androlesInfo.
  • The query and projection command $eq.
  • The field update operators $mul$min$max, and $currentDate.
  • The pipeline aggregation operator $out.

You can authenticate MongoDB clients with the MongoDB 3.0 SCRAM-SHA-1 authentication method. You must upgrade the user schema for existing users.

You upgrade to MongoDB 3.0 by setting the new mongo.api.version parameter to 3.0 in the wire listener configuration file.

These features are documented in the IBM Informix JSON Compatibility Guide.

Wire listener enhancements

The wire listener has the following new parameters that you can set to customize the wire listener.

MongoDB compatibility
Specify the version of MongoDB API compatibility with the mongo.api.version parameter.
Security
Disable commands with the command.blacklist parameter.
Specify the authentication type with the db.authentication parameter.
Specify an IP address as the administrative host with the listener.admin.ipAddress parameter.
Set authentication timeout with the listener.authentication.timeout parameter.
Add information to HTTP headers with the listener.http.headers parameter.
Resource management
Configure a memory monitor to reduce resource usage with the listener.memoryMonitor parameters.
Create a separate thread pool for administrative connections with the listener.pool.admin.enable parameter.
Specify the timeout periods for socket connections with the listener.socket.accept.timeout andlistener.socket.read.timeout parameters.
Suppress pooled connection checking with the pool.lenient.return.enable and the pool.lenient.dispose.enableparameters.
Specify the number of maintenance threads for connection pools with the pool.service.threads parameter.

These features are documented in the IBM Informix JSON Compatibility Guide.

Authenticate wire listener connections with Informix

You can configure the database server to authenticate MongoDB client users, who connect through the wire listener, with a pluggable authentication module (PAM). Because you administer user accounts through the database server, you can audit user activities and configure fine-grained access control. In contrast, if you use MongoDB authentication, MongoDB clients connect to the database server as the wire listener user that is specified by the url parameter.

This feature is documented in the IBM Informix JSON Compatibility Guide.

Starting the wire listener for the REST API

You no longer need to provide the path to tomcat when you start the wire listener for the REST API.

This feature is documented in the IBM Informix JSON Compatibility Guide.

Faster communication between high-availability servers

You can now reduce latency between high-availability servers by increasing the number of pipes that are used for the server multiplexer group (SMX) connections between servers. Set the new SMX_NUMPIPES configuration parameter to the number of pipes to use.

This feature is documented in the IBM Informix Administrator’s Guide and the IBM Informix Administrator’s Reference.

Faster index transfer to secondary servers

When the LOG_INDEX_BUILD configuration parameter is enabled, the transfer of newly-created detached indexes to HDR or remote stand-alone secondary servers use light scans when possible, which leads to faster transfer rates.

Easier cloning of database servers

When you clone a replication or high-availability server with the ifxclone utility, you can include the new --createchunkfile option to automatically create the cooked chunks and mirror chunks on the target server that exist on the source server.

This feature is documented in the IBM Informix Administrator’s Reference.

Reoptimize JDBC queries

When you run queries through the Informix JDBC Driver, you can now reoptimize previously prepared query plans. Set the newwithReoptimization argument of the IfmxPreparedStatement.executeQuery method to true.

This feature is documented in the IBM Informix JDBC Driver Programmer's Guide.

Keep JDBC socket connections open

You can now keep long-running JDBC socket connections from timing out due to inactivity. Set the IFX_SOC_KEEPALIVE environment variable to true when you open a socket connection with the Informix JDBC Driver.

This feature is documented in the IBM Informix JDBC Driver Programmer's Guide.

Avoid caching SQL statements with unpredictable query plans

Some SQL statements produce significantly different query plans depending on the values of the placeholders that are passed to the database server when the statements are run. Using a cached query plan for such a statement might result in poor performance. You can now avoid caching an SQL statement whose query plan is unpredictable by including the AVOID_STMT_CACHE optimizer directive.

This feature is documented in the IBM Informix Guide to SQL: Syntax

Prioritize databases for automatic update statistics

You can now assign a priority to each of your databases in the Auto Update Statistics (AUS) maintenance system. By default all databases have a medium priority. You can assign specific databases a high or a low priority to ensure that statistics for your most important databases are updated first. Statistics for low priority databases are updated after high and medium priority databases, if time and resources permit. For example, if you have a system with a production and a test database, you can assign the production database a high priority and the test database a low priority. You can also disable AUS for a database.

You can set AUS priorities in the IBM OpenAdmin Tool (OAT) for Informix or by adding rows to the ph_threshold table in the sysadmindatabase.

This feature is documented in the IBM Informix Performance Guide.

Audit Informix databases with IBM Security Guardium

You can now audit the user actions for your Informix database server with IBM Security Guardium®, version 10.0. After you set up the Guardium server, you start the ifxguard utility to monitor connections to your Informix databases. You can customize the behavior of theifxguard utility by editing the ifxguard configuration file and by setting the IFXGUARD configuration parameter in the onconfig file.

This feature is documented in the IBM Informix Security Guide.

Show time series reference count

You can now see the time series reference count in the metadata section of the output of the TSInfo function. The time series reference count is the number rows in time series tables that reference the same time series data in a container.

This feature is documented in the IBM Informix TimeSeries Data User’s Guide.

Default dbspace for time series containers

You can now specify NULL instead of a dbspace name when you create containers with the TSCreateContainer procedure. The container is created in the same dbspace as the time series table, or, if the table is in a tenant database, the dbspace for the tenant database catalogs.

This feature is documented in the IBM Informix TimeSeries Data User’s Guide.

Enhanced monitoring of IBM Informix Warehouse Accelerator queries

When you run the ondwa tasks command to monitor Informix Warehouse Accelerator queries, the command now displays client session information for running queries and basic information about queued queries. The client session information includes the session ID and the server number to which the client is connected.

This feature is documented in the IBM Informix Warehouse Accelerator Administration Guide.


标签: none

添加新评论

Free Web Hosting