LogoLogo
API ReferenceGitHubSlackService StatusLogin
v3.6.1
v3.6.1
  • Deep Lake Docs
  • Vector Store Quickstart
  • Deep Learning Quickstart
  • Storage & Credentials
    • Storage Options
    • User Authentication
    • Storing Deep Lake Data in Your Own Cloud
      • Microsoft Azure
        • Provisioning Federated Credentials
      • Amazon Web Services
        • Provisioning Role-Based Access
        • Enabling CORS
  • List of ML Datasets
  • API Reference
  • 🏢Enterprise Features
    • Compute Engine
      • Tensor Query Language (TQL)
        • TQL Syntax
        • Sampling Datasets
      • Performant Dataloader
    • Tensor Database
      • REST API
      • Migrating Datasets to the Tensor Database
  • 📚EXAMPLE CODE
  • Getting Started
    • Vector Store
      • Step 1: Hello World
      • Step 2: Creating Deep Lake Vector Stores
      • Step 3: Performing Search in the Vector Store
      • Step 4: Customizing Vector Stores
    • Deep Learning
      • Step 1: Hello World
      • Step 2: Creating Deep Lake Datasets
      • Step 3: Understanding Compression
      • Step 4: Accessing and Updating Data
      • Step 5: Visualizing Datasets
      • Step 6: Using Activeloop Storage
      • Step 7: Connecting Deep Lake Datasets to ML Frameworks
      • Step 8: Parallel Computing
      • Step 9: Dataset Version Control
      • Step 10: Dataset Filtering
  • Tutorials (w Colab)
    • Vector Store Tutorials
      • Vector Search Options
        • Deep Lake Vector Store API
        • REST API
        • LangChain API
      • Deep Lake Vector Store in LangChain
    • Creating Datasets
      • Creating Complex Datasets
      • Creating Object Detection Datasets
      • Creating Time-Series Datasets
      • Creating Datasets with Sequences
      • Creating Video Datasets
    • Training Models
      • Training an Image Classification Model in PyTorch
      • Training Models Using MMDetection
      • Training Models Using PyTorch Lightning
      • Training on AWS SageMaker
      • Training an Object Detection and Segmentation Model in PyTorch
    • Updating Datasets
    • Data Processing Using Parallel Computing
  • Playbooks
    • Querying, Training and Editing Datasets with Data Lineage
    • Evaluating Model Performance
    • Training Reproducibility Using Deep Lake and Weights & Biases
    • Working with Videos
  • API Summary
  • 🔬Technical Details
    • Best Practices
      • Creating Datasets at Scale
      • Training Models at Scale
      • Storage Synchronization and "with" Context
      • Restoring Corrupted Datasets
    • Data Layout
    • Version Control and Querying
    • Dataset Visualization
    • Tensor Relationships
    • Visualizer Integration
    • Shuffling in dataloaders
    • How to Contribute
Powered by GitBook
On this page
  • Connecting Data From Your Cloud Using Deep Lake Managed Credentials
  • Managed Credentials
  • Connecting Deep Lake Datasets to the App
  • Default Storage
  • Using Manage Credentials with Linked Tensors

Was this helpful?

  1. Storage & Credentials

Storing Deep Lake Data in Your Own Cloud

How to store Deep Lake data in your own cloud and manage credentials with Deep Lake

PreviousUser AuthenticationNextMicrosoft Azure

Last updated 2 years ago

Was this helpful?

Connecting Data From Your Cloud Using Deep Lake Managed Credentials

Connecting data from your own cloud and managing credentials in Deep Lake unlocks several important capabilities:

  • Access to enterprise features such as the Deep Lake Compute Engine

  • Access to the Deep Lake UI for datasets stored in your own cloud

  • Simpler access to Deep Lake datasets stored in your own cloud using the Pyton API

    • No need for continuously specifying cloud access keys in Python

Managed Credentials

In order for the Deep Lake UI to access datasets or linked tensors stored in the user's cloud, Deep Lake must be able to authenticate the respective cloud resources. Access can be provided using access keys or using role-based access (provisioning steps here). The video below summarizes the UI for managing your cloud credentials.

Connecting Deep Lake Datasets to the App

Datasets in Deep Lake storage are automatically connected to the Deep Lake App. Datasets in user's clouds can be connected to the App using the Python API or UI below. For AWS S3, in order to visualize data in the Deep Lake browser application, it is necessary to enable CORS in the bucket containing any source data.

Once a dataset is connected to Deep Lake, it is assigned a Deep Lake path hub://org_id/dataset_name, and it can be accessed using API tokens and managed credentials from Deep Lake, without continuously having to specify cloud credentials.

Connecting Datasets in the Python API

# Step 1: Create the dataset directly in the cloud using your own cloud creds
ds = deeplake.empty('s3://my_bucket/dataset_name', creds = {...})

# Step 2: Connect the dataset to Deep Lake and specify the managed credentials
# (creds_key) for accessing the data (See Managed Credentials above)
ds.connect(org_id = 'org_id', creds_key = 'my_creds_key', token = 'my_token')

OR

ds.connect(dest_path = 'hub://org_id/dataset_name', creds_key = 'my_creds_key', token = 'my_token')

Specifying org_id creates the dataset in the specified org using the dataset_name from the cloud path.

Specifying the dest_path creates the dataset at the org_id and dataset_name from the specified path.

Connecting Datasets in the Deep Lake UI

Default Storage

By default, any dataset created using the Deep Lake path hub://org_id/dataset_name, is stored in Activeloop storage. You may change the default storage location for Deep Lake paths to a location of your choice using the UI below. Subsequently, all datasets created using the Deep Lake path will be stored at the specified location.

Using Manage Credentials with Linked Tensors

Managed credentials can be used for accessing data stored in linked tensors. Simply add the managed credentials to the dataset's creds_keys and assign them to each sample.

ds.create_tensors('images', htype = 'link[image]', sample_compression = 'jpeg')

ds.add_creds_key('my_creds_key', managed=True)

ds.images.append(deeplake.link(link_to_sample, creds_key = 'my_creds_key')

Authentication Using Managed Credentials