Hizo una función que busca una cadena específica en una gran variedad de cadenas utilizando la distancia de Levenshtein. Pero es demasiado lento. Tarda alrededor de 6000-10000 ms en completarse. ¿Cómo puedo hacerlo rápido? Esperaba que la función terminara en menos de 1000 ms. ¿Es posible usar subprocesos de trabajo, clúster o cualquier otra cosa para ejecutar el ciclo en paralelo para obtener el resultado en menos de un segundo?
const leven = require('leven'); const veryLargeArray = ['foo bar foo', 'ajskdnasjkd', 'fooo fooo bar fooo', 'bar fooo', /*This array in my actual code has more than 900K strings*/]; function search(str, arr) { const results = []; for (const item of arr) { results.push({ item, distance: leven(str, arr[i]) }); } return results; } search('hello', [...veryLargeArray]);