For the complete documentation index, see llms.txt. This page is also available as Markdown.

Datasources

外部ストレージから画像とメタデータを自動で同期し、Roboflow workspace に取り込みます。

Datasourcesを使うと、クラウドストレージからRoboflowのAsset Libraryへ画像とメタデータを継続的にミラーできます。一度ミラーされると、画像はセマンティクス、カスタムメタデータ、タグ、または画像類似度で検索でき、ラベリングとトレーニングのために任意のProjectへ追加できます。

現在、AWS S3およびS3互換のstorage bucketミラーリングがサポートされています。Azure Blob StorageとGoogle Cloud Storageのサポートは近日公開予定です。

Bucket Mirror の仕組み

Datasourceを設定すると、RoboflowはS3 bucketをクロールし、条件に一致するすべての画像ファイルをWorkspaceの Asset Library.

  • サポートされる画像形式: JPEG, PNG, BMP, WebP, AVIF

  • Workspaceにすでに存在するファイル(S3の場所とハッシュで一致するもの)は再インポートされないため、egressコストを削減できます

  • もし .json というsidecar fileが同じベース名の画像と並んで存在する場合、そのメタデータが取り込まれます。ネストされたキーはドット記法で平坦化されます(例: capture.temperature) — 参照: Metadata Sidecars

  • bucketから消えたファイルはデフォルトでは保持されます。代わりに削除するには、orphan removalを有効にしてください(参照: Removing Orphaned Files)

BucketをRoboflowにミラーリングする

前提条件

  1. 画像データを含むAWS S3 bucket

  2. そのbucketから読み取れる再利用可能なRoboflow credential。参照: Datasource Credentials、次に AWS S3 Credentials.

RoboflowでCredentialを追加する

Roboflowはbucketアクセスを、安全に暗号化された再利用可能なcredentialとして保存します。AWSのセットアップ手順と最小権限のガイダンスについては、 AWS S3 Credentials.

へ移動し、 Credentials をWorkspace settingsで開いて Add Credential.

Bucket Mirroring用のDatasourceを設定する

Workspace settingsから新しいDatasourceを作成します。フォームには2つのタブがあります: 「Connection」にはbucketの詳細とアクセス情報が含まれます: name, provider, bucket, region, and Credential. 保存済みのCredentialを「Credential」ドロップダウンから選択するか、フォームを離れずに追加するには横の「+」を使ってください。

  • 「Mirror Configuration」には、import destination、file filters、mirror behaviorが含まれます。

  • 「Mirror Configuration」には、import destination、file filters、mirror behaviorが含まれます。

Import Destination の選択

「Mirror Configuration」の下にある「Import Destination」セクションで、ミラーされたファイルの保存先を制御します。各Datasourceは1つのdestinationにだけ取り込みます。別の場所に取り込むには、Datasourceを追加してください。

  • 「Workspace」は Asset Libraryへミラーリングします。 「Import into」ドロップダウンを使ってファイルをWorkspaceルートに保持するか、Projectを選択してそのProjectにも追加します。

  • 「Folder」は、ミラーされた画像をプロジェクトフォルダに限定し、そのフォルダのチームだけが閲覧できます。このオプションは以下のプランで利用できます: Project Folder Permissions.

Globパターンによるフィルタリング

デフォルトでは、bucket内のサポートされるすべての画像ファイルがインポートされます。globパターンを使って、直接指定するか、bucketに保存された .txt ファイル経由で、どのファイルをインポートするかを制限できます。

globパターンの代わりに、ファイルパスの明示的なwhitelistを指定することもできます。

パターンの意味

  • */ を除く任意の文字列に一致します(単一のディレクトリ階層)

  • **/ を含む任意の文字列に一致します(複数のディレクトリ階層)

プレフィックスで一致:

一致するもの: harvest, harvest2024, harvest/sun/file.jpg, harvest-data.png 一致しないもの: Harvest, my-harvest

フォルダ内のすべてに一致:

一致するもの: /harvest/sun/file.txt, /harvest/sun/subfolder/image.jpg, /harvest/sun/deep/nested/path/data.png 一致しないもの: /harvest/moon/file.txt, /other/sun/file.txt

サブツリー内でサフィックスで一致:

一致するもの: /planting/wheat-crops.png, /planting/subfolder/rice-crops.png 一致しないもの: /planting/wheat.png, /other/wheat-crops.png

名前パターンを使って特定のディレクトリ階層で一致:

一致するもの: /farm/a/field/weed-2025-10-27.png, /garden/a/plot/seaweed-data-2025-10-27.png 一致しないもの: /farm/b/field/weed-2025-10-27.png

完全一致のパス:

その特定のファイルのみに一致します。

ファイル名内のリテラルなワイルドカード: パターンを引用符で囲むと、 * をリテラル文字として扱えます:

Removing Orphaned Files

orphan removalはデフォルトではオフなので、bucketから消えたファイルは保持されます。 removeOrphanedSourcesWhenDisappeared が有効な場合、S3 bucketにもう存在しない(またはglobパターンにもう一致しない)ファイルは、どのProjectや他のDatasource設定からも参照されていなければ、Roboflow Workspaceから削除されます。

これはDatasourceを削除した場合にも適用されます。orphan removalが有効で、bucketが少なくとも1回ミラーされている場合、そのbucket由来の画像で他のProjectで使われていないものは、cleanup workerによって削除されることがあります。削除確認ダイアログはこれについて警告し、続行前に明示的な確認を求めます。これを避けるには、削除する前にDatasourceのmirror configsでorphan removalを無効にしてください。

ファイル名の付け方

この namingStrategy 設定は、Roboflowでインポートされたファイルの命名と表示方法を制御します:

Strategy
説明

fullPath

完全なS3 key pathをファイル名として使用します(デフォルト)

fileName

S3 keyのファイル名部分のみを使用します

eTag

S3 objectのETagを使用します

metadata

次で指定された画像のメタデータの値を使用します: namingStrategyMetadataKey (必須)

画像の更新

S3内の画像が変更されると、RoboflowはWorkspace内のコピーを更新できます:

  • updateImageWhenNewer (デフォルト: true) — S3 objectが保存済みバージョンより新しい場合に画像を再インポートします

  • updateImageStrategy — 更新の適用方法を制御します。現在サポートされているのは overwrite (既存の画像を置き換える)です

Metadata Sidecars

各画像の横に同じベース名を使った .json sidecar fileをbucketに配置してメタデータを画像に付与します:

sidecar fileにはkey-value pairが含まれます:

ネストされたオブジェクトはドット記法で平坦化されます。上の例では次が生成されます:

キー

camera_id

"cam001"

location

"warehouse-3"

capture.temperature

72.5

capture.humidity

45

sidecar fileの制約:

  • 最大ファイルサイズ: 256 KB

  • 有効なJSONである必要があります

  • nullundefined の値は除外されます

Metadata Sync Strategies

画像のmetadata sidecar .json ファイルがS3で更新されると、更新の適用方法を制御する2つの設定があります:

  • updateMetadataWhenNewer (デフォルト: true) — sidecar fileが保存済みバージョンより新しい場合にメタデータを再同期します

  • updateMetadataStrategy — 同期されたメタデータが、UIまたはAPI経由で手動設定したメタデータとどのように連携するかを制御します:

Strategy
動作

mergeBucketWins (デフォルト)

両方のソースを結合します。キーの競合時はbucketの値が優先されます

mergeUserWins

両方のソースを結合します。キーの競合時はユーザー設定の値が優先されます

overwrite

bucketメタデータは既存のメタデータを完全に置き換えます

untilFirstChange

ユーザーがいずれかのメタデータフィールドを手動で編集するまでbucketから同期し、その後は停止します

append

bucketから新しいキーのみを追加し、既存のキーは上書きしません

ミラーリングのトリガー

Datasourcesは定期スケジュールでミラーリングします。また、いつでも手動でミラーをトリガーできます。 Datasources list から、Datasourceの横にある再生ボタンをクリックしてください。

手動トリガーには次のガードがあります:

  • 進行中: すでに同期が実行中の場合、完了するまで次の同期を開始できません。

  • クールダウン: 同期が完了すると、手動での再トリガーは15分間ブロックされます。ボタンのツールチップには残り時間が表示されます。クールダウンは次の場合にスキップされます:

    • 前回の同期で新しく取り込むものが何も見つからなかった場合(キューに入ったファイルが0件、またはすべてのファイルが失敗)。

    • 前回実行以降にDatasource設定を編集した場合。

    • 前回の実行がエラーで完了した場合。

  • 毎時上限: Datasourceは、ローリング1時間あたり最大10回まで同期できます。この上限は、クールダウンスキップで即時再トリガーが可能な場合でも適用されます。

スケジュール済み(cron)同期は、クールダウンと毎時上限の両方をバイパスします。

同期済みAssetの表示

datasource entries には目のアイコンがあり、 Asset Library その特定のDatasourceの画像と動画に絞り込まれた状態で開きます。このアイコンは、そのDatasourceが少なくとも1回同期を完了するまで無効です。

任意のDatasourceから同期されたすべての画像を表示するには、Datasources listの下部にある「View Datasource Assets」をクリックします。このリンクは、少なくとも1つのDatasourceが実行された後に表示されます。

どちらのリンクも、タグフィルターがあらかじめ入力されたAsset Libraryに移動するため、Workspace画像のうちbucketミラーリングされた部分だけを閲覧、検索、管理できます。

S3互換ストレージ

Datasourcesは、必要なS3 API操作を実装したS3互換のstorage providerで動作します。

これらのproviderを設定するには:

  1. Datasourceの「Connection」タブで S3 をproviderとして選択します。

  2. 通常どおりbucket名とcredentialsを入力します。

  3. provider固有のカスタム endpoint URLを定義します。

  4. regionを auto またはprovider固有のregion値に設定します。

providerのS3 API endpointに使用します。 endpointCDN URL、公開bucket URL、またはブラウザダウンロードURLは使用しないでください。

同じglobパターンのフィルタリング、metadata sidecarの挙動、およびmirror設定は、これらのproviderでも機能します。

サポートされるS3互換storage providerには次が含まれます:

プロバイダー
サンプルのendpointホスト名

Cloudflare R2

<account-id>.r2.cloudflarestorage.com

Backblaze B2

s3.<region>.backblazeb2.com

DigitalOcean Spaces

<region>.digitaloceanspaces.com

Akamai Linode Object Storage

<region>.linodeobjects.com

Wasabi

s3.<region>.wasabisys.com

Vultr Object Storage

<region>.vultrobjects.com

OVHcloud Object Storage

s3.<region>.io.cloud.ovh.net

Scaleway Object Storage

s3.<region>.scw.cloud

Open Telekom Cloud

obs.<region>.otc.t-systems.com

Exoscale SOS

sos-<region>.exo.io

IONOS Cloud Object Storage

s3-<region>.ionoscloud.com

IBM Cloud Object Storage

s3.<region>.cloud-object-storage.appdomain.cloud

Oracle Cloud Infrastructure Object Storage S3互換性

compat.objectstorage.<region>.oraclecloud.com

Seagate Lyve Cloud

s3.<region>.lyvecloud.seagate.com

Huawei Cloud OBS

obs.<region>.myhuaweicloud.com

Alibaba Cloud OSS

oss-<region>.aliyuncs.com

Tencent Cloud COS

cos.<region>.myqcloud.com

Yandex Object Storage

storage.yandexcloud.net

Storj Hosted S3 Gateway

gateway.storjshare.io

最終更新

役に立ちましたか?