
reference.language.flush.html Maven / Gradle / Ivy
Flush statements
Flush statements
The Prompto language comes with a built-in data storage mechanism.
>
This mechanism relies on 3rd party data store implementations. Which data store technology is effectively used is determined through configuration.
Without configuration, Prompto uses a built-in in-memory non persistent data store, which helps get started and run tests, but is not supported for production.
A data store generally provides guarantees of availability, scalability and consistency.
However, from a programming language standpoint, the only relevant characteristic is consistency aka ACID (Atomicity, Consistency, Isolation, Durability).
Many data stores provide consistency through transactions, however this does not scale well.
Instead, other data stores provide consistency using grouped CRUD operations (CReate, Update, Delete).
To ensure compatibility with most data stores, Prompto only requires the data store to support consistency, not transactions.
However, some data stores only provide asynchronous consistency of CRUD operations.
As an example, SOLR indexes data asynchronously, which has the unfortunate consequence that newly inserted data may not be found
by indexed queries ran immediately after storing the data.
The flush
statement instructs the data store to synchronously flush any pending operation, thus ensuring
that all data previously inserted can be accessed by queries.
A flush statement has the form flush
.
Flush statements should be used with parcimony, as they may slow down storage dramatically, depending on the data store used.
Flushing the store
Prompto instructs the store to flush its data as follows:
© 2015 - 2025 Weber Informatics LLC | Privacy Policy