dimanche 17 septembre 2023

create a search functionality for at most 500k items [closed]

Hey I wanted some guidance, I would be glad if someone could show me the right direction, or shed some light on my problem I wanted to make a semi optimised search functionality (semi optimised cause i can't deal with very complicated things also i have 500K items i wanted to search through not 10M items) so i want to be able to fuzzy find items, and be able to do something like spell checking (like if they press 2 or 3 keys wrong it could still match) also i have to make it scalable

the items i have is just strings and i am planning on making the search on 1 column of items (so if i have like a student table i am planning on making the search only for the first name, not something like it would search through name and address) i am planning on it but later if possible, i want to be able to do 2 or 3 columns search on a single search, so if i could do that now without that much more effort i would like to that

the strings i would be searching through would be mostly 1 continuous string maybe some with 2 strings with a "-" concatenating them. I haven't decided how many items i wanna have with 1 search but i think i would need at least 50 results as quick as possible and then get more later somehow ...

I wanted everything there is to it (mostly everything) i don't mind crunching through blog posts and/or videos for 4 days straight (yeah, i would be sane upto 4 days only) by everything i mean if i should handle the data in a database or in the server itself (not doing anything on the client side we decided all this would be in server side ) so if its database what kinda database or what kinda database engine should i use also what kinda optimisation i would have to do like indexes and everything else i don't know about or if its in a server what kinda data structure would i have to do or a combination of both, i wanted to know it until i have those figured out (i hope i don't have to reinvent a wheel many times and there are known ways to do it)

so anything you could link would be a great thanks

I am looking through postgres's full text search and also found an article about fuzzy string matching I would like to know anything else that would help me make an informed decision.

Aucun commentaire:

Enregistrer un commentaire