Contact Free trial Login

FAQ: Object Store v2

Where is Object Store v2 available?

Object Store v2 is available in every region where Runtime Manager (CloudHub) apps can be deployed.

What Mule versions support Object Store v2?

Mule 3.8.5 and above, and all 4.x versions.

  • Mule 4 only supports Object Store v2.

  • Only Mule Runtimes deployed to CloudHub can use Object Store v2.

How can I see usage data?

To view API request data, see View Usage Graphs.

What happens when the transaction limit for my subscription is reached?

An Object Store v2 subscription pack allows up to 100 million transactions per month for an Anypoint Platform organization. This limit is applied across all Production and non-Production environments. You can use the Object Store v2 Stats API to monitor usage.

If your usage exceeds your license limit, Object Store v2 continues to work. MuleSoft notifies your account administrator and team with any billing-related information.

Is Object Store v2 persistent in the same region as the worker?

Yes, Object Store v2 is in the same region as the worker where the app is initially deployed. For example, if you deploy to the Singapore region, the object store persists in the Singapore region.

If after the first deploy, you move the app to a different region, Object Store v2 remains in the original region to avoid data loss. Your use of Object Store v2 never moves from one region to another. When you need to deploy both an app and object store to a different region, delete the app and re-upload the app into the new region. This action loses all the data that may exist in the storage.

How are Object Store entries divided among workers?

Object Store v2 is a remote service that is separate from CloudHub workers. All entries that you put in _defaultUserObjectStore are available to all workers for the same app. If not using _defaultUserObjectStore, then the data is put into an in-memory object store on the worker and that data is lost if the worker restarts or a new app version is deployed.

For an example of entry availability, if you had 50 entries and 5 workers, all 50 entries would be available to all the workers in the app and the Object Store v2 service handles storing all the data without any impact on the workers.

Can one Mule app access the object store of another Mule app?

No. You can use Object Store v2 only as a distributed memory store for an application or as a key-value cache. It is not designed for app-to-app communication.

To share data between two Mule 4 apps, use a queue in Anypoint MQ. For information about object store limitations, see Object Store Limitations.

What are the limits on an object store?

The total size of an object store is not limited, but each value is limited to 10 MB. The free version also limits usage to 10 transactions per second (TPS) per app. Premium add-on users are allowed up to 100 TPS per app.

What is the maximum number of keys that can persist in Object Store v2?

In Object Store v2, there is no limit on the number of keys per app.

What are the advantages of using partitions?

You can use partitions to divide the object store into separate areas for your stored and retrieved keys. Partitions are logical, rather than physical, structures. For this reason, data access time is the same, whether you store keys in one partition or multiple partitions.

How long can data persist in Object Store v2?

Object Store v2 data persists 30 days. The expiry time is reset if an update to that key occurs. If there is no update, the key is deleted at the 30 day mark.

Where is the Object Store v2 REST API portal?

The Object Store v2 APIs are available in the Anypoint Platform Developer’s portal:

Where is the Object Store connector?

Anypoint Exchange provides assets for the Mule 3 Object Store connector used by Anypoint Studio 6, and for the Mule 4 Object Store connector used by Studio 7.

Do I need a different Object Store connector for Object Store v2 and Object Store v1?

All versions of Mule’s Object Store Connector work with both Object Store v1 and Object Store v2.

Why are Object Store values in binary format?

When you view an Object Store key in Runtime Manager, the value for the key displays as [binary value] BINARY. Mule 4 wraps values into a Mule object that causes them to be only visible in binary through Anypoint Platform. Behind the scenes, Mule 4 executes binary serialization with the Mule internal serializer. The user interface cannot deserialize the object, hence it can only tell you that the value is now binary in the user interface.

To view the key value, you need an Object Store retrieve flow in your app’s connector, such as:

<flow name="Retrieve" >
	<http:listener doc:name="Listener" config-ref="HTTP_Listener_config1"
		path="/retrieve">
		<ee:repeatable-file-store-stream />
	</http:listener>
	<os:retrieve doc:name="Retrieve"
		key="#[attributes.queryParams.key]"
		objectStore="Object_store1"/>
</flow>

For more information, see Tutorial: Create a Studio 7 Project.

Are there rate limits on Object Store v2?

Customers who have not purchased a separate Object Store SKU are rate limited to 10 transactions per second per app. If an app for an account that has not purchased the Object Store v2 SKU exceeds the rate limit, further requests are not processed for a time and a 429 HTTP error status code results. To go beyond the base 10 TPS rate limit, contact your MuleSoft account team.

How is Object Store v2 data secured?

Object Store v2 uses TLS for secure transport. Data at rest is stored using FIPS 140-2 compliant encryption standards. If you require a higher level of security, we recommend that you encrypt sensitive data before writing it to the Object Store.

Does Object Store cache data or perform I/O for each read and write?

Object Store v2 performs I/O for each read and write. With Object Store v2, the API call is localized to the same data center as the Runtime Manager app.

Was this article helpful?

💙 Thanks for your feedback!

Edit on GitHub