The latest version of Diffusion™ contains new features,
performance enhancements and bug fixes.
Note: This is the full Diffusion 6.6 release. Some features added since 6.5
were previously available in the 6.6 Preview 1 and Preview 2 releases; in some cases these
features have been substantially altered and improved since the preview.
Improved JMS and Kafka adapters
You can now control these adapters and visualize their activity using the
The Kafka adapter in this release offers more configuration options than the preview version,
including the ability to configure how imported topics are structured,
and to import topics that match a regular expression.
The Java Message Service (JMS) adapter has been updated to use a JSON configuration format.
See Kafka adapter and JMS adapter for details.
Topic view preserve topics option
Topic views are a dynamic way to map and transform a set of topics, creating reference topics in another part of the topic tree.
Some topic views can create reference topics with paths that depend on the values of source
topics. This means that if the value used to determine a reference topic path changes, the reference topic gets removed.
There is now a new option to preserve reference topics derived from a value, even when the value changes. This
makes the set of reference topics generated more stable.
See Preserve topics clause for details.
Topic view separator option
By default, when a topic view derives a reference topic path from a source topic value,
if the value contains a / character, it is treated as a path separator.
For example, a value like "Gold/Silver Index" could create a branch called "Silver Index" under a branch called "Gold",
making the topic path longer than required.
Diffusion 6.6 introduces a new option to replace / with a string of your
choice when creating reference topics.
See Separator clause for details.
Your application can load a smaller core client bundle, and load additional features dynamically as required.
When you're using Diffusion's high-availability capabilities, you can now see the status of
your server clusters from within the management console.
Features available since Preview 2
- MQTT support
Diffusion now supports the popular MQTT messaging protocol, enabling MQTT devices to publish and subscribe to Diffusion topics.
Now you can gather and distribute real-time data to Internet of Things (IoT) devices and other remote hardware,
while still making use of Diffusion's advanced data-wrangling and security capabilities.
There is no need to install any Diffusion code on the remote devices.
MQTT is supported for production use.
See MQTT support for full details.
- Python SDK
The Python SDK enables you to develop Diffusion clients in Python, with support for core features
including subscribing and
publishing. Some features available in other SDKs are not yet supported in Python.
See the Python SDK overview for details.
Features available since Preview 1
- Topic view inserts
Topic view inserts are a new addition to the data processing capabilities of topic views. Topic views
enable you to mirror selected source topics to another part of the topic tree, creating reference topics.
With a topic view insert, you can now merge data from topics other than the selected source topic into JSON reference topics.
You can insert whole values, or partial data specified with JSON pointers.
Advanced features include the ability to derive paths from values, and chaining multiple inserts.
For more information, see Insert clause.
- Kafka adapter
The Kafka adapter has been improved in the full release from the version available during preview.
The adapter can translate data from Kafka topics to Diffusion topics, and from Diffusion to Kafka.
For more information, see Kafka adapter.
- Time series topic enhancements
You can now update a time series topic via the standard topic update API, treating a time series topic
as if it were a single topic with the same event type as the time series. This means that when you update time series topics,
you can now use features like update constraints,
update streams and the addAndSet operation.
In addition, you can now create a time series event with a custom timestamp of your choice, instead of one based on the current
time. You could use this to load historical data into a time series topic, or for testing purposes.
- Other improvements
Session filters now support a new IN operator, so you can filter sessions based on a list of properties.
The Android SDK has been updated to take advantage of the latest desugaring support in Java 8+.
Update streams now respect topic conflation settings and can be used to update topics that with DONT_RETAIN_VALUE set to true.
The server will use less CPU when update traffic is very low.