Skip to content
This repository has been archived by the owner on Apr 4, 2023. It is now read-only.

List of improvements on the nested field post v0.27.0 RC0 #488

Closed
5 of 9 tasks
irevoire opened this issue Apr 7, 2022 · 4 comments
Closed
5 of 9 tasks

List of improvements on the nested field post v0.27.0 RC0 #488

irevoire opened this issue Apr 7, 2022 · 4 comments
Assignees
Labels
enhancement New feature or request performance Related to the performance in term of search/indexation speed or RAM/CPU/Disk consumption

Comments

@irevoire
Copy link
Member

irevoire commented Apr 7, 2022

  • Remove a now useless callback in the transform:
    Originally posted by @Kerollmops in Nested fields #458 (comment)
  • Use the smartstring crate to store the primary key in the transform. => It should improve the performance but more importantly: it'll reduce memory consumption. Use smartstring to store the external id in our hashmap #493
  • See if we can improve the error message for the indexing of geopoints => we were able to show the complete object before. Now that's impossible but we could specify what we didn't find (latitude or longitude) => Improve geosearch error messages and accept string as coord #523
  • Skip all the flattening if the object do not need it => rewrite a specialized version of oxidized-json-checker that measure the « depth » in the value (actually it's not the depth because we can have 0 object and 1 array). Maybe we could even create something even easier and faster. Only flatten the required objects #494
  • Flatten by fields instead of by document => Stop flattening every field #514
  • Maybe we could flatten (and thus index) only the fields that are actually in use (ie in any settings)
  • Maybe we could fasten the search by creating a « true » db for the attribute to [ retrieve / highlight / crop ] with all the flattened field in it at the indexing time. Not sure about this one.
  • Try to make the flatten-serde-json crate works with obkv directly
  • See if there is something to do with bumpalo to make all the small allocations a lot faster when we flatten document and reuse the same buffer between each loops (basically what we're doing with the obkv currently)
@irevoire irevoire self-assigned this Apr 7, 2022
@irevoire irevoire changed the title Remove a now useless callback in transform.rs List of improvements on the nested field post RC0 Apr 7, 2022
@curquiza
Copy link
Member

curquiza commented Apr 11, 2022

Also, we could add some benchmarks to bench a dataset with nested fields 😇
See: #500

@Kerollmops
Copy link
Member

I was trying to take this small one Remove a now useless callback in the transform, but it looks like you use it now, am I right?

@irevoire
Copy link
Member Author

Yes but now it doesn't really represent what it was 😬
#458 (comment)

@curquiza curquiza changed the title List of improvements on the nested field post RC0 List of improvements on the nested field post v0.27.0 RC0 Apr 20, 2022
@curquiza curquiza added the enhancement New feature or request label Apr 25, 2022
bors bot added a commit that referenced this issue May 4, 2022
523: Improve geosearch error messages r=irevoire a=irevoire

Improve the geosearch error messages (#488).
And try to parse the string as specified in meilisearch/meilisearch#2354

Co-authored-by: Tamo <tamo@meilisearch.com>
@curquiza curquiza added the performance Related to the performance in term of search/indexation speed or RAM/CPU/Disk consumption label Jul 5, 2022
@irevoire
Copy link
Member Author

Everything has been tested

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request performance Related to the performance in term of search/indexation speed or RAM/CPU/Disk consumption
Projects
None yet
Development

No branches or pull requests

3 participants