Search⌘ K
AI Features

Ingesting and Storing Multimodal Data

Explore methods to ingest and store multimodal unstructured data such as images, audio, text, and video in AWS S3 for machine learning. Understand how to organize data with proper prefixes, user-defined metadata, object tags, and manifests. Learn to convert audio to transcripts using Amazon Transcribe and stream live video into the data lake with Amazon Kinesis Video Streams. This lesson helps you design effective AWS data ingestion architectures for diverse data types essential to ML workflows.

The previous lesson showed how columnar formats such as Parquet, lifecycle rules, and least-privilege access shape an S3 data lake for tabular data. Many AI and ML applications, however, learn from unstructured data: product images, recorded support calls, documents, and camera video. For these data types, there are no rows and columns to reorganize. Each file is the record.

Amazon S3 is still the storage layer, but the engineering decisions shift from file format to object layout, metadata, and the ingestion path for each data type. In this lesson, you'll learn how to store each type of file, where to record facts about it (user-defined metadata, object tags, or a manifest), how to turn call audio into transcripts, and how to bring live video into the data lake with Amazon Kinesis Video Streams.

The diagram below shows how each data type reaches the data lake and how a manifest ties the stored files to their labels for training.

Multimodal ingestion into an S3 data lake
Multimodal ingestion into an S3 data lake

Storing text, images, and audio as objects

Store each unstructured file as its own object in its native format. A JPEG stays a JPEG, and a WAV recording stays a WAV recording. Columnar formats such as Parquet bring no benefit here, because there are no columns to prune. Keep the original files as the source of truth. A training pipeline can still pack them into larger files later, such as RecordIO for SageMaker built-in image algorithms in Pipe mode. Set the correct Content-Type on upload (for example, image/jpeg or audio/wav) so that downstream consumers can identify the file without opening it.

Each data type ...