🔷 The AI-native hybrid search database
Powerful AI search capabilities · Lightweight · Production-ready
🚀 What is OceanBase SeekDB?
OceanBase SeekDB is the lightweight, embedded version of OceanBase Database - a powerful AI search database designed for the AI applications. It combines enterprise-grade database capabilities with cutting-edge **AI search ** features, such as Vector search, fulltext search, Json.
🔥 Why OceanBase SeekDB?
| Feature | OceanBase SeekDB | Traditional DB | Vector-only DB | Full-Text Engine |
|---|---|---|---|---|
| Embedded Mode | ✅ Native | ⚠️ Possible | ⚠️ Possible | ⚠️ Possible |
| SQL Support | ✅ Full SQL | ✅ Full SQL | ❌ Limited | ❌ Limited |
| Vector Search | ✅ Built-in | ❌ Limited | ✅ Supported | ❌ Limited |
| Full-Text Search | ✅ Built-in | ✅ Supported | ❌ Limited | ✅ Advanced |
| Json | ✅ Yes | ⚠️ Varies by Product | ❌ Not Supported | ❌ Not Supported |
| ACID Transactions | ✅ Full | ✅ Full | ❌ Limited | ❌ Limited |
| Easy Migration | ✅ MySQL Compatible | ✅ Standard | ❌ No | ❌ No |
✨ Key Features
🎯 AI-Powered Search
- Vector Similarity Search: Optimize vector query accuracy, performance, and cost for different scenarios using different algorithms
- Hybrid Search: Combine vector search, scalar search, and full-text retrieval for optimal results
- Full-Text Search: Built-in full-text indexing for keyword-based searches
- Json:Built-in Json schema and query, support Json index.
📦 Embedded & Lightweight
- Zero Dependencies: Run embedded in your application - no separate database server required
- Tiny Footprint: Minimal memory and disk usage, perfect for edge devices and containers
- Single Binary: Easy to deploy and distribute with your application
- Local-First: Work offline, sync when ready
⚡ Simple & Developer-Friendly
- MySQL Compatible: Use familiar SQL syntax - no learning curve
- Instant Setup: Get started in seconds, not minutes
- Rich APIs: Support for Python, Java, Go, and more
- Comprehensive Docs: Clear documentation with examples for every use case
🚀 Production-Ready
- Stability: More than 15 years of technical expertise and 4000+ enterprise implementations
- ACID Compliance: Full transaction support with strong consistency guarantees
- Horizontal Scalability: Scale from single node to distributed cluster seamlessly
- Enterprise Security: Built-in encryption, authentication, and access control
🎬 Quick Start
Installation
pip install pylibseekdb
Requirements
- CPython 3.8+
- Linux x86_64, aarch64/arm64 with glibc version >= 2.28 (Alpine Linux is not supported yet)
🎯 AI Search Example
Build a semantic search system in 5 minutes:
🗄️ 🐍 Python SDK
# install sdk first
pip install -U pyseekdb
import pyseekdb
client = pyseekdb.Client()
collection = client.get_or_create_collection(name="my_collection")
collection.upsert(
ids=["1", "2", "3"],
documents=[
"It's rainy today",
"It was cloudy yesterday",
"The forecast for tomorrow is fine weather"
]
)
results = collection.query(
query_texts=[" What's the weather like today"], # SeekDB will embed this for you
n_results=2 # how many results to return
)
print(results)
🗄️ SQL
import pylibseekdb as seekdb
# Open a database
seekdb.open()
# Connect to a database
conn = seekdb.connect()
# Use the connection
cursor = conn.cursor()
cursor.execute("""-- Create table with vector column
CREATE TABLE articles (
id INT PRIMARY KEY,
title TEXT,
content TEXT,
embedding VECTOR(384)
);""")
cursor.execute("""-- Create vector index for fast similarity search
CREATE INDEX idx_vector ON articles USING VECTOR (embedding);""")
cursor.execute("""-- Insert documents with embeddings
-- Note: Embeddings should be pre-computed using your embedding model
INSERT INTO articles (id, title, content, embedding)
VALUES
(1, 'AI and Machine Learning', 'Artificial intelligence is transforming...', '[0.1, 0.2, ...]'),
(2, 'Database Systems', 'Modern databases provide high performance...', '[0.3, 0.4, ...]'),
(3, 'Vector Search', 'Vector databases enable semantic search...', '[0.5, 0.6, ...]');""")
cursor.execute("""-- Example: Hybrid search combining vector and full-text
-- Replace '[query_embedding]' with your actual query embedding vector
SELECT
title,
content,
embedding <-> '[query_embedding]' AS vector_distance,
MATCH(content) AGAINST('your keywords' IN NATURAL LANGUAGE MODE) AS text_score
FROM articles
WHERE MATCH(content) AGAINST('your keywords' IN NATURAL LANGUAGE MODE)
ORDER BY vector_distance ASC, text_score DESC
LIMIT 10;""")
results = cursor.fetchall()
# Close the connection
conn.close()
📚 Use Cases
| 🎯 RAG Systems | 🔍 Semantic Search | 💬 Chatbots | 🎬 Recommendations |
|---|---|---|---|
| Build retrieval-augmented generation pipelines with vector search | Power semantic search across documents, images, and multimedia | Create intelligent chatbots with memory and context | Build recommendation engines with hybrid search |
🎯 Real-World Examples
- 📚 Document Q&A: Build ChatGPT-like document search with RAG
- 🖼️ Image Search: Find similar images using vision embeddings
- 💼 E-commerce: Semantic product search and recommendations
- 🔬 Scientific Research: Search through research papers and datasets
- 📊 Business Intelligence: Combine SQL analytics with AI search
🌟 Ecosystem & Integrations
🤝 Community & Support
📄 License
OceanBase SeekDB is licensed under the Apache License, Version 2.0.
Metadata
Release files for pylibseekdb-runtime 1.0.0.post1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
Total release size: 1.5 GB
Release files / pylibseekdb_runtime-1.0.0.post1-cp314-cp314t-manylinux_2_28_x86_64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp314-cp314t-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 86.4 MB |
| Tags | CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
916771f9fc6a613d0b8334f1688eb4519b314cd30a21c5e83096f84a039c7b06
|
|
BLAKE2b-256 checksum How to use checksums |
0f3d22d4bd6cba2fd8093e01cd1246dfee7f970306cf6c60520481135f305eed
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.17
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp314-cp314t-manylinux_2_28_aarch64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp314-cp314t-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 84.2 MB |
| Tags | CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
aa2f6be0abdc0b4e35f2971cf96c26a72d1715901b85a7584ed4e395cf999027
|
|
BLAKE2b-256 checksum How to use checksums |
77bd73d0525048c30fa2ff18fe4516943095d452e77484a27def88fe8fa17438
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.11
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp314-cp314-manylinux_2_28_x86_64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp314-cp314-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 86.4 MB |
| Tags | CPython 3.14 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
eec0d00d824620b2f36635c12c920a3f3cd03a5509521d8a618a800b1b75ae04
|
|
BLAKE2b-256 checksum How to use checksums |
ea23aa13383e5fb18200dc2bc86c46f0158012f0cbabecd5cfbe3ac4bda064cb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.17
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp314-cp314-manylinux_2_28_aarch64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp314-cp314-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 84.2 MB |
| Tags | CPython 3.14 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
57e46c2dec66f255e9a1a34476f5e80348b2ddfaa8ee8b39c6c6509506e45446
|
|
BLAKE2b-256 checksum How to use checksums |
c0c49e351a8c52c508091c3af1b802b0a66043282669eb8f50007b71b70782ce
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.11
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp313-cp313t-manylinux_2_28_x86_64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp313-cp313t-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 86.4 MB |
| Tags | CPython 3.13 CPython 3.13 free-threading Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
82bc2201dde2fd94f60ba7b4e52406602d40feff4301a4f5af82188beb5d9a2c
|
|
BLAKE2b-256 checksum How to use checksums |
82e374d77fdc385c6b0b9c46ac36c1fe745438af6a23deecca881d5a49f35af0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.17
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp313-cp313t-manylinux_2_28_aarch64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp313-cp313t-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 84.2 MB |
| Tags | CPython 3.13 CPython 3.13 free-threading Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
b491b37347d2e806c9359e6c73ad5c399cd6bf9c3fa7daa8ee0b75b513f486ad
|
|
BLAKE2b-256 checksum How to use checksums |
b77bad6e1b82f57f24e5bf6aedff61cae60a54ad0ce6994a94df9ab04378ff40
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.11
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp313-cp313-manylinux_2_28_x86_64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp313-cp313-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 86.3 MB |
| Tags | CPython 3.13 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
d58a30a9ea32238ec7db72bc6c8e199c3e4a2c54ffda039c0fc69573c78afdf8
|
|
BLAKE2b-256 checksum How to use checksums |
13aaac67fe8376af4ecc6619d453692caac2bb3bd6473e3236767baee17c6bc9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.17
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp313-cp313-manylinux_2_28_aarch64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp313-cp313-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 84.2 MB |
| Tags | CPython 3.13 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
fa3ca059472c0b0ddf1012ca6ef03150c9cf7d0b31f52753ef0981140ed93b63
|
|
BLAKE2b-256 checksum How to use checksums |
6a43828c94523b384c0d47aec88d2113202898c02740cae6c926a26317629eed
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.11
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp312-cp312-manylinux_2_28_x86_64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp312-cp312-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 86.4 MB |
| Tags | CPython 3.12 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
069431907b3c9a142f74dc16f68fa4f4288be4a222ac7b1bb301ee0c3cd91611
|
|
BLAKE2b-256 checksum How to use checksums |
e8169e5c8b72da0eabcc69010f3d3b90ab5ab8fcf7333bb44b56985565c1efb4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.17
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp312-cp312-manylinux_2_28_aarch64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp312-cp312-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 84.2 MB |
| Tags | CPython 3.12 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
a68e79c7a3b8c2780cf331814412ab0aaaf698a8ad68062d8e7ab1cf07d7773a
|
|
BLAKE2b-256 checksum How to use checksums |
e73800ec070c12cac53cae6f6f937ec6e541631c38765a37de6883e12bbf178d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.11
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp311-cp311-manylinux_2_28_x86_64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp311-cp311-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 86.4 MB |
| Tags | CPython 3.11 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
d488fdb26e6b30aacb43f82dfe0f5495ee3a70aa47f73dfd08cdc044e09284f3
|
|
BLAKE2b-256 checksum How to use checksums |
fb3c671694b4d1677df6673df221675114f7724695deb4acce3128ebce05373f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.17
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp311-cp311-manylinux_2_28_aarch64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp311-cp311-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 84.2 MB |
| Tags | CPython 3.11 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
255974e2d3699647c7dc3c29c5e801b7e02c57d66f908db7e9cc991e7d9f5461
|
|
BLAKE2b-256 checksum How to use checksums |
6deff7bcd70578041faaa9858d0f5dd0ba6823a7241e3725a5444c8e09d5a396
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.11
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp310-cp310-manylinux_2_28_x86_64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp310-cp310-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 86.4 MB |
| Tags | CPython 3.10 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
8c851e961460ac049606c537e8837391f4ccf84e93e860b2e88301872504b1a8
|
|
BLAKE2b-256 checksum How to use checksums |
09187167bef76bd7e4de2b7cddfdc8899484233b2cfc53bc4fb5a3016671d819
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.17
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp310-cp310-manylinux_2_28_aarch64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp310-cp310-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 84.2 MB |
| Tags | CPython 3.10 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
76d709519b3250d3ac1abd7ec74fc5d992f7e83e048d263485b2613aec03f9eb
|
|
BLAKE2b-256 checksum How to use checksums |
b429e09d802caf35a1fe23b287e9d98f3d65341d8be33e968d28d7aea40ce862
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.11
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp39-cp39-manylinux_2_28_x86_64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp39-cp39-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 86.4 MB |
| Tags | CPython 3.9 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
77233252834e1c071dc3e58197dbd402661552914930865ebf818cfa36bdfcbb
|
|
BLAKE2b-256 checksum How to use checksums |
01c2d2a309da20c0f96f958e0b41408003e95284d837aa0cf33cdecc3bc61a41
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.17
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp39-cp39-manylinux_2_28_aarch64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp39-cp39-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 84.2 MB |
| Tags | CPython 3.9 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
3eacbb0eca5b038b87e41de27d735ef49e1148de3214f42fb89b990ca32e2386
|
|
BLAKE2b-256 checksum How to use checksums |
ad67075aa7e81430c75f17e7bdd4d4bed9f035943d8a6d6dbc43b14d5aa0727a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.11
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp38-cp38-manylinux_2_28_x86_64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp38-cp38-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 86.4 MB |
| Tags | CPython 3.8 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
79d9092c9aaa7b845ff4bdd132aa94608bdc62d1ea80d0e541a7f182bb64b1c1
|
|
BLAKE2b-256 checksum How to use checksums |
39c4dd9abaa0db3412c1fe1cf10b5f4fcca7453bd4b61f044cae21874ef96bc1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.17
|
Release files / pylibseekdb_runtime-1.0.0.post1-cp38-cp38-manylinux_2_28_aarch64.whl
| Download URL | pylibseekdb_runtime-1.0.0.post1-cp38-cp38-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 84.2 MB |
| Tags | CPython 3.8 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
57d83b99d5cce38e74e6496aab2bf5e88c58f467b4e30bb137d8626df51d1ddd
|
|
BLAKE2b-256 checksum How to use checksums |
14b92d638e786da470b5794e5be4705ec32357424cf88fa0510534452f200459
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.11
|