Commit Graph

43 Commits

Author SHA1 Message Date
Clément Renault
dfa19582a2
test: Add benchmarks to mesure the words proximity criterion 2018-12-31 21:18:42 +01:00
Clément Renault
64d53ee1bd
chore: Rework the data module structures
being able to be constructed from SharedData
2018-12-31 19:27:21 +01:00
Clément Renault
0080bf486f
feat: Introduce the new Index structure
replacing the old ugly Blob system
2018-12-31 19:26:27 +01:00
Clément Renault
7132c3be89
feat: Allow filtering on QueryBuilder 2018-12-29 22:30:41 +01:00
Clément Renault
aa3d059363
feat: Allow filtering on DistinctQueryBuilder 2018-12-29 22:30:41 +01:00
Clément Renault
e2a9dbc404
feat: Introduce filtering methods for Distinct/QueryBuilder 2018-12-29 22:30:40 +01:00
Clément Renault
b27f632e14
feat: Make the Attribute and WordArea errors recoverable 2018-12-28 16:15:22 +01:00
Clément Renault
444a4c1af7
feat: Make the schema consider document ids 2018-12-27 11:21:47 +01:00
Clément Renault
b32c96cdc9
feat: Introduce a WordArea struct
Useful to highlight matching areas in the original text.
2018-12-24 15:58:46 +01:00
Clément Renault
4ebae7784c
feat: Create a strong DocumentId type
Forcing it to be something internal will permit to avoid possible miss comparisons to be done with other types.
2018-12-24 12:42:24 +01:00
Clément Renault
4a310c31ab
feat: Allow query distinct a range of documents 2018-12-18 14:00:30 +01:00
Clément Renault
d0ee5f12a0
feat: Introduce the BufferedDistinctMap struct 2018-12-18 14:00:30 +01:00
Clément Renault
7aafba67ed
feat: Allow querying a range of documents 2018-12-18 14:00:29 +01:00
Clément Renault
e15d5e6d93
feat: Improve the query distinct performances 2018-12-13 11:54:47 +01:00
Clément Renault
d3a67476e0
feat: Rename registers methods of DistinctMap 2018-12-13 11:54:09 +01:00
Clément Renault
df2b6a3e74
feat: Consider the last query word be a prefix
if the last word is not followed by a space.
2018-12-11 17:43:27 +01:00
Clément Renault
b5df87a403
feat: Introduce the Criteria type 2018-12-10 20:17:57 +01:00
Clément Renault
d615f89c56
feat: Introduce the SortBy help structure
This structure help ranking documents using stored attributes.
2018-12-10 20:17:52 +01:00
Clément Renault
23cce69dc5
feat: Introduce the CriteriaBuilder 2018-12-10 20:15:02 +01:00
Clément Renault
671bd3374f
fix: Break the proper loop when bucket sorting 2018-12-10 15:14:15 +01:00
Clément Renault
d8cfac914a
feat: Implement a better automaton builder
This new implementation only allows the last word of a query string to be a prefix.
2018-12-10 12:16:24 +01:00
Clément Renault
0e825e05bb
feat: Make the DatabaseView become Sync + Send 2018-12-07 17:59:03 +01:00
Clément Renault
bec463a61a
fix: Update the DatabaseView to retrieve the index at creation
remove this computation from the QueryBuilder
2018-12-07 16:29:39 +01:00
Clément Renault
9342290afe
feat: Simplify the steps to query the database 2018-12-07 14:41:06 +01:00
Clément Renault
8bee31078d
chore: Update the module hierarchy 2018-12-07 12:22:51 +01:00
Clément Renault
2c3d71dd8f
fix: Improve the bucket sort algorithm 2018-12-07 11:53:17 +01:00
Clément Renault
731ed11153
feat: Index and store/serialize attributes while creating the update 2018-12-07 11:32:27 +01:00
Clément Renault
e559f7130c
feat: Replace the fnv hashmap by the hashbrown one 2018-12-02 13:11:02 +01:00
Clément Renault
c8aee7ed7a
fix: Make the merge operator work 2018-12-02 12:00:49 +01:00
Clément Renault
612a8d9d44
feat: Make the OpBuilder work only for PositiveBlob 2018-12-02 12:00:48 +01:00
Clément Renault
9b58ffe2d9
feat: Introduce the QueryBuilder struct 2018-12-02 12:00:37 +01:00
Clément Renault
7c1a17520d
feat: Introduce the index module 2018-12-02 12:00:29 +01:00
Clément Renault
34b43d4002
test: Add some more tests 2018-12-02 11:59:48 +01:00
Clément Renault
e68e6056c3 doc: Add a deep dive in Pentium 2018-10-21 18:21:04 +02:00
Clément Renault
26dcfe1e54 fix: Remove stop-words from the serve examples 2018-10-21 16:42:19 +02:00
Clément Renault
3d9488bd30 feat: Keep a stable order of documents
by ordering the deepest bucket by document id.
2018-10-18 17:29:27 +02:00
Clément Renault
86cb01b243 fix: Allow documents to bypass attribute distinction
In situations where the attribute is not present.
2018-10-18 15:08:04 +02:00
Clément Renault
af91bfa11f fix: Clamp the document range requested 2018-10-17 16:59:39 +02:00
Clément Renault
37c709c9a9 feat: Introduce a way to distinct documents 2018-10-17 13:35:34 +02:00
Clément Renault
3acac1458f feat: Allow querying ranges in the results list 2018-10-11 16:09:28 +02:00
Clément Renault
8cd07462aa feat: Introduce the Criterion trait 2018-10-11 14:04:41 +02:00
Clément Renault
c56c35b45b feat: Introduce the Criteria struct 2018-10-10 16:57:21 +02:00
Clément Renault
7a668dde98 chore: Make the repo use examples and keep the library 2018-10-09 18:23:35 +02:00