Skip to main content

PatANN is a massively parallel, distributed, and scalable in-memory/on-disk vector database library for efficient nearest neighbor search across large-scale datasets by finding vector patterns.

Project description

PatANN - Pattern-Aware Vector Database / ANN

Overview

PatANN is a massively parallel, distributed, and scalable in-memory/on-disk vector database library for efficient nearest neighbor search across large-scale datasets by finding vector patterns.

PatANN leverages patterns for data partitioning similar to Google ScANN, implements disk-based I/O similar to DiskANN, and employs search techniques like HNSWlib, resulting in an algorithm that combines the best features to outperform existing approaches.

Status

Beta Version: Currently uploaded for benchmarking purposes. Complete documentation and updates are under development. Not for production use yet.

Platforms

  • Beta Version: Restricted to Linux to prevent premature circulation of beta versions
  • Production Releases (late Feb 2024)*: Will support all platforms that are supported by mesibo

Key Features

  • Faster Index building and Searching
  • Supports both in-memory and on-disk operations
  • Dynamic sharding to partition and load balance across servers
  • Refined search, filtering and pagination
  • Unlimited scalability without pre-specified capacity

Algorithmic Approach

  • Combines modified NSW (Navigable Small World) graph with a novel pattern based partitioning algorithm
  • Preliminary results show phenomenal performance in building index and searching
  • Potential slight variations in lower-end matching
  • Detailed research paper forthcoming

Contributions

We are seeking help to:

  • Run additional datasets. So far, all tested datasets (including self-generated) exhibit patterns that helps algorithm. We have yet to test datasets without clear patterns or with uniform distribution.
  • Validate and improve the algorithm

Contact

For support / questions, please contact: support@mesibo.com

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

patann-0.0.63.tar.gz (469.0 kB view details)

Uploaded Source

Built Distribution

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

patann-0.0.63-py3-none-any.whl (475.1 kB view details)

Uploaded Python 3

File details

Details for the file patann-0.0.63.tar.gz.

File metadata

  • Download URL: patann-0.0.63.tar.gz
  • Upload date:
  • Size: 469.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.5

File hashes

Hashes for patann-0.0.63.tar.gz
Algorithm Hash digest
SHA256 243cb6bafcdd1ed6b9317c45255fdf486fd7ccb8652018f2fbc8d2a0b20ac1cd
MD5 4613fb7629f2f7ed426c808f4f51f1bd
BLAKE2b-256 5eebf78d0d52580c71db6a5a8816ab978f6f43bf04345d9315817be661bb6f5b

See more details on using hashes here.

File details

Details for the file patann-0.0.63-py3-none-any.whl.

File metadata

  • Download URL: patann-0.0.63-py3-none-any.whl
  • Upload date:
  • Size: 475.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.5

File hashes

Hashes for patann-0.0.63-py3-none-any.whl
Algorithm Hash digest
SHA256 19168da1bf246140122559c52937e444b7a75e61e1be57a878d00a0e4f85976f
MD5 9e5703a8a71d415c6c245a77b35ad65d
BLAKE2b-256 a0ddf58ef8bc91c2a1bfba4f7950d7a48a70dd69927c1a6c93f2dc259a4e3ef5

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