Matrikel: Lav performance når der filtreres på kommune
klavspc opened this issue · comments
Dette er en søgning mod matrikel uden filter:
https://api.dataforsyningen.dk/rest/gsearch/v1.0/matrikel?q=9&limit=3&token=fd44f26ab5701c01ca9f570e507fe9ab
Svartid ca 50ms
Samme søgning dog med kommunefilter (Gentofte):
https://api.dataforsyningen.dk/rest/gsearch/v1.0/matrikel?q=9&limit=3&filter=kommunekode%20=%20%270157%27&token=fd44f26ab5701c01ca9f570e507fe9ab
Svartid ca 2s
I mange af vore løsninger til kommunale kunder filtreres der på kommune (kommunens egne jordstykker). Søgetider på flere sekunder giver alt andet lige en ringere slutbrugeroplavelse
Der kan være flere grunde til den lavere performance - et hurtigt gæt fra min side kunne være, at der mangler indeks på kommunekode
P.S. Jeg ved, at i opfordrer til at bruge like
istedet for = i filtret - det betyder dog ikke noget for performance
P.P.S Token i eksemplet er det samme som det i bruger i jeres offentlige eksempler
Jeg har tilføjet indexer for kommunekode i adresse
, husnummer
, navngivenvej
, matriklen
, matriklen_udgaaet
og stednavn
.
Det ser ud til at have reduceret svartid væsentligt. Ændringen skulle træde i kraft fra på mandag af.
Tak for oprette et issue.
P.S. =
er mere effektiv end like
i filtre, det betyder bare man udelukke de resultater der ville spænde over flere kommuner (i kommunekode eksemplet).