Skip to main content

Distributed Embeddings & Analytics Manager (DIEM) CLI for MariaDB Vector Engine

Project description

DIEM — Distributed Embedding and Analytics Manager

Introduction


DIEM is a CLI tool built using Python and the MariaDB SQL connector. It simplifies CRUD operations on vector embeddings and supports semantic search, cosine similarity, and other distance-based analytics.

The system leverages MariaDB 11.8 GA LTS! features such as Vector Data Type, Spider Engine .Together, these enable high-performance, distributed vector management and analytics.

Prequesites

Mariadb Db version 11.8 GA Lts (greater or 11.8)

Installation

Install using pip

pip install diemcli

Clone git repo

git clone https://github.com/NarmalaSk/DIEM.git

Connect to Mariadb

python cli.py connect
Enter Connection String

Architecture


DIEM follows a modular and lightweight architecture, deployable on:

A single-node MariaDB instance, or

A distributed MariaDB cluster

All database interactions are abstracted through DIEM.py, which translates SQL operations into intuitive CLI commands. This abstraction eliminates the need for manual SQL query handling, making vector data operations faster and more user-friendly.

Distributed System


DIEM automatically distributes vector data across the cluster using the MariaDB Spider Engine, ensuring:

Horizontal scalability

Load-balanced queries

Transparent data retrieval

Using DIEM CLI commands, developers can easily manage data distribution, replication, and query execution across nodes—without manually configuring Spider partitions or routes.

Integration in ML Model Development


DIEM bridges the gap between data storage and machine learning workflows by providing an efficient interface to:

Store and retrieve embeddings generated from ML models.

Perform semantic search for model evaluation and feature comparison.

Leverage MariaDB’s ColumnStore for analytics on large-scale vector datasets.

This makes DIEM an ideal choice for teams developing LLM-based applications, recommendation systems, and semantic similarity engines that need scalable, SQL-native vector management.

CLI


  DIEM - Distributed Embeddings & Analytics Manager CLI

Options:
  connect          Connect to MariaDB and save the connection URI.
  create_table     Create a vector table with given dimensions and metadata.
  insert_vector    Insert a single vector embedding into a table.
  insert_batch     Insert multiple vector embeddings from a CSV file.
  search           Perform similarity search on vector embeddings.
  list_databases   List all databases in the connected MariaDB instance.
  list_tables      List all tables in the connected database.
  get_all          Retrieve all rows from a given table.
  update_vector    Update vector embeddings or metadata using a WHERE clause.
  delete_vectors   Delete vectors from a table with conditions.
  delete_table     Drop a vector table permanently.
  close            Close active database connection and clear config.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

diem_cli-0.1.3.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

diem_cli-0.1.3-py3-none-any.whl (9.9 kB view details)

Uploaded Python 3

File details

Details for the file diem_cli-0.1.3.tar.gz.

File metadata

  • Download URL: diem_cli-0.1.3.tar.gz
  • Upload date:
  • Size: 10.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for diem_cli-0.1.3.tar.gz
Algorithm Hash digest
SHA256 30100a9a0bfbe703b95cac2d3bed93180681bd2286b53365f16c99129543eaea
MD5 ac97e1e8b7f3bfba053dc3414322f89b
BLAKE2b-256 2717316209d5e0477cf9db813fa0d237605621d66868768f0fc092d6f9b9a937

See more details on using hashes here.

File details

Details for the file diem_cli-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: diem_cli-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 9.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for diem_cli-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 a381c5f0e07d72bab210618c26852e2f72d3e7a57d5fb5658430e03b4ef4bde1
MD5 ea32bdd42d5a9b9689dd28f6d92149cd
BLAKE2b-256 9b3f111da636250d4ce04a521a69058d0f488878ef2bfcf31e098b8a2512c559

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page