Tiledbvcf

Efficient storage and retrieval of genomic variant data using TileDB.

How to use it

  1. Hit Copy the whole skill.
  2. Claude: ⋯ → Download .md, then Customize → Skills → Add → Upload skill.
    ChatGPT: make a Project and paste it into Instructions.
    Neither? Paste it at the top of a new chat — it works for that chat.
  3. Describe your job in plain words. The AI follows the skill from there.
Claude Code — installs the whole folder, not just SKILL.md
npx degit K-Dense-AI/scientific-agent-skills/skills/tiledbvcf#main ~/.claude/skills/tiledbvcf

For one project only, change the path to .claude/skills/tiledbvcf.

Not working?
  • Check which app you pasted it into — the steps above name the right one.
  • Some skills need the paid tier of Claude or ChatGPT.
Step-by-step guide with screenshots · Ask in the forum

Paste into Claude, ChatGPT or Cursor.

Show the full text456 lines
tiledbvcf/SKILL.md456 lines14.2 KBpushed 52d agoRawView on GitHub

TileDB-VCF

Overview

TileDB-VCF is a high-performance C++ library with Python and CLI interfaces for efficient storage and retrieval of genomic variant-call data. Built on TileDB's sparse array technology, it enables scalable ingestion of VCF/BCF files, incremental sample addition without expensive merging operations, and efficient parallel queries of variant data stored locally or in the cloud.

When to Use This Skill

This skill should be used when:

  • Learning TileDB-VCF concepts and workflows
  • Prototyping genomics analyses and pipelines
  • Working with small-to-medium datasets (< 1000 samples)
  • Need incremental addition of new samples to existing datasets
  • Require efficient querying of specific genomic regions across many samples
  • Working with cloud-stored variant data (S3, Azure, GCS)
  • Need to export subsets of large VCF datasets
  • Building variant databases for cohort studies
  • Educational projects and method development
  • Performance is critical for variant data operations

Quick Start

Installation

Preferred Method: Conda/Mamba

# Enter the following two lines if you are on a M1 Mac
CONDA_SUBDIR=osx-64
conda config --env --set subdir osx-64

# Create the conda environment
conda create -n tiledb-vcf "python<3.10"
conda activate tiledb-vcf

# Mamba is a faster and more reliable alternative to conda
conda install -c conda-forge mamba

# Install TileDB-Py and TileDB-VCF, align with other useful libraries
mamba install -y -c conda-forge -c bioconda -c tiledb tiledb-py tiledbvcf-py pandas pyarrow numpy

Alternative: Docker Images

docker pull tiledb/tiledbvcf-py     # Python interface
docker pull tiledb/tiledbvcf-cli    # Command-line interface

Basic Examples

Create and populate a dataset:

import tiledbvcf

# Create a new dataset
ds = tiledbvcf.Dataset(uri="my_dataset", mode="w",
                      cfg=tiledbvcf.ReadConfig(memory_budget=1024))

# Ingest VCF files (must be single-sample with indexes)
# Requirements:
# - VCFs must be single-sample (not multi-sample)
# - Must have indexes: .csi (bcftools) or .tbi (tabix)
ds.ingest_samples(["sample1.vcf.gz", "sample2.vcf.gz"])

Query variant data:

# Open existing dataset for reading
ds = tiledbvcf.Dataset(uri="my_dataset", mode="r")

# Query specific regions and samples
df = ds.read(
    attrs=["sample_name", "pos_start", "pos_end", "alleles", "fmt_GT"],
    regions=["chr1:1000000-2000000", "chr2:500000-1500000"],
    samples=["sample1", "sample2", "sample3"]
)
print(df.head())

Export to VCF:

import os

# Export two VCF samples
ds.export(
    regions=["chr21:8220186-8405573"],
    samples=["HG00101", "HG00097"],
    output_format="v",
    output_dir=os.path.expanduser("~"),
)

Core Capabilities

1. Dataset Creation and Ingestion

Create TileDB-VCF datasets and incrementally ingest variant data from multiple VCF/BCF files. This is appropriate for building population genomics databases and cohort studies.

Requirements:

  • Single-sample VCFs only: Multi-sample VCFs are not supported
  • Index files required: VCF/BCF files must have indexes (.csi or .tbi)

Common operations:

  • Create new datasets with optimized array schemas
  • Ingest single or multiple VCF/BCF files in parallel
  • Add new samples incrementally without re-processing existing data
  • Configure memory usage and compression settings
  • Handle various VCF formats and INFO/FORMAT fields
  • Resume interrupted ingestion processes
  • Validate data integrity during ingestion

2. Efficient Querying and Filtering

Query variant data with high performance across genomic regions, samples, and variant attributes. This is appropriate for association studies, variant discovery, and population analysis.

Common operations:

  • Query specific genomic regions (single or multiple)
  • Filter by sample names or sample groups
  • Extract specific variant attributes (position, alleles, genotypes, quality)
  • Access INFO and FORMAT fields efficiently
  • Combine spatial and attribute-based filtering
  • Stream large query results
  • Perform aggregations across samples or regions

3. Data Export and Interoperability

Export data in various formats for downstream analysis or integration with other genomics tools. This is appropriate for sharing datasets, creating analysis subsets, or feeding other pipelines.

Common operations:

  • Export to standard VCF/BCF formats
  • Generate TSV files with selected fields
  • Create sample/region-specific subsets
  • Maintain data provenance and metadata
  • Lossless data export preserving all annotations
  • Compressed output formats
  • Streaming exports for large datasets

4. Population Genomics Workflows

TileDB-VCF excels at large-scale population genomics analyses requiring efficient access to variant data across many samples and genomic regions.

Common workflows:

  • Genome-wide association studies (GWAS) data preparation
  • Rare variant burden testing
  • Population stratification analysis
  • Allele frequency calculations across populations
  • Quality control across large cohorts
  • Variant annotation and filtering
  • Cross-population comparative analysis

Key Concepts

Array Schema and Data Model

TileDB-VCF Data Model:

  • Variants stored as sparse arrays with genomic coordinates as dimensions
  • Samples stored as attributes allowing efficient sample-specific queries
  • INFO and FORMAT fields preserved with original data types
  • Automatic compression and chunking for optimal storage

Schema Configuration:

# Custom schema with specific tile extents
config = tiledbvcf.ReadConfig(
    memory_budget=2048,  # MB
    region_partition=(0, 3095677412),  # Full genome
    sample_partition=(0, 10000)  # Up to 10k samples
)

Coordinate Systems and Regions

Critical: TileDB-VCF uses 1-based genomic coordinates following VCF standard:

  • Positions are 1-based (first base is position 1)
  • Ranges are inclusive on both ends
  • Region "chr1:1000-2000" includes positions 1000-2000 (1001 bases total)

Region specification formats:

# Single region
regions = ["chr1:1000000-2000000"]

# Multiple regions
regions = ["chr1:1000000-2000000", "chr2:500000-1500000"]

# Whole chromosome
regions = ["chr1"]

# BED-style (0-based, half-open converted internally)
regions = ["chr1:999999-2000000"]  # Equivalent to 1-based chr1:1000000-2000000

Memory Management

Performance considerations:

  1. Set appropriate memory budget based on available system memory
  2. Use streaming queries for very large result sets
  3. Partition large ingestions to avoid memory exhaustion
  4. Configure tile cache for repeated region access
  5. Use parallel ingestion for multiple files
  6. Optimize region queries by combining nearby regions

Cloud Storage Integration

TileDB-VCF seamlessly works with cloud storage:

# S3 dataset
ds = tiledbvcf.Dataset(uri="s3://bucket/dataset", mode="r")

# Azure Blob Storage
ds = tiledbvcf.Dataset(uri="azure://container/dataset", mode="r")

# Google Cloud Storage
ds = tiledbvcf.Dataset(uri="gcs://bucket/dataset", mode="r")

Common Pitfalls

  1. Memory exhaustion during ingestion: Use appropriate memory budget and batch processing for large VCF files
  2. Inefficient region queries: Combine nearby regions instead of many separate queries
  3. Missing sample names: Ensure sample names in VCF headers match query sample specifications
  4. Coordinate system confusion: Remember TileDB-VCF uses 1-based coordinates like VCF standard
  5. Large result sets: Use streaming or pagination for queries returning millions of variants
  6. Cloud permissions: Ensure proper authentication for cloud storage access
  7. Concurrent access: Multiple writers to the same dataset can cause corruption—use appropriate locking

CLI Usage

TileDB-VCF provides a command-line interface with the following subcommands:

Available Subcommands:

  • create - Creates an empty TileDB-VCF dataset
  • store - Ingests samples into a TileDB-VCF dataset
  • export - Exports data from a TileDB-VCF dataset
  • list - Lists all sample names present in a TileDB-VCF dataset
  • stat - Prints high-level statistics about a TileDB-VCF dataset
  • utils - Utils for working with a TileDB-VCF dataset
  • version - Print the version information and exit
# Create empty dataset
tiledbvcf create --uri my_dataset

# Ingest samples (requires single-sample VCFs with indexes)
tiledbvcf store --uri my_dataset --samples sample1.vcf.gz,sample2.vcf.gz

# Export data
tiledbvcf export --uri my_dataset \
  --regions "chr1:1000000-2000000" \
  --sample-names "sample1,sample2"

# List all samples
tiledbvcf list --uri my_dataset

# Show dataset statistics
tiledbvcf stat --uri my_dataset

Advanced Features

Allele Frequency Analysis

# Calculate allele frequencies
af_df = tiledbvcf.read_allele_frequency(
    uri="my_dataset",
    regions=["chr1:1000000-2000000"],
    samples=["sample1", "sample2", "sample3"]
)

Sample Quality Control

# Perform sample QC
qc_results = tiledbvcf.sample_qc(
    uri="my_dataset",
    samples=["sample1", "sample2"]
)

Custom Configurations

# Advanced configuration
config = tiledbvcf.ReadConfig(
    memory_budget=4096,
    tiledb_config={
        "sm.tile_cache_size": "1000000000",
        "vfs.s3.region": "us-east-1"
    }
)

Resources

Getting Help

Open Source TileDB-VCF Resources

Open Source Documentation:

TileDB-Cloud Resources

For Large-Scale/Production Genomics:

Getting Started:

Scaling to TileDB-Cloud

When your genomics workloads outgrow single-node processing, TileDB-Cloud provides enterprise-scale capabilities for production genomics pipelines.

Note: This section covers TileDB-Cloud capabilities based on available documentation. For complete API details and current functionality, consult the official TileDB-Cloud documentation and API reference.

Setting Up TileDB-Cloud

1. Create Account and Get API Token

# Sign up at https://cloud.tiledb.com
# Generate API token in your account settings

2. Install TileDB-Cloud Python Client

# Base installation
uv pip install tiledb-cloud

# With genomics-specific functionality
uv pip install tiledb-cloud[life-sciences]

3. Configure Authentication

# Set environment variable with your API token
export TILEDB_REST_TOKEN="your_api_token"
import tiledb.cloud

# Authentication is automatic via TILEDB_REST_TOKEN
# No explicit login required in code

Migrating from Open Source to TileDB-Cloud

Large-Scale Ingestion

# TileDB-Cloud: Distributed VCF ingestion
import tiledb.cloud.vcf

# Use specialized VCF ingestion module
# Note: Exact API requires TileDB-Cloud documentation
# This represents the available functionality structure
tiledb.cloud.vcf.ingestion.ingest_vcf_dataset(
    source="s3://my-bucket/vcf-files/",
    output="tiledb://my-namespace/large-dataset",
    namespace="my-namespace",
    acn="my-s3-credentials",
    ingest_resources={"cpu": "16", "memory": "64Gi"}
)

Distributed Query Processing

# TileDB-Cloud: VCF querying across distributed storage
import tiledb.cloud.vcf
import tiledbvcf

# Define the dataset URI
dataset_uri = "tiledb://TileDB-Inc/gvcf-1kg-dragen-v376"

# Get all samples from the dataset
ds = tiledbvcf.Dataset(dataset_uri, tiledb_config=cfg)
samples = ds.samples()

# Define attributes and ranges to query on
attrs = ["sample_name", "fmt_GT", "fmt_AD", "fmt_DP"]
regions = ["chr13:32396898-32397044", "chr13:32398162-32400268"]

# Perform the read, which is executed in a distributed fashion
df = tiledb.cloud.vcf.read(
    dataset_uri=dataset_uri,
    regions=regions,
    samples=samples,
    attrs=attrs,
    namespace="my-namespace",  # specifies which account to charge
)
df.to_pandas()

Enterprise Features

Data Sharing and Collaboration

# TileDB-Cloud provides enterprise data sharing capabilities
# through namespace-based permissions and group management

# Access shared datasets via TileDB-Cloud URIs
dataset_uri = "tiledb://shared-namespace/population-study"

# Collaborate through shared notebooks and compute resources
# (Specific API requires TileDB-Cloud documentation)

Cost Optimization

  • Serverless Compute: Pay only for actual compute time
  • Auto-scaling: Automatically scale up/down based on workload
  • Spot Instances: Use cost-optimized compute for batch jobs
  • Data Tiering: Automatic hot/cold storage management

Security and Compliance

  • End-to-end Encryption: Data encrypted in transit and at rest
  • Access Controls: Fine-grained permissions and audit logs
  • HIPAA/SOC2 Compliance: Enterprise security standards
  • VPC Support: Deploy in private cloud environments

When to Migrate Checklist

Migrate to TileDB-Cloud if you have:

  • Datasets > 1000 samples
  • Need to process > 100GB of VCF data
  • Require distributed computing
  • Multiple team members need access
  • Need enterprise security/compliance
  • Want cost-optimized serverless compute
  • Require 24/7 production uptime

Getting Started with TileDB-Cloud

  1. Start Free: TileDB-Cloud offers free tier for evaluation
  2. Migration Support: TileDB team provides migration assistance
  3. Training: Access to genomics-specific tutorials and examples
  4. Professional Services: Custom deployment and optimization

Next Steps:

1---
2name: tiledbvcf
3description: Efficient storage and retrieval of genomic variant data using TileDB. Scalable VCF/BCF ingestion, incremental sample addition, compressed storage, parallel queries, and export capabilities for population genomics.
4license: MIT license
5metadata:
6 version: "1.1"
7 skill-author: Jeremy Leipzig
8---
9 
10# TileDB-VCF
11 
12## Overview
13 
14TileDB-VCF is a high-performance C++ library with Python and CLI interfaces for efficient storage and retrieval of genomic variant-call data. Built on TileDB's sparse array technology, it enables scalable ingestion of VCF/BCF files, incremental sample addition without expensive merging operations, and efficient parallel queries of variant data stored locally or in the cloud.
15 
16## When to Use This Skill
17 
18This skill should be used when:
19- Learning TileDB-VCF concepts and workflows
20- Prototyping genomics analyses and pipelines
21- Working with small-to-medium datasets (< 1000 samples)
22- Need incremental addition of new samples to existing datasets
23- Require efficient querying of specific genomic regions across many samples
24- Working with cloud-stored variant data (S3, Azure, GCS)
25- Need to export subsets of large VCF datasets
26- Building variant databases for cohort studies
27- Educational projects and method development
28- Performance is critical for variant data operations
29 
30## Quick Start
31 
32### Installation
33 
34**Preferred Method: Conda/Mamba**
35```bash
36# Enter the following two lines if you are on a M1 Mac
37CONDA_SUBDIR=osx-64
38conda config --env --set subdir osx-64
39 
40# Create the conda environment
41conda create -n tiledb-vcf "python<3.10"
42conda activate tiledb-vcf
43 
44# Mamba is a faster and more reliable alternative to conda
45conda install -c conda-forge mamba
46 
47# Install TileDB-Py and TileDB-VCF, align with other useful libraries
48mamba install -y -c conda-forge -c bioconda -c tiledb tiledb-py tiledbvcf-py pandas pyarrow numpy
49```
50 
51**Alternative: Docker Images**
52```bash
53docker pull tiledb/tiledbvcf-py # Python interface
54docker pull tiledb/tiledbvcf-cli # Command-line interface
55```
56 
57### Basic Examples
58 
59**Create and populate a dataset:**
60```python
61import tiledbvcf
62 
63# Create a new dataset
64ds = tiledbvcf.Dataset(uri="my_dataset", mode="w",
65 cfg=tiledbvcf.ReadConfig(memory_budget=1024))
66 
67# Ingest VCF files (must be single-sample with indexes)
68# Requirements:
69# - VCFs must be single-sample (not multi-sample)
70# - Must have indexes: .csi (bcftools) or .tbi (tabix)
71ds.ingest_samples(["sample1.vcf.gz", "sample2.vcf.gz"])
72```
73 
74**Query variant data:**
75```python
76# Open existing dataset for reading
77ds = tiledbvcf.Dataset(uri="my_dataset", mode="r")
78 
79# Query specific regions and samples
80df = ds.read(
81 attrs=["sample_name", "pos_start", "pos_end", "alleles", "fmt_GT"],
82 regions=["chr1:1000000-2000000", "chr2:500000-1500000"],
83 samples=["sample1", "sample2", "sample3"]
84)
85print(df.head())
86```
87 
88**Export to VCF:**
89```python
90import os
91 
92# Export two VCF samples
93ds.export(
94 regions=["chr21:8220186-8405573"],
95 samples=["HG00101", "HG00097"],
96 output_format="v",
97 output_dir=os.path.expanduser("~"),
98)
99```
100 
101## Core Capabilities
102 
103### 1. Dataset Creation and Ingestion
104 
105Create TileDB-VCF datasets and incrementally ingest variant data from multiple VCF/BCF files. This is appropriate for building population genomics databases and cohort studies.
106 
107**Requirements:**
108- **Single-sample VCFs only**: Multi-sample VCFs are not supported
109- **Index files required**: VCF/BCF files must have indexes (.csi or .tbi)
110 
111**Common operations:**
112- Create new datasets with optimized array schemas
113- Ingest single or multiple VCF/BCF files in parallel
114- Add new samples incrementally without re-processing existing data
115- Configure memory usage and compression settings
116- Handle various VCF formats and INFO/FORMAT fields
117- Resume interrupted ingestion processes
118- Validate data integrity during ingestion
119 
120 
121### 2. Efficient Querying and Filtering
122 
123Query variant data with high performance across genomic regions, samples, and variant attributes. This is appropriate for association studies, variant discovery, and population analysis.
124 
125**Common operations:**
126- Query specific genomic regions (single or multiple)
127- Filter by sample names or sample groups
128- Extract specific variant attributes (position, alleles, genotypes, quality)
129- Access INFO and FORMAT fields efficiently
130- Combine spatial and attribute-based filtering
131- Stream large query results
132- Perform aggregations across samples or regions
133 
134 
135### 3. Data Export and Interoperability
136 
137Export data in various formats for downstream analysis or integration with other genomics tools. This is appropriate for sharing datasets, creating analysis subsets, or feeding other pipelines.
138 
139**Common operations:**
140- Export to standard VCF/BCF formats
141- Generate TSV files with selected fields
142- Create sample/region-specific subsets
143- Maintain data provenance and metadata
144- Lossless data export preserving all annotations
145- Compressed output formats
146- Streaming exports for large datasets
147 
148 
149### 4. Population Genomics Workflows
150 
151TileDB-VCF excels at large-scale population genomics analyses requiring efficient access to variant data across many samples and genomic regions.
152 
153**Common workflows:**
154- Genome-wide association studies (GWAS) data preparation
155- Rare variant burden testing
156- Population stratification analysis
157- Allele frequency calculations across populations
158- Quality control across large cohorts
159- Variant annotation and filtering
160- Cross-population comparative analysis
161 
162 
163## Key Concepts
164 
165### Array Schema and Data Model
166 
167**TileDB-VCF Data Model:**
168- Variants stored as sparse arrays with genomic coordinates as dimensions
169- Samples stored as attributes allowing efficient sample-specific queries
170- INFO and FORMAT fields preserved with original data types
171- Automatic compression and chunking for optimal storage
172 
173**Schema Configuration:**
174```python
175# Custom schema with specific tile extents
176config = tiledbvcf.ReadConfig(
177 memory_budget=2048, # MB
178 region_partition=(0, 3095677412), # Full genome
179 sample_partition=(0, 10000) # Up to 10k samples
180)
181```
182 
183### Coordinate Systems and Regions
184 
185**Critical:** TileDB-VCF uses **1-based genomic coordinates** following VCF standard:
186- Positions are 1-based (first base is position 1)
187- Ranges are inclusive on both ends
188- Region "chr1:1000-2000" includes positions 1000-2000 (1001 bases total)
189 
190**Region specification formats:**
191```python
192# Single region
193regions = ["chr1:1000000-2000000"]
194 
195# Multiple regions
196regions = ["chr1:1000000-2000000", "chr2:500000-1500000"]
197 
198# Whole chromosome
199regions = ["chr1"]
200 
201# BED-style (0-based, half-open converted internally)
202regions = ["chr1:999999-2000000"] # Equivalent to 1-based chr1:1000000-2000000
203```
204 
205### Memory Management
206 
207**Performance considerations:**
2081. **Set appropriate memory budget** based on available system memory
2092. **Use streaming queries** for very large result sets
2103. **Partition large ingestions** to avoid memory exhaustion
2114. **Configure tile cache** for repeated region access
2125. **Use parallel ingestion** for multiple files
2136. **Optimize region queries** by combining nearby regions
214 
215### Cloud Storage Integration
216 
217TileDB-VCF seamlessly works with cloud storage:
218```python
219# S3 dataset
220ds = tiledbvcf.Dataset(uri="s3://bucket/dataset", mode="r")
221 
222# Azure Blob Storage
223ds = tiledbvcf.Dataset(uri="azure://container/dataset", mode="r")
224 
225# Google Cloud Storage
226ds = tiledbvcf.Dataset(uri="gcs://bucket/dataset", mode="r")
227```
228 
229## Common Pitfalls
230 
2311. **Memory exhaustion during ingestion:** Use appropriate memory budget and batch processing for large VCF files
2322. **Inefficient region queries:** Combine nearby regions instead of many separate queries
2333. **Missing sample names:** Ensure sample names in VCF headers match query sample specifications
2344. **Coordinate system confusion:** Remember TileDB-VCF uses 1-based coordinates like VCF standard
2355. **Large result sets:** Use streaming or pagination for queries returning millions of variants
2366. **Cloud permissions:** Ensure proper authentication for cloud storage access
2377. **Concurrent access:** Multiple writers to the same dataset can cause corruption—use appropriate locking
238 
239## CLI Usage
240 
241TileDB-VCF provides a command-line interface with the following subcommands:
242 
243**Available Subcommands:**
244- `create` - Creates an empty TileDB-VCF dataset
245- `store` - Ingests samples into a TileDB-VCF dataset
246- `export` - Exports data from a TileDB-VCF dataset
247- `list` - Lists all sample names present in a TileDB-VCF dataset
248- `stat` - Prints high-level statistics about a TileDB-VCF dataset
249- `utils` - Utils for working with a TileDB-VCF dataset
250- `version` - Print the version information and exit
251 
252```bash
253# Create empty dataset
254tiledbvcf create --uri my_dataset
255 
256# Ingest samples (requires single-sample VCFs with indexes)
257tiledbvcf store --uri my_dataset --samples sample1.vcf.gz,sample2.vcf.gz
258 
259# Export data
260tiledbvcf export --uri my_dataset \
261 --regions "chr1:1000000-2000000" \
262 --sample-names "sample1,sample2"
263 
264# List all samples
265tiledbvcf list --uri my_dataset
266 
267# Show dataset statistics
268tiledbvcf stat --uri my_dataset
269```
270 
271## Advanced Features
272 
273### Allele Frequency Analysis
274```python
275# Calculate allele frequencies
276af_df = tiledbvcf.read_allele_frequency(
277 uri="my_dataset",
278 regions=["chr1:1000000-2000000"],
279 samples=["sample1", "sample2", "sample3"]
280)
281```
282 
283### Sample Quality Control
284```python
285# Perform sample QC
286qc_results = tiledbvcf.sample_qc(
287 uri="my_dataset",
288 samples=["sample1", "sample2"]
289)
290```
291 
292### Custom Configurations
293```python
294# Advanced configuration
295config = tiledbvcf.ReadConfig(
296 memory_budget=4096,
297 tiledb_config={
298 "sm.tile_cache_size": "1000000000",
299 "vfs.s3.region": "us-east-1"
300 }
301)
302```
303 
304 
305## Resources
306 
307## Getting Help
308 
309### Open Source TileDB-VCF Resources
310 
311**Open Source Documentation:**
312- TileDB Academy: https://cloud.tiledb.com/academy/
313- Population Genomics Guide: https://cloud.tiledb.com/academy/structure/life-sciences/population-genomics/
314- TileDB-VCF GitHub: https://github.com/TileDB-Inc/TileDB-VCF
315 
316### TileDB-Cloud Resources
317 
318**For Large-Scale/Production Genomics:**
319- TileDB-Cloud Platform: https://cloud.tiledb.com
320- TileDB Academy (All Documentation): https://cloud.tiledb.com/academy/
321 
322**Getting Started:**
323- Free account signup: https://cloud.tiledb.com
324- Contact: [email protected] for enterprise needs
325 
326## Scaling to TileDB-Cloud
327 
328When your genomics workloads outgrow single-node processing, TileDB-Cloud provides enterprise-scale capabilities for production genomics pipelines.
329 
330**Note**: This section covers TileDB-Cloud capabilities based on available documentation. For complete API details and current functionality, consult the official TileDB-Cloud documentation and API reference.
331 
332### Setting Up TileDB-Cloud
333 
334**1. Create Account and Get API Token**
335```bash
336# Sign up at https://cloud.tiledb.com
337# Generate API token in your account settings
338```
339 
340**2. Install TileDB-Cloud Python Client**
341```bash
342# Base installation
343uv pip install tiledb-cloud
344 
345# With genomics-specific functionality
346uv pip install tiledb-cloud[life-sciences]
347```
348 
349**3. Configure Authentication**
350```bash
351# Set environment variable with your API token
352export TILEDB_REST_TOKEN="your_api_token"
353```
354 
355```python
356import tiledb.cloud
357 
358# Authentication is automatic via TILEDB_REST_TOKEN
359# No explicit login required in code
360```
361 
362### Migrating from Open Source to TileDB-Cloud
363 
364**Large-Scale Ingestion**
365```python
366# TileDB-Cloud: Distributed VCF ingestion
367import tiledb.cloud.vcf
368 
369# Use specialized VCF ingestion module
370# Note: Exact API requires TileDB-Cloud documentation
371# This represents the available functionality structure
372tiledb.cloud.vcf.ingestion.ingest_vcf_dataset(
373 source="s3://my-bucket/vcf-files/",
374 output="tiledb://my-namespace/large-dataset",
375 namespace="my-namespace",
376 acn="my-s3-credentials",
377 ingest_resources={"cpu": "16", "memory": "64Gi"}
378)
379```
380 
381**Distributed Query Processing**
382```python
383# TileDB-Cloud: VCF querying across distributed storage
384import tiledb.cloud.vcf
385import tiledbvcf
386 
387# Define the dataset URI
388dataset_uri = "tiledb://TileDB-Inc/gvcf-1kg-dragen-v376"
389 
390# Get all samples from the dataset
391ds = tiledbvcf.Dataset(dataset_uri, tiledb_config=cfg)
392samples = ds.samples()
393 
394# Define attributes and ranges to query on
395attrs = ["sample_name", "fmt_GT", "fmt_AD", "fmt_DP"]
396regions = ["chr13:32396898-32397044", "chr13:32398162-32400268"]
397 
398# Perform the read, which is executed in a distributed fashion
399df = tiledb.cloud.vcf.read(
400 dataset_uri=dataset_uri,
401 regions=regions,
402 samples=samples,
403 attrs=attrs,
404 namespace="my-namespace", # specifies which account to charge
405)
406df.to_pandas()
407```
408 
409### Enterprise Features
410 
411**Data Sharing and Collaboration**
412```python
413# TileDB-Cloud provides enterprise data sharing capabilities
414# through namespace-based permissions and group management
415 
416# Access shared datasets via TileDB-Cloud URIs
417dataset_uri = "tiledb://shared-namespace/population-study"
418 
419# Collaborate through shared notebooks and compute resources
420# (Specific API requires TileDB-Cloud documentation)
421```
422 
423**Cost Optimization**
424- **Serverless Compute**: Pay only for actual compute time
425- **Auto-scaling**: Automatically scale up/down based on workload
426- **Spot Instances**: Use cost-optimized compute for batch jobs
427- **Data Tiering**: Automatic hot/cold storage management
428 
429**Security and Compliance**
430- **End-to-end Encryption**: Data encrypted in transit and at rest
431- **Access Controls**: Fine-grained permissions and audit logs
432- **HIPAA/SOC2 Compliance**: Enterprise security standards
433- **VPC Support**: Deploy in private cloud environments
434 
435### When to Migrate Checklist
436 
437**Migrate to TileDB-Cloud if you have:**
438- [ ] Datasets > 1000 samples
439- [ ] Need to process > 100GB of VCF data
440- [ ] Require distributed computing
441- [ ] Multiple team members need access
442- [ ] Need enterprise security/compliance
443- [ ] Want cost-optimized serverless compute
444- [ ] Require 24/7 production uptime
445 
446### Getting Started with TileDB-Cloud
447 
4481. **Start Free**: TileDB-Cloud offers free tier for evaluation
4492. **Migration Support**: TileDB team provides migration assistance
4503. **Training**: Access to genomics-specific tutorials and examples
4514. **Professional Services**: Custom deployment and optimization
452 
453**Next Steps:**
454- Visit https://cloud.tiledb.com to create account
455- Review documentation at https://cloud.tiledb.com/academy/
456- Contact [email protected] for enterprise needs

Discussion

Alternatives

Also in Genomics & omics
AnndataData structure for annotated matrices in single-cell analysis. Use when working with .h5ad files or integrating with the scverse ecosystem. This is the data format skill—for analysis workflows use scanpy; for probabilistic models use scvi-tools; for population-scale queries use cellxgene-census.Science · MITArboretoInfer gene regulatory networks (GRNs) from gene expression data using scalable algorithms (GRNBoost2, GENIE3). Use when analyzing transcriptomics data (bulk RNA-seq, single-cell RNA-seq) to identify transcription factor-target gene relationships and regulatory interactions. Supports distributed computation for large-scale datasets.Science · MITBiopython: Computational Molecular Biology in PythonComprehensive molecular biology toolkit. Use for sequence manipulation, file parsing (FASTA/GenBank/PDB), phylogenetics, and programmatic NCBI/PubMed access (Bio.Entrez). Best for batch processing, custom bioinformatics pipelines, BLAST automation. For quick lookups use gget; for multi-service integration use bioservices.Science · MITBulk rnaseqEnd-to-end bulk RNA-seq orchestrator — takes raw FASTQ reads through QC and trimming (FastQC, fastp/Trim Galore), alignment and quantification (STAR, Salmon, featureCounts), assembles a gene-level counts matrix, then hands off to differential expression (pydeseq2), pathway/GSEA enrichment (pathway-enrichment), and publication figures (scientific-visualization). Use whenever the user has bulk RNA-seq reads or quant output and wants a complete, reproducible differential-expression workflow — e.g. "analyze my RNA-seq", "FASTQ to DESeq2", "run nf-core/rnaseq", "STAR/Salmon quantification", "build a counts matrix for DESeq2", or "go from reads to differentially expressed genes and enriched pathways". Routes between an nf-core/rnaseq (Nextflow) path and a standalone STAR/Salmon path, and covers experimental design, strandedness, and QC gates. For single-cell RNA-seq use the scanpy skill instead.Science · MIT