MinIO S3
MinIO file producer using S3 cloud or local hosted buckets
Overview
S3 support is provided using the MinIO Publisher Transport. Processed event data is saved as files in the MinIO, a high-performance, S3-compatible object storage system.
This setup supports cloud or local MinIO storage and uses predefined file formats for each bucket. Configurable options include:
Custom schemas
Batch size
Object naming formats
Retries
making Joule's application with MinIO suitable for scalable data storage solutions.
Driver details: io.minio:minio:8.5.4
Examples & DSL attributes
The example configures a MinIOPublisher
to save event data in a local S3-compatible bucket named marketdata
.
Files are stored under the stocks
object using a schema defined in marketDataSchema.avsc
and are organised by date format. The file format is provided in AVRO.
Attributes schema
Connection attributes schema
Credentials attributes schema
For non-production use cases the access/secret keys can be used to prove data ingestion functionality. When migrating to a production environment implement a provider plugin using the provided JouleProviderPlugin
interface, see basic example below.
JouleProviderPlugin interface
The JWTCredentialsProvider
implements the JouleProviderPlugin
interface, providing methods for initialisation, validation and setting properties, but with no functionality implemented in this case.
It's a template for custom credential providers.
Bucket attributes schema
Additional resources
Official MinIO documentation
MinIO Docker image
Last updated