Back to the What's new in Spotfire landing page.
Discovery
Horizontal & positionable legends
Color by, Shape by and Series by legend items can now be displayed horizontally, above or below your visualizations, aligned left, right or centered.
You can set a legend to horizontal mode from the legend panel directly of from the legend properties. Setting the alignment and position is done directly from the horizontal legend.
More items in legends
The maximum number of values per legend item is increased to a default of 50 values (vs. 29 previously).
Existing analyses are not impacted and the maximum number of values can be further increased at a visualization level from its legend properties, as a user level option or as a group preference level set by an administrator.
Color schemes made for accessibility
Two new color schemes are now available for coloring your visualizations. Available for both light and dark canvas styling, these palettes meet WCAG 2.1 Level AA standard or higher for the contrast between text and background.
Faster Python data functions startup
Up to 4x faster Python data functions using pre-initialized background processes. Whether you're running one or multiple Python data functions, the overall experience is now much faster.
The number of background processes for local Python executions can also be configured as a user level option or as a group preference level set by an administrator.
Open links from data functions descriptions
URLs added to data functions descriptions and parameter descriptions are now automatically detected. Clicking on a link now opens the target directly in a web browser.
Spotfire ModelOps Support
Spotfire ModelOps is now available as a new type of data function to run analytics and real-time analytics on trained data.
Run governed and pre-trained models from PMML, TensorFlow, Python and Spark in the immersive visual analytics experience of Spotfire. Improve scalability, flexibility and control when bringing machine learning features to your analysis. Detect anomalies, classify, predict, forecast and deliver revised models to your analysis without requiring an analysis update.
Spotfire ModelOps for Spotfire is available as a Spotfire extension package (.sdn) for Spotfire ModelOps subscribers. Spotfire 11.4 LTS or higher and Spotfire ModelOps 1.2 or higher are required.
Fit parameters with data relationship tool
The data relationships tool can now also include fit parameters (Slope, Intercept) when using linear regression as the comparison method. The slope indicates the steepness of a line and the intercept indicates the location where it intersects an axis.
Analytic Applications
Introducing Cloud Actions
The new Cloud Actions feature allows you to take action in your operational systems directly from the Spotfire visualizations. You can now trigger automated workflows, update databases, control IoT devices, add notes to your CRM system and much more, without having to leave your Spotfire analysis.
This is made possible by leveraging TIBCO's integration technologies through TIBCO Cloud Integration apps that can connect to over 200 systems ranging from business applications like Salesforce, Marketo, Workday, Siebel, Zendesk and Microsoft Dynamics; databases like Oracle, Vertica, Microsoft SQL Server, Teradata and Snowflake; collaboration platforms like email and Slack; and custom applications reachable by standard communications protocols like REST, SOAP and WebSocket.
With a hybrid cloud architecture, actions can be used in any Spotfire environment, both in the cloud and on premises. This also applies to the systems that actions can integrate with.
Running actions
Actions are easily triggered by business users with a single click of a button in a visualization.
As part of the security model for Actions, which also includes OAuth authentication/authorization and a centrally governed license and trust mechanism (similar to Mods, Data Functions, and scripts), a consent step lets the user preview and approve the data that will be sent with the service invocation.
The user will also be notified of any changes made to the action configuration or the analysis data model after the action was trusted.
Configuring actions
Actions are created with no-code user interfaces, both when building the integration apps in TIBCO Cloud Integration and when configuring them in Spotfire.
The user interface for configuring action parameters is automatically created when a service endpoint has been selected from a searchable and browsable service catalog.
TIBCO Cloud Integration supports the visual development of integration apps with REST APIs within a flow editor. It is powered by Project Flogo, a lightweight open-source integration engine.
If a more code-centric approach is preferred, it is also possible to build the integration apps with Node.js
Useful links:
Top page navigation
The page navigation bar and status bar can now be displayed on top of the visualizations canvas.
Existing analysis are not affected. Page navigation and status bar positions can be switched to top at document level from its document properties, or as a user level option or as a group preference set by an administrator.
Data
Access data from Amazon RDS for Oracle
You can now use the connector for Oracle to access data from Amazon RDS for Oracle.
Cloud Native
Run all Spotfire services on Linux
Spotfire® Web Player and Spotfire® Automation Services are now supported on Debian 11.
ASP.NET Core Runtime 6 LTS is required when running these services on Linux.
Note: As previously, .NET Framework is required when running these services on Microsoft Windows.
Deploy Spotfire services on Kubernetes
We have released the Cloud Deployment Kit for Spotfire® as open source, in order to provide a reference and starting point for the deployment of Spotfire® using containers and Helm charts on a Kubernetes cluster.
The repository contains a curated set of recipes to build container images and Helm charts for Spotfire®. You can extend and customize these recipes and examples.
Deploy anywhere
You can deploy Spotfire anywhere: on-premises or in any cloud, private or public, hybrid or multi-cloud.
As long as you have a certified Kubernetes cluster, you can deploy the Spotfire platform using the same artifacts (container images) and templates (Helm charts).
Simpler installation
You can deploy Spotfire Server with one command using the official Spotfire Helm chart:
helm install my-spotfire tibco/spotfire-server -f my-values.yml
The Spotfire database will automatically be set up to the schema version required by the Spotfire Server version.
You can apply your custom Spotfire configuration using the provided Helm charts values.
You can deploy each of the Spotfire services the same way, using their respective Helm charts.
Note: You can disable the automatic Spotfire database schema creation from the Helm chart values. In this case, the database must be manually created.
Service discovery, reverse proxy and Ingress
When installing Spotfire using the provided Helm charts, the Spotfire Server instances join automatically and form a Spotfire Server cluster.
New started Spotfire services are also automatically trusted and added to the Spotfire Server.
You can automatically deploy HAProxy (optional) as a reverse proxy for accessing the Spotfire Server cluster service, with session affinity for external HTTP access.
Also, you can automatically deploy an Ingress (optional) with routing rules for accessing the configured reverse proxy.
Self-healing
You can now take advantage of Kubernetes capabilities. Kubernetes will restart containers that fail, replace and reschedule containers when a Kubernetes nodes crash, and stop containers that don't respond to your custom health checks.
You can configure the Spotfire health-check frequency, thresholds, limits, etc., from the provided Helm charts values.
Quicker and easier upgrades
You can upgrade Spotfire Server with one command using the official Spotfire Helm chart:
helm upgrade --install my-spotfire tibco/spotfire-server -f my-values.yml
New configuration is applied using the chart values.
The containers with a newer Spotfire Server version replace the older ones.
When upgrading Spotfire using the provided Helm charts, the Spotfire database is automatically upgraded to the schema version required by the newer Spotfire Server version.
You can upgrade each of the Spotfire services the same way, using their respective Helm charts.
Note: You can disable the automatic Spotfire database schema upgrade from the Helm chart values. In this case the database must be manually upgraded.
Observability by default: exposed Spotfire metrics and logs
To support easier application management, we provide off-the-shelf integration with the best-in-breed cloud native components, using standard interfaces.
- Spotfire metrics: All Spotfire services have annotations for Prometheus scrapers. The Prometheus server will discover the service endpoint using these specifications and will scrape metrics from the exporter.
- Spotfire logs: All Spotfire service pods have a Fluent Bit sidecar container for log forwarding to a specialized log-forwarded service. With the provided charts, you can automatically deploy Fluent Bit (optional) as log forwarder. You can configure Fluent Bit from the Spotfire charts to forward logs to the log storage of your choice.
Automatic horizontal scaling of all Spotfire services
Using the Cloud Deployment Kit for Spotfire® and Cloud Native standard components, it is now possible to provide automatic horizontal scaling for all Spotfire services.
A set of default scaling policies are provided for each service. You can modify these default scaling policies to scale each service using the metrics combination of your choice. You can also control the minimum and maximum number of instances per service.
This means that Spotfire services can now scale with the business needs, in an adaptive way.
Administration
Library version history
You can now browse saved analysis versions and go back to any previously saved version (either to restore the version, or to save a previous version as a new file) in the Spotfire library.
Version history reduces the need to redo work if mistakes are made, facilitates collaboration and troubleshooting, and provides change traceability.
Delete old versions from Library version history
You can now to delete old library versions with the new command delete-old-library-versions
.
You require a library administrator role to use this command.
You can control if you want to keep library item versions:
- with comments,
- with names,
- based on a specified library search expression for the keyword created. For example, newer than "a month ago" or "2 weeks ago",
- by content size. For example, smaller than "500KB"
Compression of library content
Library items imported into, or exported from, the Spotfire library are now compressed using the gzip format.
This change provides more efficient use of library space, whether the library is stored in the Spotfire database or using an external storage mechanism. Library compression works with all supported databases.
The Library operations are transparent as without compression.
Browser-based public API clients in OAuth2 Authorization Server
The built-in OAuth2 Authorization Server (used by API clients) now supports browser-based public API clients (registered using the existing register-api-client
command).
Token Endpoint authentication method is specified in RFC 6749 and RFC 7591.
The register-api-client
command already supported 3 different profiles: web, native and other. Now it supports a new client profile: user_agent
.
This new type of client is primarily intended for use with the JavaScript API.
Automatic Spotfire database creation
You can now automate the Spotfire database creation with the config tool (create-db
).
The Spotfire database, user and schemas can be created with provided database scripts. Now it is also possible to perform the same steps from the config tool. In other words, no required scripts and no multiple tooling required.
The config tool create-db
command supports all supported databases in the System Requirements.
In a similar way, the new config tool command create-actionlogdb
creates the Spotfire action log database schema.
config.sh create-db \ --driver-class="${DBSERVER_CLASS}" \ --database-url="${DBSERVER_URL}" \ --admin-username="${DBSERVER_ADMIN_USERNAME}" \ --admin-password="${DBSERVER_ADMIN_PASSWORD}" \ --spotfiredb-dbname="${SPOTFIREDB_DBNAME}" \ --spotfiredb-username="${SPOTFIREDB_USERNAME}" \ --spotfiredb-password="${SPOTFIREDB_PASSWORD}" \ --no-prompt \ --timeout-seconds="${BOOTSTRAP_TIMEOUT_SECONDS}" \ --delay-interval-seconds="${BOOTSTRAP_DELAY_INTERVAL_SECONDS}"
Upgrade tool supports simultaneous executions
The upgrade tool now includes a transient lock that prevents simultaneous executions of the upgrade.
This lock is useful for scripted scenarios for running the upgrade tool in silent mode. This simplifies various upgrade scenarios in an environment with multiple Spotfire Server instances, where we want to be able to run the (database) upgrade tool in multiple instances at the same time without the need for external synchronization or serialization.
Spotfire Server supports graceful shutdown from command line
You can now order a delayed or graceful shutdown of the Spotfire Server from the command line, which informs all back-end services that the instance should be considered off line and should not be used for new requests.
/opt/tibco/tss/<version>/tomcat/spotfire-bin/graceful-shutdown.sh --minimum-draining-seconds=<minimum-period-seconds> --draining-timeout-seconds=<delay-seconds>
The command calls for a scheduled shutdown of the Spotfire Server with the specified delay <delay-seconds> in seconds. Use the argument <minimum-period-seconds> to prevent premature shutdowns.
New queue behavior for Automation Services jobs
Spotfire Automations Services jobs can now be queued even if no Spotfire Automation Services are available. This allows "scale to zero".
Also, Spotfire Server does not assign the Automation Services jobs to an Automation Services instance until there is one with available slots.
Spotfire supports Java 17
The following components now use Java 17 instead of Java 11:
- Spotfire® Server
- Spotfire® node manager
- Spotfire® Service for Python (Python service)
- Spotfire® Enterprise Runtime for R - Server Edition (TERR service)
Java 17 is the latest long-term support (LTS) version.
Note: The Oracle Java SE distribution is included in the Spotfire Server, Node Manager and Statistics Services packages.
Note: Additional drivers or existing Java software customizations may need to be verified and upgraded.
For a complete list of changes, see OpenJDK JDK 17 Feature List (Java 11 reference implementation) and the Oracle JDK 17 Release Notes (Oracle's OpenJDK specific distribution).
Developer
API for scripts in Text Areas
This new API capability allows an IronPython script or a C# extension to add new scripts to Text Areas and to modify or delete existing scripts. This is useful when you want to automate the creation and update of analysis files.
The API works with both IronPython and JavaScript scripts.
SDK improvements
All C# example extension projects now have a .pkdesc file, that can be used to build packages using the Package Builder console.
Two distribution description .xml files have been included for the C# example extensions, one for Windows and one for Linux.
A new Visual Studio solution has been included that compiles all C# example extension projects.
Two .bat files are included, BuildPackages-windows.bat and BuildPackageslinux.bat. These contain logic to build all valid Windows and Linux packages for the C# example extensions using the included .pkdesc files
, as well as building two distribution files containing the packages.
A new command line switch has been added for building distribution files, / ignorespotfirereferences. By using this switch when building a distribution, all references to Spotfire API assemblies are ignored during validation of the built distribution file. This is the recommended way to build distribution files instead of listing Spotfire assemblies in the .pkdesc file as ReferencedFile.
Recommended Comments
There are no comments to display.