Datastores¶
A Flow
supports multiple backend data stores which configure where data is stored for the workflow. Layers in the Flow
will read from and write to the data store to pass artifacts between layers.
Local¶
By default, flows are configured to use the Local
datastore which writes Flow
artifacts to a location on local disk.
from laminar import Flow
from laminar.configurations import datastores
class LocalFlow(Flow):
...
flow = LocalFlow(datastore=datastores.Local())
Memory¶
The Memory
datastore writes artifacts to an in memory key/value store. This very useful for testing.
from laminar import Flow
from laminar.configurations import datastores
class MemoryFlow(Flow):
...
flow = MemoryFlow(datastore=datastores.Memory())
Warning
Can only be used with the Thread
executor because only the main process can write to the Memory
datastore.
AWS.S3¶
Warning
AWS.S3
is experimental.
The AWS.S3
datastore writes artifacts to the AWS S3 object storage service.
from laminar import Flow
from laminar.configurations import datastores
class S3Flow(Flow):
...
flow = S3Flow(datastore=datastores.AWS.S3())