Skip to content

Conversation

@PsiACE
Copy link
Member

@PsiACE PsiACE commented Dec 22, 2025

Related to #35

  • Implement Count-Min sketch.
  • Add unit tests for core behavior, merge, serialization, and cases adapted from rust-count-min-sketch.

Copilot AI review requested due to automatic review settings December 22, 2025 13:16
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR implements a Count-Min sketch data structure for approximate frequency counting in streaming data. The implementation provides configurable accuracy through relative error and confidence parameters, supports negative weights, and includes serialization/deserialization compatibility with the DataSketches format.

Key changes:

  • Core Count-Min sketch with update, estimate, merge, and bound calculation operations
  • Helper functions for parameter suggestions based on desired error and confidence levels
  • Serialization support compatible with DataSketches Count-Min format
  • Comprehensive test suite covering basic operations, edge cases, and serialization

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
src/lib.rs Adds countmin module to the library's public API
src/countmin/mod.rs Module definition with documentation and public exports
src/countmin/sketch.rs Core Count-Min sketch implementation with update, estimation, merge, and serialization methods
src/countmin/serialization.rs Serialization constants and helper functions for DataSketches format compatibility
tests/countmin_test.rs Comprehensive test suite covering initialization, updates, bounds, merge, serialization, and edge cases

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@notfilippo
Copy link
Contributor

notfilippo commented Dec 22, 2025

Cool! Thanks. I'll take a look soon...

Signed-off-by: Chojan Shang <[email protected]>
@leerho leerho merged commit 8855aa6 into apache:main Dec 25, 2025
9 checks passed
@PsiACE PsiACE deleted the count-min branch December 26, 2025 06:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants