Comments (1)
Hi thanks for the suggestion,
The reason for not allowing duplicate hashes is twofold (and is reflected at the storage side, it is essentially the same as #37):
If a hash is common it means (almost by definition) that it does not have much discriminative power. The idea implemented here is that they can be safely ignored.
Another reason is performance: not wasting storage space or computation on hashes with little discriminative power. While some hash collisions are allowed having too many could have an effect on query performance.
However, letting users choose would indeed be a good improvement. For small collections or powerful servers the collisions can perhaps be not that big of a problem. Either using a Set (to avoid duplicates) or an Array (to allow) to store temporary prints could be an idea indeed.
from panako.
Related Issues (20)
- A fatal error has been detected by the Java Runtime Environment HOT 1
- Not getting accurate matches with radio recordings HOT 1
- Should the DB Index be in RAM? Big collection - multiple indexes? HOT 1
- Run on Windows HOT 1
- Not working on Debian buster HOT 1
- panako store process hangs indefinitely HOT 1
- Building Panako from Dockerfile fails HOT 3
- javadoc warnings HOT 1
- Path to docs in README wrong HOT 1
- Large parts of the API are undocumented HOT 1
- Unit tests and CI integration are missing HOT 1
- PanakoStrategy.java typo Line 372? HOT 1
- PanakoStrategy Query logic - mostCommonDeltaTforHitList selects most common delta time by position in HashMap HOT 1
- PanakoStrategy Query Logic - maxListSize @ 250 needs an override HOT 2
- PanakoStrategy Query Logic - allow duplicate fingerprint hash? HOT 1
- Small issues with performance script docs HOT 1
- ./gradlew javadoc fails HOT 1
- Main thread hangs in java.io.FileInputStream.readBytes HOT 3
- create_dataset.rb doesn't work with Ruby 3.2.x HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from panako.