1
votes

I'm running a site as an Azure Web App, using Azure SQL, Azure Search, and Azure Blob Storage.

Currently the Azure Search index (for the document search) is built using an indexer drawing data from multiple SQL tables (via a view) to associate permissions and other meta data indirectly associated with the documents, including the url to the doc in Azure Blob Storage.

The newly released update to Azure Search seems to allow full-text searching of blobs which is great, but the data source has to be changed to the blob storage container, missing out on the additional meta that would be populated by my SQL view.

Can a Search index document be populated by more than one data source, or can a second indexer update an existing search document (to add the full-text data to the document)?

I've looked at trying to capture the data and creating the full text within the SQL db at document upload, but on Azure web apps there doesn't seem to be a suitable parser, and Azure SQL Full text index doesn't support Word or PDF docs which are mostly what I'm uploading.

Is it possible to modify the indexer to incorporate Azure Blob Storage full text indexing, or should I be looking for a completely different approach?

1

1 Answers

3
votes

Azure Search indexes can be populated by multiple indexers, or even by a mix of indexer and your own code calling indexing API. (Specifically, indexers use mergeOrUpload indexing action.)

You just need to make sure that both SQL and blob indexers agree on the document key, so they update the same documents. HTH!