De situatie is als volgt. We hebben in de database een klanten bestand van zo'n 10.000 namen staan.
1x per maand zal er een bestand verstuurd gaan worden waarin ook zo'n 10.000 namen staan.
We hebben momenteel al een generiek systeem dat de CSV files ophaalt en de file per line inleest en een array met alle lines retourneerd. Pas hierna wordt er gekeken wat voor een file het is en zal de betreffende functie aangeroepen worden.
Ik heb dus in het geheugen al een redelijke array opgeslagen staan.
Wat moet er gebeuren:
- Alle gegevens uit de CSV moeten opgeslagen worden in de DB
- Alle klanten moeten vergeleken worden met gegevens uit de CSV file middels bijv. similar_text.
- Bij een match van 90% of hoger moet de naam opgeslagen worden in een lijst en aan het eind van het gehele vergelijk proces moet er een mail uit met een lijst met gevonden resultaten.
Nu zit ik dus een beetje in dubio wat ik het beste kan doen, ook qua performance. Denk dat het beste is om eerst de CSV op te gaan slaan in de DB. Maar dan moet ik geavanceerd gaan queriën. Met de LIKE kan ik maar 1 kant op vergelijkingen gaan ophalen.
Wat zijn voor jullie de beste suggesties?
1x per maand zal er een bestand verstuurd gaan worden waarin ook zo'n 10.000 namen staan.
We hebben momenteel al een generiek systeem dat de CSV files ophaalt en de file per line inleest en een array met alle lines retourneerd. Pas hierna wordt er gekeken wat voor een file het is en zal de betreffende functie aangeroepen worden.
Ik heb dus in het geheugen al een redelijke array opgeslagen staan.
Wat moet er gebeuren:
- Alle gegevens uit de CSV moeten opgeslagen worden in de DB
- Alle klanten moeten vergeleken worden met gegevens uit de CSV file middels bijv. similar_text.
- Bij een match van 90% of hoger moet de naam opgeslagen worden in een lijst en aan het eind van het gehele vergelijk proces moet er een mail uit met een lijst met gevonden resultaten.
Nu zit ik dus een beetje in dubio wat ik het beste kan doen, ook qua performance. Denk dat het beste is om eerst de CSV op te gaan slaan in de DB. Maar dan moet ik geavanceerd gaan queriën. Met de LIKE kan ik maar 1 kant op vergelijkingen gaan ophalen.
Wat zijn voor jullie de beste suggesties?