Azure Dosyalar verileri dizine alın
Önemli
Azure Dosyalar dizin oluşturucu şu anda Ek Kullanım Koşulları. Dizin oluşturucu veri kaynağını oluşturmak için önizleme REST API'sini kullanın.
Bu makalede, Azure Dosyalar içeriği içeri aktaran ve Azure AI Search'te aranabilir hale getiren bir dizin oluşturucu yapılandırmayı öğrenin. Dizin oluşturucuya girişler, tek bir paylaşımdaki dosyalarınızdır. Çıktı, aranabilir içerik ve meta verilerin tek tek alanlarda depolandığı bir arama dizinidir.
Bu makale, Azure Depolama'da dosyaları dizine eklemeye özgü bilgilerle dizin oluşturucu oluşturma işlemini tamamlar. Rest API'lerini kullanarak tüm dizin oluşturucular için ortak olan üç parçalı bir iş akışını gösterir: veri kaynağı oluşturma, dizin oluşturma, dizin oluşturucu oluşturma. Dizin Oluşturucu Oluştur isteğini gönderdiğinizde veri ayıklama gerçekleşir.
Önkoşullar
Kaynak içeriği sağlayan bir SMB dosya paylaşımı. NFS paylaşımları desteklenmez.
Metin içeren dosyalar. İkili verileriniz varsa görüntü analizi için yapay zeka zenginleştirmesi ekleyebilirsiniz.
Azure Depolama'da okuma izinleri. "Tam erişim" bağlantı dizesi içeriğe erişim sağlayan bir anahtar içerir.
REST çağrılarını bu makalede gösterilene benzer şekilde formüle etmek için REST istemcisini kullanın.
Desteklenen belge biçimleri
Azure Dosyalar dizin oluşturucu aşağıdaki belge biçimlerinden metin ayıklayabilir:
- CSV (bkz. CSV bloblarının dizinini oluşturma)
- EML
- EPUB
- GZ
- HTML
- JSON (bkz. JSON bloblarını dizinleme)
- KML (coğrafi gösterimler için XML)
- Microsoft Office biçimleri: DOCX/DOC/DOCM, XLSX/XLS/XLSM, PPTX/PPT/PPTM, MSG (Outlook e-postaları), XML (hem 2003 hem de 2006 WORD XML)
- Belge biçimlerini açma: ODT, ODS, ODP
- Düz metin dosyaları (ayrıca bkz. Düz metin dizini oluşturma)
- RTF
- XML
- ZIP
Azure Dosyalar nasıl dizinlenir?
Varsayılan olarak çoğu dosya, tek bir metin öbeği olarak dizine alınan JSON veya CSV gibi yapılandırılmış içeriğe sahip dosyalar da dahil olmak üzere dizinde tek bir arama belgesi olarak dizinlenir.
Bileşik veya eklenmiş belge (ZIP arşivi, ekleri içeren eklenmiş Outlook e-postası içeren bir Word belgesi veya gibi). Ekleri olan MSG dosyası) da tek bir belge olarak dizine alınır. Örneğin, eklerinden ayıklanan tüm görüntüler. MSG dosyası normalized_images alanında döndürülür. Resimleriniz varsa bu içerikten daha fazla arama yardımcı programı elde etmek için yapay zeka zenginleştirmesi eklemeyi göz önünde bulundurun.
Belgenin metin içeriği "content" adlı bir dize alanına ayıklanır. Standart ve kullanıcı tanımlı meta verileri de ayıklayabilirsiniz.
Veri kaynağını tanımlama
Veri kaynağı tanımı, verilerdeki değişiklikleri tanımlamak için dizine eklenecek verileri, kimlik bilgilerini ve ilkeleri belirtir. Veri kaynağı, birden çok dizin oluşturucu tarafından kullanılabilmesi için bağımsız bir kaynak olarak tanımlanır.
"type" için 2020-06-30-preview veya üzerini kullanabilirsiniz: "azurefile"
. En son önizleme API'sini öneririz.
"type" için bir önizleme API'sini kullanarak tanımını ayarlamak için bir veri kaynağı oluşturun:
"azurefile"
.POST /datasources?api-version=2024-05-01-preview { "name" : "my-file-datasource", "type" : "azurefile", "credentials" : { "connectionString" : "DefaultEndpointsProtocol=https;AccountName=<account name>;AccountKey=<account key>;" }, "container" : { "name" : "my-file-share", "query" : "<optional-directory-name>" } }
"type" değerini (gerekli) olarak
"azurefile"
ayarlayın."Kimlik bilgilerini" bir Azure Depolama bağlantı dizesi olarak ayarlayın. Sonraki bölümde desteklenen biçimler açıklanmaktadır.
"Kapsayıcı"yı kök dosya paylaşımına ayarlayın ve alt klasörleri belirtmek için "query" kullanın.
Kaynak belge silinmek üzere işaretlendiğinde dizin oluşturucunun bir arama belgesini silmesini istiyorsanız, veri kaynağı tanımı geçici silme ilkeleri de içerebilir.
Desteklenen kimlik bilgileri ve bağlantı dizesi
Dizin oluşturucular aşağıdaki bağlantıları kullanarak bir dosya paylaşımına bağlanabilir.
Tam erişimli depolama hesabı bağlantı dizesi |
---|
{ "connectionString" : "DefaultEndpointsProtocol=https;AccountName=<your storage account>;AccountKey=<your account key>;" } |
Sol gezinti bölmesinde Erişim anahtarları'nı seçerek Azure portalındaki Depolama hesabı sayfasından bağlantı dizesi alabilirsiniz. Yalnızca bir anahtar değil tam bir bağlantı dizesi seçtiğinizden emin olun. |
Dizine arama alanları ekleme
Arama dizininde, Azure dosyalarınızın içeriğini ve meta verilerini kabul etmek için alanlar ekleyin.
Dosya içeriğini ve meta verileri depolayacak arama alanlarını tanımlamak için bir dizin oluşturun veya güncelleştirin.
POST /indexes?api-version=2024-07-01 { "name" : "my-search-index", "fields": [ { "name": "ID", "type": "Edm.String", "key": true, "searchable": false }, { "name": "content", "type": "Edm.String", "searchable": true, "filterable": false }, { "name": "metadata_storage_name", "type": "Edm.String", "searchable": false, "filterable": true, "sortable": true }, { "name": "metadata_storage_path", "type": "Edm.String", "searchable": false, "filterable": true, "sortable": true }, { "name": "metadata_storage_size", "type": "Edm.Int64", "searchable": false, "filterable": true, "sortable": true }, { "name": "metadata_storage_content_type", "type": "Edm.String", "searchable": true, "filterable": true, "sortable": true } ] }
Belge anahtarı alanı oluşturma ("anahtar": true). Blob içeriği için en iyi adaylar meta veri özellikleridir. Meta veri özellikleri genellikle ve
-
gibi/
belge anahtarları için geçersiz karakterler içerir. Dizin oluşturucu, yapılandırma veya alan eşlemesi gerektirmeden anahtar meta veri özelliğini otomatik olarak kodlar.metadata_storage_path
(varsayılan) nesnenin veya dosyanın tam yolumetadata_storage_name
yalnızca adlar benzersizse kullanılabilirBloblara eklediğiniz özel meta veri özelliği. Bu seçenek, blob karşıya yükleme işleminizin bu meta veri özelliğini tüm bloblara eklemesini gerektirir. Anahtar gerekli bir özellik olduğundan, değeri eksik olan tüm bloblar dizine alınamaz. Anahtar olarak özel meta veri özelliği kullanıyorsanız, bu özellikte değişiklik yapmaktan kaçının. Anahtar özelliği değişirse dizin oluşturucular aynı blob için yinelenen belgeler ekler.
Blob'un "content" özelliği aracılığıyla her dosyadan ayıklanan metni depolamak için bir "içerik" alanı ekleyin. Bu adı kullanmanız gerekmez, ancak bunu yaptığınızda örtük alan eşlemelerinden yararlanabilirsiniz.
Standart meta veri özellikleri için alanlar ekleyin. Dosya dizin oluşturmada, standart meta veri özellikleri blob meta veri özellikleriyle aynıdır. Azure Dosyalar dizin oluşturucu, kısa çizgili özellik adlarını alt çizgili özellik adlarına dönüştüren bu özellikler için otomatik olarak iç alan eşlemeleri oluşturur. Yine de dizin tanımını kullanmak istediğiniz alanları eklemeniz gerekir, ancak veri kaynağında alan eşlemeleri oluşturmayı atlayabilirsiniz.
- metadata_storage_name (
Edm.String
) - dosya adı. Örneğin, /my-share/my-folder/subfolder/resume.pdf bir dosyanız varsa, bu alanın değeri olurresume.pdf
. - metadata_storage_path (
Edm.String
) - depolama hesabı da dahil olmak üzere dosyanın tam URI'si. Örneğinhttps://myaccount.file.core.windows.net/my-share/my-folder/subfolder/resume.pdf
- metadata_storage_content_type (
Edm.String
) - dosyayı karşıya yüklemek için kullandığınız kod tarafından belirtilen içerik türü. Örneğin,application/octet-stream
. - metadata_storage_last_modified (
Edm.DateTimeOffset
) - dosyanın son değiştirilen zaman damgası. Azure AI Search, ilk dizin oluşturma işleminden sonra her şeyin yeniden dizine alınmasını önlemek için değiştirilen dosyaları tanımlamak için bu zaman damgasını kullanır. - metadata_storage_size (
Edm.Int64
) - bayt cinsinden dosya boyutu. - metadata_storage_content_md5 (
Edm.String
) - Varsa, dosya içeriğinin MD5 karması. - metadata_storage_sas_token (
Edm.String
) - Dosyaya erişmek için özel beceriler tarafından kullanılabilecek geçici bir SAS belirteci. Bu belirtecin süresi dolabileceği için daha sonra kullanılmak üzere depolanmaması gerekir.
- metadata_storage_name (
Azure Dosyalar dizin oluşturucusunu yapılandırma ve çalıştırma
Dizin ve veri kaynağı oluşturulduktan sonra dizin oluşturucuyu oluşturmaya hazır olursunuz. Dizin oluşturucu yapılandırması, çalışma zamanı davranışlarını denetleen girişleri, parametreleri ve özellikleri belirtir.
Dizin oluşturucuya bir ad verip veri kaynağına ve hedef dizine başvurarak dizin oluşturucu oluşturun veya güncelleştirin:
POST /indexers?api-version=2024-07-01 { "name" : "my-file-indexer", "dataSourceName" : "my-file-datasource", "targetIndexName" : "my-search-index", "parameters": { "batchSize": null, "maxFailedItems": null, "maxFailedItemsPerBatch": null, "configuration": { "indexedFileNameExtensions" : ".pdf,.docx", "excludedFileNameExtensions" : ".png,.jpeg" } }, "schedule" : { }, "fieldMappings" : [ ] }
İsteğe bağlı "yapılandırma" bölümünde, tüm ekleme veya dışlama ölçütlerini sağlayın. Belirtilmezse, dosya paylaşımındaki tüm dosyalar alınır.
Hem hem de
excludedFileNameExtensions
indexedFileNameExtensions
parametreleri mevcutsa, Azure AI Search önce öğesine, ardından adresineexcludedFileNameExtensions
bakarindexedFileNameExtensions
. Her iki listede de aynı dosya uzantısı varsa, dizin oluşturmanın dışında tutulur.-
Dizin oluşturucunun "içerik" ve meta veri özelliklerini dizindeki benzer adlandırılmış ve yazılan alanlarla eşlemeye yönelik yerleşik desteği olduğundan, dosya dizin oluşturmada alan eşlemelerini atlayabilirsiniz. Meta veri özellikleri için dizin oluşturucu, kısa çizgileri
-
arama dizinindeki alt çizgilerle otomatik olarak değiştirir. Diğer özellikler hakkında daha fazla bilgi için bkz . Dizin oluşturucu oluşturma.
Dizin oluşturucu oluşturulduğunda otomatik olarak çalışır. "Devre dışı" ayarını true olarak ayarlayarak bunu önleyebilirsiniz. Dizin oluşturucu yürütmesini denetlemek için isteğe bağlı olarak bir dizin oluşturucu çalıştırın veya zamanlamaya yerleştirin.
Dizin oluşturucu durumunu denetleme
Dizin oluşturucu durumunu ve yürütme geçmişini izlemek için Dizin Oluşturucu Durumunu Al isteği gönderin:
GET https://myservice.search.windows.net/indexers/myindexer/status?api-version=2024-07-01
Content-Type: application/json
api-key: [admin key]
Yanıt, durumu ve işlenen öğe sayısını içerir. Aşağıdaki örneğe benzer görünmelidir:
{
"status":"running",
"lastResult": {
"status":"success",
"errorMessage":null,
"startTime":"2022-02-21T00:23:24.957Z",
"endTime":"2022-02-21T00:36:47.752Z",
"errors":[],
"itemsProcessed":1599501,
"itemsFailed":0,
"initialTrackingState":null,
"finalTrackingState":null
},
"executionHistory":
[
{
"status":"success",
"errorMessage":null,
"startTime":"2022-02-21T00:23:24.957Z",
"endTime":"2022-02-21T00:36:47.752Z",
"errors":[],
"itemsProcessed":1599501,
"itemsFailed":0,
"initialTrackingState":null,
"finalTrackingState":null
},
... earlier history items
]
}
Yürütme geçmişi, en son tamamlanan yürütmelerin en son 50'sini içerir ve en son yürütme önce gelecek şekilde ters kronolojik sırada sıralanır.
Sonraki adımlar
Artık dizin oluşturucuyu çalıştırabilir, durumu izleyebilir veya dizin oluşturucu yürütmesini zamanlayabilirsiniz. Aşağıdaki makaleler Azure Depolama'dan içerik çeken dizin oluşturucular için geçerlidir: