La correspondance des chaînes est une tâche fondamentale dans le traitement des données, mais elle peut devenir difficile lorsque vous traitez de grands ensembles de données dans Apache Spark. Cet article explore des algorithmes efficaces pour la correspondance de chaînes dans Spark, résolvant des problèmes courants tels que les substitutions de caractères, les espaces manquants et l'extraction d'emoji.
Bien qu'Apache Spark ne soit peut-être pas la plate-forme idéale pour correspondance de chaînes, il propose plusieurs techniques pour effectuer cette tâche :
Pour faire correspondre des chaînes à l'aide de ces techniques dans Spark :
import org.apache.spark.ml.feature.{RegexTokenizer, NGram, Vectorizer, MinHashLSH}
import org.apache.spark.ml.Pipeline
val pipeline = new Pipeline().setStages(Array(
new RegexTokenizer(),
new NGram(),
new Vectorizer(),
new MinHashLSH()
))
val model = pipeline.fit(db)
val dbHashed = model.transform(db)
val queryHashed = model.transform(query)
model.stages.last.asInstanceOf[MinHashLSHModel].approxSimilarityJoin(dbHashed, queryHashed).show
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3