Processamento de texto de forma livre para pesquisaProcessing free-form text for search

Para suportar a pesquisa, o processamento de texto de forma livre pode ser executado em relação a documentos que contenham parágrafos de texto.To support search, free-form text processing can be performed against documents containing paragraphs of text.

A pesquisa em texto funciona com a construção de um índice especializado que é previamente em relação a uma coleção de documentos.Text search works by constructing a specialized index that is precomputed against a collection of documents. Uma aplicação cliente envia uma consulta que contém os termos de pesquisa.A client application submits a query that contains the search terms. A consulta devolve um conjunto de resultados, consistindo numa lista de documentos classificados pela eficiência com que cada documento corresponde aos critérios de pesquisa.The query returns a result set, consisting of a list of documents sorted by how well each document matches the search criteria. O conjunto de resultados também pode incluir o contexto no qual o documento corresponde aos critérios, que permite que o aplicativo destacar a frase correspondente no documento.The result set may also include the context in which the document matches the criteria, which enables the application to highlight the matching phrase in the document.

Diagrama de um pipeline de pesquisa

Processamento de texto de forma livre pode produzir dados úteis e acionáveis de grandes quantidades de dados de texto ruidosos.Free-form text processing can produce useful, actionable data from large amounts of noisy text data. Os resultados podem permitir que os documentos não estruturados uma estrutura bem definida e passível de consulta.The results can give unstructured documents a well-defined and queryable structure.

DesafiosChallenges

  • Processamento de uma coleção de documentos de texto de forma livre é normalmente computacionalmente intensivas, bem como com uso intensivo de tempo.Processing a collection of free-form text documents is typically computationally intensive, as well as time intensive.
  • Para procurar o texto de forma livre com eficiência, o índice de pesquisa deve suportar a pesquisa difusa com base em termos que têm uma construção semelhante.In order to search free-form text effectively, the search index should support fuzzy search based on terms that have a similar construction. Por exemplo, pesquisa, os índices são criados com a lematização e o Lematização linguística, para que as consultas para "executar" corresponderão aos documentos que contenham "foi executado" e "em execução."For example, search indexes are built with lemmatization and linguistic stemming, so that queries for "run" will match documents that contain "ran" and "running."

ArquiteturaArchitecture

Na maioria dos cenários, os documentos de texto de origem são carregados no armazenamento de objetos, tais como o armazenamento do Azure ou do Azure Data Lake Store.In most scenarios, the source text documents are loaded into object storage such as Azure Storage or Azure Data Lake Store. Uma exceção está a utilizar a pesquisa em texto completo no SQL Server ou base de dados do Azure SQL.An exception is using full text search within SQL Server or Azure SQL Database. Neste caso, os dados de documentos são carregados em tabelas geridas pela base de dados.In this case, the document data is loaded into tables managed by the database. Depois de armazenadas, os documentos são processados por um lote para criar o índice.Once stored, the documents are processed in a batch to create the index.

Opções de tecnologiaTechnology choices

As opções para criar um índice de pesquisa incluem o Azure Search, o Elasticsearch e o HDInsight com o Solr.Options for creating a search index include Azure Search, Elasticsearch, and HDInsight with Solr. Cada uma dessas tecnologias pode preencher um índice de pesquisa de uma coleção de documentos.Each of these technologies can populate a search index from a collection of documents. O Azure Search fornece indexadores que podem preencher automaticamente o índice para documentos que vão de texto sem formatação para formatos Excel e PDF.Azure Search provides indexers that can automatically populate the index for documents ranging from plain text to Excel and PDF formats. No HDInsight, Apache Solr pode indexar arquivos binários de vários tipos, incluindo texto sem formatação, o Word e PDF.On HDInsight, Apache Solr can index binary files of many types, including plain text, Word, and PDF. Depois do índice é construído, os clientes podem aceder a interface de pesquisa por meio de uma API REST.Once the index is constructed, clients can access the search interface by means of a REST API.

Se os dados de texto são armazenados no SQL Server ou SQL Database do Azure, pode utilizar a pesquisa de texto completo que está incorporada na base de dados.If your text data is stored in SQL Server or Azure SQL Database, you can use the full-text search that is built into the database. A base de dados preenche o índice de texto, binária ou dados XML armazenados na mesma base de dados.The database populates the index from text, binary, or XML data stored within the same database. Pesquisa de clientes utilizando consultas de T-SQL.Clients search by using T-SQL queries.

Para obter mais informações, consulte arquivos de dados de pesquisa.For more information, see Search data stores.