Updates for IBM Cloud Compose’s MongoDB, Elasticsearch, Backups and API
Included in the latest updates: two new upgrade options available for MongoDB and Elasticsearch users on the IBM Cloud. The release of MongoDB 3.4.10 and Elasticsearch 6.2.2 from IBM Compose are major version upgrades with many new features. There are also new backup restoration options which make upgrading easier along with new log file API endpoints.
The MongoDB 3.4 update brings support for an enhanced aggregation pipeline. The new $graphLookupoperation allows recursive scanning and inclusion of other collections based on matching fields between documents. Faceted navigation takes results and buckets them for processing as multiple pipelines. There’s also read-only views which allow users to reduce the visibility of a collection with a dynamically created collection.
For precision, there is support for decimal128 format numbers which allows for 34 decimal digits to be accurately represented with the NumberDecimal type. Other enhancements include a range of array and UTF8 string operators added to the aggregation pipeline.
Availability and upgrading
Both database version updates provide useful new features and enhanced reliability and performance to their respective databases. MongoDB 3.4.10 and Elasticsearch 6.2.2 are available now for new instances as the preferred version. Contact support for advice on the optimal way to upgrade.
The latest update to backup/restore page reveals how to restore using the Bluemix ‘bx’ CLI command.
We made restoring a backup to a new service instance easy, find the backup, click Restore and it’s all done for you. What we found though was that people wanted to know how to do that from that command line, so we made that simple too. In the new release, we show you the bx command line you’ll need to run to restore that particular backup to a new service instance. We also show you that backup’s own unique id.
That command is also key to upgrading a database to a new version. By default, a database is restored to its current version, but by adding
"db_version": "1.23" to the
-c parameter list, the new service instance will be created with that version of the database and the data restored into it. This technique allows upgrades to be made and tested before being brought into production.
This command line process can be used to upgrade your existing MongoDB and Elasticsearch deployments to the latest versions. By adding
"db_version": "3.4.10" or
"db_version":"6.2.2" to the respective restore command lines shown for a particular backup of a database, a new service instance with MongoDB 3.4.10 or Elasticsearch 6.2.2 will be created. An example of how an upgrade command looks would be:
Since we announced the availability of the IBM Cloud Compose API, we’ve been adding endpoints to enhance its capability. In the latest update we’ve added the ability to query and retrieve log files. It’s the
<a href="https://apidocs.compose.com/v1.0/reference#2016-07-deployments-id-logfiles">GET /2016-07/deployments/:id/logfiles/</a> and
<a href="https://apidocs.compose.com/v1.0/reference#2016-07-deployments-id-logfiles-logfileid">GET /2016-07/deployments/:id/logfiles/:id</a>Compose API endpoints made available through the IBM Cloud Compose API mechanism.
Another smaller change is that Enterprise Cluster owners can now see their API Endpoint and Cluster ID in the *Manage* overview of their cluster. There is a matching endpoint –
<a href="https://apidocs.compose.com/v1.0/reference#2016-07-get-clusters-id">GET /2016-07/clusters/:id</a> – which returns some details about the cluster. The cluster id is more useful. It is used with the `bx` command to create instances and manage the cluster from the command line.