qdrant / qdrant/qdrant

Feature Request: Add Collection-Level Last Modified and Accessed Timestamp Tracking

Open
#5,385 2 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
34.7k
Forks
2.7k
Avg merge
1d 18h
Merged PRs (30d)
187

Description

Description:
This feature request proposes adding built-in timestamp tracking at the collection level to indicate when collections are created, last modified (i.e., when data is added, removed, or updated), and last queried/accessed. This functionality would provide valuable metadata for developers to monitor data lifecycle and usage patterns without requiring external mechanisms.

Motivation:
As far as I know, developed would need to implement their own metadata system for timestamps at the collection-level, which adds complexity and fragmentation. Built-in timestamp support can:

  • Enhance transparency and traceability of collection updates.
  • Enable easier data management and monitoring.
  • Improve developer experience by reducing the need for custom solutions.

Proposed Implementation:

  • Fields to Add:

    • created_at (Timestamp of collection creation)
    • last_modified_at (Timestamp of last data modification)
    • last_accessed_at (Timestamp of last read/query operation)
  • Tracking Mechanism:

    • created_at would be set during collection creation.
    • last_modified_at would update on data addition, deletion, or update operations.
    • last_accessed_at would update whenever the collection is queried.
  • Performance Consideration:

    • Developers should have the option to enable or disable timestamp tracking to accommodate high-performance use cases.

Potential Use Cases:

  1. Tracking data freshness for analytics workflows.
  2. Monitoring collection access patterns for optimizing queries.
  3. Simplifying data auditing and compliance requirements.

Alternatives Considered:
While external timestamp tracking solutions are possible, they introduce unnecessary complexity and may not align with internal data operations, leading to synchronization issues and reduced usability.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue does not identify files, tests, or an entry point. First locate the collection creation, data mutation, and query paths, then clarify timestamp semantics, configuration, and performance expectations; done requires an agreed design and implementation covering those operations.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
databases
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.