HeliosDB Full is a licensed SQL database that serves PostgreSQL, MySQL and Oracle clients and an HTTP gateway with vector stores, hybrid search and document retrieval from one server; in-database machine learning is planned. MinIO AIStor is an S3 object store that hands AI work to external services; an S3-compatible object API for HeliosDB Full is on the roadmap. HeliosDB Full is licensed SSPL-1.0.
Last updated
Choose HeliosDB Full when you want SQL tables and vector stores with hybrid search on the same server as your data (in-database machine learning is planned); keep MinIO AIStor when S3 object storage, petabyte-scale blob storage, erasure-coded durability, an Iceberg catalog or an existing ML platform is the main requirement. HeliosDB Full does not offer an S3 API today, so the two sit side by side rather than one replacing the other.
MinIO AIStor is MinIO's enterprise rebrand -- the same S3-compatible object store with Iceberg table support, webhook-based "AI hooks" (promptObject), and integrations to external ML services. It positions itself as "AI storage infrastructure." HeliosDB Full is a multi-protocol SQL database whose HTTP gateway serves vector stores with hybrid search, document ingest, embeddings and chat completions; in-database ML training, anomaly detection and autonomous agents are planned. AIStor connects to AI tools; HeliosDB Full serves retrieval next to the data.
| Feature | MinIO AIStor | HeliosDB |
|---|---|---|
| Primary purpose | S3 object store + Iceberg tables | Multi-protocol SQL database with an HTTP AI gateway |
| Query language | S3 Select (single-file) | Full SQL |
| Vector search | External engine | HNSW vector stores over the HTTP gateway; SQL vector indexes planned |
| RAG pipelines | promptObject hooks | Document ingest, vector stores and hybrid search over the HTTP gateway; Graph-RAG planned |
| ML model training | External framework | Planned |
| Autonomous agents | None | Planned |
| Anomaly detection | None | Planned |
| Natural language queries | None | Planned (NL-to-SQL) |
| ML-based data tiering | Manual lifecycle rules | Planned |
| Threat detection | None | Planned (with the object API) |
| Protocol adapters | S3 + Iceberg REST catalog | PostgreSQL, MySQL and Oracle listeners and an HTTP gateway on the shared tables; Redis in memory; MongoDB, Cassandra and SQL Server connect and authenticate (data path planned) |
| ACID transactions | Single-object atomicity | Multi-statement MVCC |
| Triggers / UDFs | None (webhook events) | PL/pgSQL (WASM procedures planned) |
| Graph database | None | Planned (Cypher and GQL) |
| Time-travel | Object versioning (linear) | Planned, with branching (the current release accepts the syntax but does not read historical snapshots or create branches) |
| Encryption | SSE-S3 / SSE-KMS / SSE-C | Planned: encryption at rest with key rotation and cloud KMS, and post-quantum TLS |
| Compliance | Basic (enterprise contract) | Compliance framework for SOC 2 / HIPAA / GDPR / PCI-DSS controls planned; SOC 2 Type II audit in progress |
| Deployment | 4+ nodes minimum for production | Single server (clustering and sharding planned) |
| Pricing | ~$96K/year enterprise license | SSPL-1.0; annual license, custom-priced (pricing) |
Cells are keyed to the fuller notes below — read the note before treating a short cell as the whole story.
promptObject hooks out to external LLMs. HeliosDB Full's HTTP gateway ingests and searches documents, serves vector stores with hybrid search and forwards chat completions to a configured provider; Graph-RAG for HeliosDB Full is planned.AS OF) and Git-like branches; for HeliosDB Full both are planned (the current release accepts the syntax but does not read historical snapshots or create branches).MinIO AIStor calls itself "AI storage infrastructure." In practice, this means it stores objects and fires webhooks to external AI services. Every intelligence capability -- embeddings, search, training, inference -- lives in a separate process that you deploy, configure, and maintain yourself. AIStor is a storage layer with hooks, not an AI system.
HeliosDB Full takes a different approach: its retrieval features run in the same server as its SQL tables, so there is one service to deploy for both. In-database model training is planned.
+------------------+
| MinIO AIStor | (stores objects, fires webhooks)
+--------+---------+
|
| promptObject / webhooks / S3 notifications
|
+----+-----+ +-----------+ +------------+
| PyTorch | | Milvus | | LangChain |
| (train) | | (vectors) | | (RAG) |
+----------+ +-----------+ +------------+
| | |
+----+-----+ +----+------+ +-----+------+
| TensorFlow| | LanceDB | | External |
| (infer) | | (backup) | | LLM API |
+----------+ +-----------+ +------------+
6+ services to deploy, monitor, version, and keep alive
No ACID across the pipeline
Latency: network hop on every AI operation
Failure domain: any service down = pipeline broken
HeliosDB Full serves its SQL tables over the PostgreSQL, MySQL and Oracle listeners and, from the same server, an HTTP gateway with vector stores, hybrid search, document ingest, embeddings, chat completions and agent memory. In-database model training, NL-to-SQL and autonomous agents are planned.
AIStor has no vector index. To do similarity search, you store embeddings in Milvus, LanceDB, or Weaviate -- services that use AIStor as their blob backend. The result is two separate query paths with no ACID consistency between them.
# AIStor + Milvus: two systems, two queries, no ACID
# Step 1: Store raw document in AIStor
s3.put_object(Bucket='docs', Key='report.pdf', Body=pdf_bytes)
# Step 2: Generate embedding externally
embedding = openai.embeddings.create(input=text, model='text-embedding-3-small')
# Step 3: Store embedding in Milvus (which itself uses AIStor for persistence)
milvus.insert(collection='documents', data=[{
'embedding': embedding.data[0].embedding,
's3_key': 'report.pdf'
}])
# Step 4: Search requires querying Milvus, then fetching from AIStor
results = milvus.search(
collection='documents',
data=[query_embedding],
limit=5,
output_fields=['s3_key']
)
# Step 5: Fetch actual documents from AIStor
for hit in results[0]:
obj = s3.get_object(Bucket='docs', Key=hit.entity.get('s3_key'))
# ... process
# Problems:
# - Document deleted from AIStor? Milvus still returns it (stale index)
# - Milvus insert fails? Document exists without embedding (orphan)
# - No transactional guarantee across the two systems
# - Network round-trip on every search + fetch
HeliosDB Full keeps embeddings in vector stores on its HTTP gateway and searches them with hybrid search (POST /api/v1/vectors/stores/{store}/search/hybrid), next to the SQL tables on the same server. Vector columns, HNSW indexes and distance operators in SQL, so that a row and its embedding change in one transaction, are planned for HeliosDB Full.
AIStor's "AI feature" is promptObject: a webhook-style API that sends an object's content to an external LLM and returns the response. It does not chunk, embed, index, rerank, or cache. It is an HTTP proxy to an LLM endpoint.
# AIStor promptObject: send object to external LLM
import requests
response = requests.post('http://aistor:9000/prompt', json={
'bucket': 'docs',
'key': 'report.pdf',
'prompt': 'Summarize this document',
'model': 'gpt-4' # external LLM required
})
# What promptObject does NOT do:
# - Chunk the document intelligently
# - Generate or store embeddings
# - Perform multi-source retrieval
# - Rerank results by relevance
# - Cache responses
# - Support graph-based RAG
# - Handle multi-turn conversations
#
# For real RAG, you still need:
# LangChain + Milvus + embedding API + chunking logic + reranking model
Retrieval in SQL, with vector and full-text scores fused in one query, is planned for HeliosDB Full.
The HTTP gateway also serves vector stores with hybrid search (POST /api/v1/vectors/stores/{store}/search/hybrid), document ingest and search, and chat completions forwarded to a configured provider. Graph-RAG for HeliosDB Full is planned.
AIStor expects you to tune, scale and secure your infrastructure manually. Cognitive agents for HeliosDB Full (performance tuning, self-healing, data quality, query optimization and security response) are planned; the current server does not start them, so plan to tune and monitor HeliosDB Full yourself today.
Not today. An S3-compatible object API for HeliosDB Full is on the roadmap and is not part of the current release. The bucket-management SQL statements described in earlier release notes (CREATE BUCKET, lifecycle rules, natural-language policies, presign_url(), object lock and legal hold, threat scans and MIGRATE BUCKET) are planned together with it; do not rely on them for retention or legal hold (release notes · protocol hub).
| Object-storage capability | MinIO AIStor | HeliosDB Full |
|---|---|---|
| S3-compatible object API | Native | Planned |
| Bucket management | S3 API and console | Planned, in SQL |
| Presigned URLs | SDK / CLI | Planned |
| Lifecycle and ML tiering | Manual lifecycle rules | Planned |
| Object lock / legal hold | Supported | Planned |
| Threat scan on ingest | None | Planned |
| Bucket migration | — | Planned (MIGRATE BUCKET) |
These limits apply to HeliosDB Full, the edition this page compares. If you are looking at the embedded HeliosDB Nano instead, note that in the stock Nano server, row-level security is enforced through the embedded API and the REPL; SQL CREATE POLICY and enforcement for REST and wire clients are planned (Nano deployment modes).
heliosdb-full opens no GraphQL, ClickHouse, DB2 or Pinecone listener, and /snowflake/ paths answer 501; those interfaces are on the roadmap, and today the same data is reached over PostgreSQL or POST /api/v1/query. Protocol compatibility matrixMoving from AIStor to HeliosDB Full today means loading the data you query into tables, not switching an S3 endpoint: the S3-compatible object API and MIGRATE BUCKET are on the roadmap and are not part of the current release. Keep the objects in AIStor and bring the structured data and its embeddings into HeliosDB Full.
Files, model checkpoints and backups stay in AIStor; your applications keep their S3 endpoint.
import boto3, csv, io, psycopg2
s3 = boto3.client('s3', endpoint_url='http://aistor-cluster:9000')
conn = psycopg2.connect("host=heliosdb port=5432 dbname=helios")
cur = conn.cursor()
# Read a CSV object from AIStor and load its rows over the PostgreSQL wire
body = s3.get_object(Bucket='data-lake', Key='orders/2026-01.csv')['Body'].read()
for row in csv.DictReader(io.StringIO(body.decode('utf-8'))):
cur.execute(
"INSERT INTO orders (order_id, customer_id, total) VALUES (%s, %s, %s)",
(row['order_id'], row['customer_id'], row['total']),
)
conn.commit()
In HeliosDB Full, embeddings live in vector stores on the HTTP gateway (default port 8443), on the same server as the tables. Add each row's text with its primary key in the metadata, search the store, then read the matching rows over the PostgreSQL wire. Start the server with HELIOSDB_API_KEY set; every gateway route except the health probes requires it, sent as X-API-Key or Authorization: Bearer.
# Create a store (the dimension is taken from the first embedding)
curl -s -X POST http://heliosdb:8443/api/v1/vectors/stores \
-H "X-API-Key: $HELIOSDB_API_KEY" \
-H 'Content-Type: application/json' \
-d '{"name": "documents"}'
# Add texts; the gateway embeds them with the configured provider
curl -s -X POST http://heliosdb:8443/api/v1/vectors/stores/documents/texts \
-H "X-API-Key: $HELIOSDB_API_KEY" \
-H 'Content-Type: application/json' \
-d '{"texts": [{"id": "doc-42", "text": "Q3 budget review ...", "metadata": {"row_id": 42, "department": "finance"}}]}'
# Hybrid search: BM25 and cosine scores fused; each hit returns id, text, score and metadata
curl -s -X POST http://heliosdb:8443/api/v1/vectors/stores/documents/search/hybrid \
-H "X-API-Key: $HELIOSDB_API_KEY" \
-H 'Content-Type: application/json' \
-d '{"query": "budget overruns", "top_k": 10, "bm25_weight": 0.5, "cosine_weight": 0.5}'
Vector columns, HNSW indexes and distance operators in SQL are planned for HeliosDB Full.
| Dimension | MinIO AIStor | HeliosDB |
|---|---|---|
| Architecture | S3 store + webhooks to external AI | One server: SQL listeners and an HTTP AI gateway (vector stores, retrieval, chat); ML and agents planned |
| AI approach | Hooks to external services (bolted on) | Retrieval served by the same server; ML training planned |
| Vector search | Requires Milvus / LanceDB | HNSW vector stores over HTTP; SQL vector indexes with PQ planned |
| RAG | promptObject (LLM proxy) | Document ingest, vector stores and hybrid search over the HTTP gateway; retrieval in SQL and Graph-RAG planned |
| ML training | External (PyTorch/TF) | Planned |
| Autonomous ops | Manual tuning and monitoring | Planned (cognitive agents) |
| Query power | S3 Select (single file) | Full SQL optimizer |
| Transactions | Single-object | Multi-statement MVCC (Serializable) |
| Protocols | S3 + Iceberg REST | 8 listeners: 7 database wire protocols + HTTP (MongoDB, Cassandra and SQL Server connect and authenticate; data path planned) |
| Encryption | SSE-S3 / KMS / C | Planned: encryption at rest with cloud KMS, post-quantum TLS |
| Compliance | Basic / contract-based | Control framework planned; SOC 2 Type II audit in progress |
| Deployment | 4+ node cluster | Single server (clustering planned) |
| Cost | ~$96K/year enterprise | SSPL-1.0; annual license through sales |
| S3 compatible | Yes (native) | Planned (not in the current release) |
| Migration | -- | Load the data you query over the PostgreSQL wire; S3 endpoint migration planned |
MinIO AIStor is excellent infrastructure for teams that already have a mature AI/ML platform and need a fast S3 backend. HeliosDB Full is for teams that want SQL tables and vector retrieval served by one licensed server, with in-database ML on the roadmap. HeliosDB Full works alongside AIStor as the query and AI layer for the data you load into it; an S3-compatible object API for HeliosDB Full is on the roadmap, so it does not replace AIStor today.
HeliosDB Full is licensed through sales under SSPL-1.0. HeliosDB Nano is open source under Apache 2.0 and free to use.