The Redis Connector for Dell Boomi is a custom connector implementation that enables connectivity to Redis standalone and clustered instances.
Dell Boomi currently has no solution for a caching layer that persists between process executions. The Redis Connector allows developers to cache the results of API requests and expensive I/O operations inside of a Redis database. Any process execution can then use the contents of the Redis cache to pull cached data instead of performing expensive and duplicative processing.
The connector can be used to store any data structure in a Redis database, and currently supports the following Redis data types and operations:
Redis Data Type | Boomi Operation | TTL Support | Remarks |
---|---|---|---|
String | GET | Read | |
String | UPSERT | Write | |
String | DELETE | ||
HashSet | GET | Read | GET operations will return the entire hashset by default. If the Redis Cache document property 'field' is provided, operation will return a single hash field value if it exists. |
HashSet | UPSERT | Write | |
HashSet | DELETE | DELETE operations will delete the entire hashset by default. If the Redis Cache document property 'field' is provided, operation will delete a single hash field |
Installation of a custom connector for Dell Boomi is relatively simple, but it will require Dell Boomi account administrator access to upload and release the connector files.
Download the latest Redis Connector release from the Releases page.
Extract the release zip file into an accessible location. You should now see the following files:
- RedisConnector-<version>--car.zip
- connector-descriptor.xml
Add a custom connector group to your Boomi account by following the instructions described in the Boomi documentation located here: https://help.boomi.com/bundle/connectors/page/t-atm-Adding_a_connector_group.html
Using the files that you extracted from the release download, upload the connector to the new connector group by following the instructions described in the Boomi documentation located here: https://help.boomi.com/bundle/connectors/page/t-atm-Adding_a_version_to_a_connector_group.html
You can upgrade your Redis Connector version by clicking the "Add Version" button in your existing Redis Connector connector group.
Once you install the connector to your account, you can begin using it like any other application connector on the Boomi Web IDE.
The first step is to create a Redis connection component and enter one or more hosts.
The 'Redis Host(s)' field expects one or more semi-colon delimited Redis URIs. A Redis URI is similar to other database connection string URIs and can be used to store host, authentication, and database index configurations among many other interesting properties. You can find more on Redis URI syntax at https://github.com/lettuce-io/lettuce-core/wiki/Redis-URI-and-connection-details.
You can use the 'Test Connection' button to ensure that your atoms are able to connect to the Redis host(s).
Note: The cloud or local atom that you select must have network access to the Redis host(s). If you're using AWS Elasticache, the Redis cluster security group is not accessible over the WAN by default. You'll need to use a cloud or local atom with appropriate network access through the security group that has access to the Redis host(s).
The steps to create any operation type is the same, although the operation options differ once created. Begin by creating a Redis connector operation component and clicking the Import button to complete the operation creation. The wizard will ask you to select the Redis data type being accessed by the new operation.
Find a description of the different operation properties below:
Property | Operations | Default | Description | Remarks |
---|---|---|---|---|
Key Prefix | GET, UPSERT, DELETE | <Empty> | Used as a cache key prefix | Key prefix allows developers to create logical cache key taxonomies to help separate caching operations made by multiple application domains. |
Throw On Not Found | GET | true | When enabled, GET operations for cache keys that do not exist throw an application error. When disabled, GET operations for for cache keys that do not exist result in a success with no output documents |
By enabling 'Return Application Error Responses', a developer can handle GET failures without the use of a try/catch. However, the connector returns empty documents; any handling of GET failures must be done using dynamic document properties. |
Find a description of the different document properties used by the connector below:
Property | Operations | Direction | Required | Description | Remarks |
---|---|---|---|---|---|
key | UPSERT | Input | true | Stores the cache key to use when upserting the document data into Redis. | |
ttl | UPSERT | Input | false | Stores cache key time-to-live (ttl/expiration) to use in seconds. | Cache keys do not expire by default. Developers can optionally specify the cache key ttl using this property |
field | GET | Input | false | When specified, GET operations will return only the individual field within key | Only used on hashset operations |
ttl | GET | Output | false | Stores the current cache key time-to-live in seconds. | When getting a cache key, this output property will store the current ttl in seconds if the cache key is configured with an expiration. |
field | DELETE | Input | false | When specified, DELETE operations will delete only the individual field within the key | Only used on hashset operations |