Write Data#

Apperate provides complete flexibility in storing data. You can store data source data via connectors (see Connecting to Data Sources) or store data directly using our REST endpoints and our JavaScript methods. The articles here, demonstrate storing data directly.

There are two ways of writing data to Apperate:

  • Real-time writes

  • Batch writes

Here are overviews of both.

Real-time Writes#

Apperate’s POST /record endpoint and apperate.write() JavaScript method (wraps POST /record) support real-time writes. Here are their distinguishing characteristics:

  • Writes small amounts of data (one record or a few records) fast

  • Publishes actionable Rules Engine events (optional)

  • Asynchronous option (default): The method returns immediately–Apperate saves your data, queues it, and shortly therafter makes it available to query. This is the fastest way to write data and the best way to make multiple data writes simultaneously.

  • Synchronous option (wait: true): The method blocks until the data is written and available to query. This way assures that the data can be queried once the method returns.

  • Record order is not guaranteed

  • Does not write to logs

Batch Writes#

Apperate’s POST /data endpoint supports loading data in batch.

  • Writes any amount of data; optimized for large amounts of data

  • Synchronous

  • Record order is deterministic

  • Writes to logs. Invalid data is reported per record.

This section demonstrates both ways of storing data.

Tip

Write small amounts of data fast using POST /record or using apperate.write(), with the asynchronous option set (explilcitly set it). If you require synchronous behavior, set that option. If a record fails to write, consider debugging it with POST /data.

What’s Next#

Write Data Records with POST /record demonstrates writing data records in a fast, light-weight manner. The writes register as events by default, so you can trigger Rules to alert stakeholders. You can optionally focus on publishing events and skip data persistence altogether–it’s completely up to you.

Write Data with the apperate.write() JS Method demonstrates doing everything the POST /record endpoint does, but with conveniences for JavaScript environments. The apperate.write() method wraps the POST /record endpoint.

Batch Write Data with POST /data demonstrates batch writing data to Apperate and tracking its job.

Enjoy using your data in our real-time store and publishing actionable events to use with Rules!