Bagikan melalui


Mengindeks data dari pustaka dokumen SharePoint

Penting

Dukungan pengindeks SharePoint Online berada dalam pratinjau publik. Ini ditawarkan "apa adanya", di bawah Ketentuan Penggunaan Tambahan dan didukung hanya pada upaya terbaik. Fitur pratinjau tidak disarankan untuk beban kerja produksi dan tidak dijamin tersedia secara umum.

Pastikan untuk mengunjungi bagian batasan yang diketahui sebelum Anda mulai.

Untuk menggunakan pratinjau ini, isi formulir ini. Anda tidak akan menerima pemberitahuan persetujuan apa pun tepat setelah permintaan akses apa pun diterima secara otomatis setelah pengiriman. Setelah akses diaktifkan, gunakan PRATINJAU REST API untuk mengindeks konten Anda.

Artikel ini menjelaskan cara mengonfigurasi pengindeks pencarian untuk mengindeks dokumen yang disimpan di pustaka dokumen SharePoint untuk pencarian teks lengkap di Azure AI Search. Langkah-langkah konfigurasi adalah yang pertama, diikuti oleh perilaku dan skenario

Fungsi

Pengindeks di Azure AI Search adalah perayap yang mengekstrak data dan metadata yang dapat dicari dari sumber data. Pengindeks SharePoint Online tersambung ke situs SharePoint Anda dan mengindeks dokumen dari satu atau beberapa pustaka dokumen. Pengindeks ini menyediakan fungsionalitas berikut:

  • Indeks file dan metadata dari satu atau beberapa pustaka dokumen.
  • Indeks secara bertahap, hanya mengambil file dan metadata baru dan yang diubah.
  • Deteksi penghapusan bawaan. Penghapusan dalam pustaka dokumen diambil pada pengindeks berikutnya yang dijalankan, dan dokumen dihapus dari indeks.
  • Teks dan gambar yang dinormalisasi diekstrak secara default dari dokumen yang diindeks. Secara opsional, Anda dapat menambahkan set keterampilan untuk pengayaan AI yang lebih dalam, seperti OCR atau terjemahan teks.

Prasyarat

Format dokumen yang didukung

Pengindeks SharePoint Online dapat mengekstrak teks dari format dokumen berikut:

  • CSV (lihat Mengindeks blob CSV)
  • EML
  • EPUB
  • GZ
  • HTML
  • JSON (lihat Mengindeks blob JSON)
  • KML (XML untuk representasi geografis)
  • Format Microsoft Office: DOCX/DOC/DOCM, XLSX/XLS/XLSM, PPTX/PPT/PPTM, MSG (email Outlook), XML (XML WORD 2003 dan 2006)
  • Format Dokumen Terbuka: ODT, ODS, ODP
  • PDF
  • File teks biasa (lihat juga Mengindeks teks biasa)
  • RTF
  • XML
  • ZIP

Batasan dan pertimbangan

Berikut adalah batasan fitur ini:

  • Pengindeksan Daftar SharePoint tidak didukung.

  • Pengindeksan SharePoint . Konten situs ASPX tidak didukung.

  • File buku catatan OneNote tidak didukung.

  • Titik akhir privat tidak didukung.

  • Mengganti nama folder SharePoint tidak memicu pengindeksan inkremental. Folder yang diganti namanya diperlakukan sebagai konten baru.

  • SharePoint mendukung model otorisasi terperinci yang menentukan akses per pengguna di tingkat dokumen. Pengindeks tidak menarik izin ini ke dalam indeks, dan Azure AI Search tidak mendukung otorisasi tingkat dokumen. Saat dokumen diindeks dari SharePoint ke layanan pencarian, konten tersedia untuk siapa saja yang memiliki akses baca ke indeks. Jika Anda memerlukan izin tingkat dokumen, Anda harus mempertimbangkan filter keamanan untuk memangkas hasil dan mengotomatiskan penyalinan izin pada tingkat file ke bidang dalam indeks.

  • Mengindeks file terenkripsi pengguna, file yang dilindungi Manajemen Hak Informasi (IRM), file ZIP dengan kata sandi atau konten terenkripsi serupa tidak didukung. Agar konten terenkripsi diproses, pengguna dengan izin yang tepat ke file tertentu harus menghapus enkripsi sehingga item dapat diindeks sesuai ketika pengindeks menjalankan iterasi terjadwal berikutnya.

  • Pengindeksan subsitus secara rekursif dari situs tertentu yang disediakan tidak didukung.

Berikut adalah pertimbangan saat menggunakan fitur ini:

  • Jika Anda memerlukan solusi pengindeksan konten SharePoint di lingkungan produksi, pertimbangkan untuk membuat konektor kustom dengan SharePoint Webhooks, memanggil Microsoft Graph API untuk mengekspor data ke kontainer Azure Blob, lalu gunakan pengindeks blob Azure untuk pengindeksan bertahap.
  • Jika konfigurasi SharePoint Anda memungkinkan proses Microsoft 365 memperbarui metadata sistem file SharePoint, ketahuilah bahwa pembaruan ini dapat memicu pengindeks SharePoint Online, menyebabkan pengindeks menyerap dokumen beberapa kali. Karena pengindeks SharePoint Online adalah konektor pihak ketiga ke Azure, pengindeks tidak dapat membaca konfigurasi atau memvariasikan perilakunya. Ini menanggapi perubahan konten baru dan yang diubah, terlepas dari bagaimana pembaruan tersebut dibuat. Untuk alasan ini, pastikan Anda menguji penyiapan dan memahami jumlah pemrosesan dokumen sebelum menggunakan pengindeks dan pengayaan AI apa pun.

Mengonfigurasi pengindeks SharePoint Online

Untuk menyiapkan pengindeks SharePoint Online, gunakan portal Azure dan PRATINJAU REST API. Anda dapat menggunakan pratinjau 2020-06-30 atau yang lebih baru. Kami merekomendasikan API pratinjau terbaru.

Bagian ini menyediakan langkah-langkahnya. Anda juga dapat menonton video berikut.

Langkah 1 (Opsional): Mengaktifkan identitas terkelola yang ditetapkan sistem

Aktifkan identitas terkelola yang ditetapkan sistem untuk secara otomatis mendeteksi penyewa tempat layanan pencarian disediakan.

Lakukan langkah ini jika situs SharePoint berada di penyewa yang sama dengan layanan pencarian. Lewati langkah ini jika situs SharePoint berada di penyewa yang berbeda. Identitas tidak digunakan untuk pengindeksan, hanya deteksi penyewa. Anda juga dapat melewati langkah ini jika Anda ingin meletakkan ID penyewa di string koneksi.

Cuplikan layar memperlihatkan cara mengaktifkan identitas terkelola yang ditetapkan sistem.

Setelah memilih Simpan, Anda mendapatkan ID Objek yang telah ditetapkan ke layanan pencarian Anda.

Cuplikan layar pengidentifikasi objek.

Langkah 2: Memutuskan izin mana yang diperlukan pengindeks

Pengindeks SharePoint Online mendukung izin yang didelegasikan dan aplikasi . Pilih izin mana yang ingin Anda gunakan berdasarkan skenario Anda.

Kami merekomendasikan izin berbasis aplikasi. Lihat batasan untuk masalah umum yang terkait dengan izin yang didelegasikan.

  • Izin aplikasi (disarankan), tempat pengindeks berjalan di bawah identitas penyewa SharePoint dengan akses ke semua situs dan file. Pengindeks memerlukan rahasia klien. Pengindeks juga akan memerlukan persetujuan admin penyewa sebelum dapat mengindeks konten apa pun.

  • Izin yang didelegasikan, tempat pengindeks berjalan di bawah identitas pengguna atau aplikasi yang mengirim permintaan. Akses data terbatas pada situs dan file yang dapat diakses oleh pemanggil. Untuk mendukung izin yang didelegasikan, pengindeks memerlukan perintah kode perangkat untuk masuk atas nama pengguna. Izin yang didelegasikan pengguna memberlakukan kedaluwarsa token setiap 75 menit, per pustaka keamanan terbaru yang digunakan untuk menerapkan jenis autentikasi ini. Ini bukan perilaku yang dapat disesuaikan. Token yang kedaluwarsa memerlukan pengindeksan manual menggunakan Run Indexer (pratinjau). Untuk alasan ini, Anda mungkin ingin izin berbasis aplikasi sebagai gantinya.

Jika organisasi Microsoft Entra Anda mengaktifkan akses bersyarah dan administrator Anda tidak dapat memberikan akses perangkat apa pun untuk izin yang didelegasikan, Anda harus mempertimbangkan izin berbasis aplikasi sebagai gantinya. Untuk informasi selengkapnya, lihat Kebijakan Akses Bersyar microsoft Entra.

Langkah 3: Membuat pendaftaran aplikasi Microsoft Entra

Pengindeks SharePoint Online menggunakan aplikasi Microsoft Entra ini untuk autentikasi.

  1. Masuk ke portal Azure.

  2. Cari atau navigasi ke ID Microsoft Entra, lalu pilih Pendaftaran aplikasi.

  3. Pilih + Pendaftaran baru:

    1. Berikan nama untuk aplikasi Anda.
    2. Pilih Penyewa tunggal.
    3. Lewati langkah penetapan URI. Tidak perlu mengalihkan URI.
    4. Pilih Daftarkan.
  4. Di sebelah kiri, pilih Izin API, lalu Tambahkan izin, lalu Microsoft Graph.

    • Jika pengindeks menggunakan izin API aplikasi, pilih Izin aplikasi dan tambahkan yang berikut ini:

      • Aplikasi - Files.Read.All
      • Aplikasi - Sites.Read.All

      Cuplikan layar izin API aplikasi.

      Menggunakan izin aplikasi berarti pengindeks mengakses situs SharePoint dalam konteks layanan. Jadi, saat Anda menjalankan pengindeks, pengindeks akan memiliki akses ke semua konten di penyewa SharePoint, yang memerlukan persetujuan admin penyewa. Rahasia klien juga diperlukan untuk autentikasi. Menyiapkan rahasia klien dijelaskan nanti di artikel ini.

    • Jika pengindeks menggunakan izin API yang didelegasikan, pilih Izin yang didelegasikan dan tambahkan yang berikut ini:

      • Didelegasikan - Files.Read.All
      • Didelegasikan - Sites.Read.All
      • Didelegasikan - User.Read

      Cuplikan layar memperlihatkan izin API yang didelegasikan.

      Izin yang didelegasikan memungkinkan klien pencarian tersambung ke SharePoint di bawah identitas keamanan pengguna saat ini.

  5. Berikan persetujuan admin.

    Persetujuan admin penyewa diperlukan saat menggunakan izin API aplikasi. Beberapa penyewa dikunci sedih sehingga persetujuan admin penyewa juga diperlukan untuk izin API yang didelegasikan. Jika salah satu kondisi ini berlaku, Anda harus memiliki persetujuan pemberian admin penyewa untuk aplikasi Microsoft Entra ini sebelum membuat pengindeks.

    Cuplikan layar memperlihatkan aplikasi Microsoft Entra memberikan persetujuan admin.

  6. Pilih tab Autentikasi .

  7. Atur Izinkan alur klien publik ke Ya lalu pilih Simpan.

  8. Pilih + Tambahkan platform, lalu Aplikasi seluler dan desktop, lalu periksa https://login.microsoftonline.com/common/oauth2/nativeclient, kemudian Konfigurasikan.

    Cuplikan layar memperlihatkan konfigurasi autentikasi aplikasi Microsoft Entra.

  9. (Hanya Izin API Aplikasi) Untuk mengautentikasi ke aplikasi Microsoft Entra menggunakan izin aplikasi, pengindeks memerlukan rahasia klien.

    • Pilih Sertifikat & Rahasia dari menu di sebelah kiri, lalu Rahasia klien, lalu Rahasia klien baru.

      Cuplikan layar memperlihatkan rahasia klien baru.

    • Di menu yang muncul, masukkan deskripsi untuk rahasia klien baru. Sesuaikan tanggal kedaluwarsa jika perlu. Jika rahasia kedaluwarsa, rahasia perlu dibuat ulang dan pengindeks perlu diperbarui dengan rahasia baru.

      Cuplikan layar memperlihatkan cara menyiapkan rahasia klien.

    • Rahasia klien baru muncul dalam daftar rahasia. Setelah Anda menavigasi menjauh dari halaman, rahasia tidak lagi terlihat, jadi salin menggunakan tombol salin dan simpan di lokasi yang aman.

      Cuplikan layar memperlihatkan tempat menyalin rahasia klien.

Langkah 4: Membuat sumber data

Mulai dari bagian ini, gunakan PRATINJAU REST API untuk langkah-langkah yang tersisa. Kami merekomendasikan API pratinjau terbaru.

Sumber data menentukan data mana yang akan diindeks, kredensial, dan kebijakan untuk mengidentifikasi perubahan data secara efisien (baris baru, dimodifikasi, atau dihapus). Sumber data dapat digunakan oleh beberapa pengindeks dalam layanan pencarian yang sama.

Untuk pengindeksan SharePoint, sumber data harus memiliki properti yang diperlukan berikut ini:

  • nama adalah nama unik sumber data dalam layanan pencarian Anda.
  • jenis harus "sharepoint". Nilai ini peka huruf besar/kecil.
  • kredensial menyediakan titik akhir SharePoint dan ID aplikasi Microsoft Entra (klien). Contoh titik akhir SharePoint adalah https://microsoft.sharepoint.com/teams/MySharePointSite. Anda bisa mendapatkan titik akhir dengan menavigasi ke halaman beranda situs SharePoint Anda dan menyalin URL dari browser.
  • kontainer menentukan pustaka dokumen yang akan diindeks. Properti mengontrol dokumen mana yang diindeks.

Untuk membuat sumber data, panggil Buat Sumber Data (pratinjau).

POST https://[service name].search.windows.net/datasources?api-version=2024-05-01-preview
Content-Type: application/json
api-key: [admin key]

{
    "name" : "sharepoint-datasource",
    "type" : "sharepoint",
    "credentials" : { "connectionString" : "[connection-string]" },
    "container" : { "name" : "defaultSiteLibrary", "query" : null }
}

Format string koneksi

Format string koneksi berubah berdasarkan apakah pengindeks menggunakan izin API yang didelegasikan atau izin API aplikasi

  • Izin API yang didelegasikan string koneksi format

    SharePointOnlineEndpoint=[SharePoint site url];ApplicationId=[Azure AD App ID];TenantId=[SharePoint site tenant id]

  • Izin API Aplikasi string koneksi format

    SharePointOnlineEndpoint=[SharePoint site url];ApplicationId=[Azure AD App ID];ApplicationSecret=[Azure AD App client secret];TenantId=[SharePoint site tenant id]

Catatan

Jika situs SharePoint berada dalam penyewa yang sama dengan layanan pencarian dan identitas terkelola yang ditetapkan sistem diaktifkan, TenantId tidak harus disertakan dalam string koneksi. Jika situs SharePoint berada di penyewa yang berbeda dari layanan pencarian, TenantId harus disertakan.

Langkah 5: Membuat indeks

Indeks menentukan bidang dalam dokumen, atribut, dan konstruksi lain yang membentuk pengalaman pencarian.

Untuk membuat indeks, panggil Buat Indeks (pratinjau):

POST https://[service name].search.windows.net/indexes?api-version=2024-05-01-preview
Content-Type: application/json
api-key: [admin key]

{
    "name" : "sharepoint-index",
    "fields": [
        { "name": "id", "type": "Edm.String", "key": true, "searchable": false },
        { "name": "metadata_spo_item_name", "type": "Edm.String", "key": false, "searchable": true, "filterable": false, "sortable": false, "facetable": false },
        { "name": "metadata_spo_item_path", "type": "Edm.String", "key": false, "searchable": false, "filterable": false, "sortable": false, "facetable": false },
        { "name": "metadata_spo_item_content_type", "type": "Edm.String", "key": false, "searchable": false, "filterable": true, "sortable": false, "facetable": true },
        { "name": "metadata_spo_item_last_modified", "type": "Edm.DateTimeOffset", "key": false, "searchable": false, "filterable": false, "sortable": true, "facetable": false },
        { "name": "metadata_spo_item_size", "type": "Edm.Int64", "key": false, "searchable": false, "filterable": false, "sortable": false, "facetable": false },
        { "name": "content", "type": "Edm.String", "searchable": true, "filterable": false, "sortable": false, "facetable": false }
    ]
}

Penting

Hanya metadata_spo_site_library_item_id dapat digunakan sebagai bidang kunci dalam indeks yang dihuni oleh pengindeks SharePoint Online. Jika bidang kunci tidak ada di sumber data, metadata_spo_site_library_item_id secara otomatis dipetakan ke bidang kunci.

Langkah 6: Membuat pengindeks

Pengindeks menyambungkan sumber data dengan indeks pencarian target dan menyediakan jadwal untuk mengotomatiskan refresh data. Setelah indeks dan sumber data dibuat, Anda dapat membuat pengindeks.

Jika Anda menggunakan izin yang didelegasikan, selama langkah ini, Anda diminta untuk masuk dengan kredensial organisasi yang memiliki akses ke situs SharePoint. Jika memungkinkan, sebaiknya buat akun pengguna organisasi baru dan berikan pengguna baru tersebut izin yang persis Anda inginkan untuk dimiliki pengindeks.

Ada beberapa langkah untuk membuat pengindeks:

  1. Kirim permintaan Buat Pengindeks (pratinjau):

    POST https://[service name].search.windows.net/indexers?api-version=2024-05-01-preview
    Content-Type: application/json
    api-key: [admin key]
    
    {
        "name" : "sharepoint-indexer",
        "dataSourceName" : "sharepoint-datasource",
        "targetIndexName" : "sharepoint-index",
        "parameters": {
        "batchSize": null,
        "maxFailedItems": null,
        "maxFailedItemsPerBatch": null,
        "base64EncodeKeys": null,
        "configuration": {
            "indexedFileNameExtensions" : ".pdf, .docx",
            "excludedFileNameExtensions" : ".png, .jpg",
            "dataToExtract": "contentAndMetadata"
          }
        },
        "schedule" : { },
        "fieldMappings" : [
            { 
              "sourceFieldName" : "metadata_spo_site_library_item_id", 
              "targetFieldName" : "id", 
              "mappingFunction" : { 
                "name" : "base64Encode" 
              } 
             }
        ]
    }
    

    Jika Anda menggunakan izin aplikasi, perlu menunggu hingga eksekusi awal selesai sebelum mulai mengkueri indeks Anda. Instruksi berikut yang diberikan dalam langkah ini berkaitan khusus untuk izin yang didelegasikan, dan tidak berlaku untuk izin aplikasi.

  2. Saat Anda membuat pengindeks untuk pertama kalinya , permintaan Buat Pengindeks (pratinjau) menunggu hingga Anda menyelesaikan langkah berikutnya. Anda harus memanggil Dapatkan Status Pengindeks untuk mendapatkan tautan dan memasukkan kode perangkat baru Anda.

    GET https://[service name].search.windows.net/indexers/sharepoint-indexer/status?api-version=2024-05-01-preview
    Content-Type: application/json
    api-key: [admin key]
    

    Jika Anda tidak menjalankan Dapatkan Status Pengindeks dalam waktu 10 menit, kode akan kedaluwarsa dan Anda harus membuat ulang sumber data.

  3. Salin kode masuk perangkat dari respons Dapatkan Status Pengindeks. Login perangkat dapat ditemukan di "errorMessage".

    {
        "lastResult": {
            "status": "transientFailure",
            "errorMessage": "To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code <CODE> to authenticate."
        }
    }
    
  4. Berikan kode yang disertakan dalam pesan kesalahan.

    Cuplikan layar memperlihatkan cara memasukkan kode perangkat.

  5. Pengindeks SharePoint Online akan mengakses konten SharePoint sebagai pengguna yang masuk. Pengguna yang login selama langkah ini akan menjadi pengguna yang masuk tersebut. Jadi, jika Anda masuk dengan akun pengguna yang tidak memiliki akses ke dokumen di Pustaka Dokumen yang ingin Anda indeks, pengindeks tidak akan memiliki akses ke dokumen tersebut.

    Jika memungkinkan, sebaiknya buat akun pengguna organisasi baru dan berikan pengguna baru tersebut izin yang persis Anda inginkan untuk dimiliki pengindeks.

  6. Setujui izin yang diminta.

    Cuplikan layar memperlihatkan cara menyetujui izin API.

  7. Permintaan awal Buat Pengindeks (pratinjau) selesai jika semua izin yang disediakan di atas sudah benar dan dalam jangka waktu 10 menit.

Catatan

Jika aplikasi Microsoft Entra memerlukan persetujuan admin dan tidak disetujui sebelum masuk, Anda mungkin melihat layar berikut. Persetujuan admin diperlukan untuk melanjutkan. Cuplikan layar memperlihatkan persetujuan admin yang diperlukan.

Langkah 7: Periksa status pengindeks

Setelah pengindeks dibuat, Anda dapat memanggil Dapatkan Status Pengindeks:

GET https://[service name].search.windows.net/indexers/sharepoint-indexer/status?api-version=2024-05-01-preview
Content-Type: application/json
api-key: [admin key]

Memperbarui sumber data

Jika tidak ada pembaruan untuk objek sumber data, pengindeks berjalan sesuai jadwal tanpa interaksi pengguna.

Namun, jika Anda mengubah objek sumber data saat kode perangkat kedaluwarsa, Anda harus masuk lagi agar pengindeks dapat berjalan. Misalnya, jika Anda mengubah kueri sumber data, masuk lagi menggunakan https://microsoft.com/devicelogin dan mendapatkan kode perangkat baru.

Berikut adalah langkah-langkah untuk memperbarui sumber data, dengan asumsi kode perangkat yang kedaluwarsa:

  1. Panggil Jalankan Pengindeks (pratinjau) untuk memulai eksekusi pengindeks secara manual.

    POST https://[service name].search.windows.net/indexers/sharepoint-indexer/run?api-version=2024-05-01-preview  
    Content-Type: application/json
    api-key: [admin key]
    
  2. Periksa status pengindeks.

    GET https://[service name].search.windows.net/indexers/sharepoint-indexer/status?api-version=2024-05-01-preview
    Content-Type: application/json
    api-key: [admin key]
    
  3. Jika Anda mendapatkan kesalahan yang meminta Anda untuk mengunjungi https://microsoft.com/devicelogin, buka halaman dan salin kode baru.

  4. Tempelkan kode ke dalam kotak dialog.

  5. Jalankan pengindeks lagi secara manual dan periksa status pengindeks. Kali ini, pengindeks yang dijalankan harus berhasil dimulai.

Mengindeks metadata dokumen

Jika Anda mengindeks metadata dokumen ("dataToExtract": "contentAndMetadata"), metadata berikut akan tersedia untuk diindeks.

pengidentifikasi Tipe Deskripsi
metadata_spo_site_library_item_id Edm.String Kunci kombinasi ID situs, ID pustaka, dan ID item, yang secara unik mengidentifikasi item dalam pustaka dokumen untuk situs.
metadata_spo_site_id Edm.String ID situs SharePoint.
metadata_spo_library_id Edm.String ID pustaka dokumen.
metadata_spo_item_id Edm.String ID item (dokumen) di pustaka.
metadata_spo_item_last_modified Edm.DateTimeOffset Tanggal/waktu (UTC) item yang dimodifikasi terakhir.
metadata_spo_item_name Edm.String Nama item.
metadata_spo_item_size Edm.Int64 Ukuran item (dalam byte).
metadata_spo_item_content_type Edm.String Jenis konten item.
metadata_spo_item_extension Edm.String Ekstensi item.
metadata_spo_item_weburi Edm.String URI item.
metadata_spo_item_path Edm.String Kombinasi jalur induk dan nama item.

Pengindeks SharePoint Online juga mendukung metadata khusus untuk setiap jenis dokumen. Informasi selengkapnya dapat ditemukan di properti metadata konten yang digunakan dalam Pencarian Azure AI.

Catatan

Untuk mengindeks metadata kustom, "additionalColumns" harus ditentukan dalam parameter kueri sumber data.

Sertakan atau kecualikan menurut jenis file

Anda dapat mengontrol file mana yang diindeks dengan mengatur kriteria penyertaan dan pengecualian di bagian "parameter" dari definisi pengindeks.

Sertakan ekstensi file tertentu dengan mengatur "indexedFileNameExtensions" ke daftar ekstensi file yang dipisahkan koma (dengan titik terdepan). Kecualikan ekstensi file tertentu dengan mengatur "excludedFileNameExtensions" ke ekstensi yang harus dilewati. Jika ekstensi yang sama ada di kedua daftar, ekstensi tersebut dikecualikan dari pengindeksan.

PUT /indexers/[indexer name]?api-version=2024-05-01-preview
{
    "parameters" : { 
        "configuration" : { 
            "indexedFileNameExtensions" : ".pdf, .docx",
            "excludedFileNameExtensions" : ".png, .jpeg" 
        } 
    }
}

Mengontrol dokumen mana yang diindeks

Pengindeks SharePoint Online tunggal dapat mengindeks konten dari satu atau beberapa pustaka dokumen. Gunakan parameter "kontainer" pada definisi sumber data untuk menunjukkan situs dan pustaka dokumen mana yang akan diindeks.

Bagian "kontainer" sumber data memiliki dua properti untuk tugas ini: "nama" dan "kueri".

Nama

Properti "nama" diperlukan dan harus salah satu dari tiga nilai:

Nilai Deskripsi
defaultSiteLibrary Indeks semua konten dari pustaka dokumen default situs.
allSiteLibraries Indeks semua konten dari semua pustaka dokumen dalam situs. Pustaka dokumen dari subsitus berada di luar cakupan/ Jika Anda memerlukan konten dari subsitus, pilih "useQuery" dan tentukan "includeLibrariesInSite".
useQuery Hanya indeks konten yang ditentukan dalam "kueri".

Kueri

Parameter "kueri" dari sumber data terdiri dari pasangan kata kunci/nilai. Di bawah ini adalah kata kunci yang dapat digunakan. Nilainya adalah URL situs atau URL pustaka dokumen.

Catatan

Untuk mendapatkan nilai untuk kata kunci tertentu, sebaiknya navigasikan ke pustaka dokumen yang coba Anda sertakan/kecualikan dan salin URI dari browser. Ini adalah cara termudah mendapatkan nilai untuk digunakan dengan kata kunci dalam kueri.

Kata kunci Deskripsi dan contoh nilai
nihil Jika null atau kosong, indeks pustaka dokumen default atau semua pustaka dokumen, tergantung pada nama kontainer.

Contoh:

"container" : { "name" : "defaultSiteLibrary", "query" : null }
includeLibrariesInSite Indeks konten dari semua pustaka di bawah situs yang ditentukan di string koneksi. Nilainya harus URI situs atau subsitus.

Contoh 1:

"container" : { "name" : "useQuery", "query" : "includeLibrariesInSite=https://mycompany.sharepoint.com/mysite" }

Contoh 2 (hanya sertakan beberapa subsitus):

"container" : { "name" : "useQuery", "query" : "includeLibrariesInSite=https://mycompany.sharepoint.com/sites/TopSite/SubSite1;includeLibrariesInSite=https://mycompany.sharepoint.com/sites/TopSite/SubSite2" }
includeLibrary Indeks semua isi dari pustaka ini. Nilainya adalah jalur yang sepenuhnya memenuhi syarat ke pustaka, yang dapat disalin dari browser Anda:

Contoh 1 (jalur yang sepenuhnya memenuhi syarat):

"container" : { "name" : "useQuery", "query" : "includeLibrary=https://mycompany.sharepoint.com/mysite/MyDocumentLibrary" }

Contoh 2 (URI disalin dari browser Anda):

"container" : { "name" : "useQuery", "query" : "includeLibrary=https://mycompany.sharepoint.com/teams/mysite/MyDocumentLibrary/Forms/AllItems.aspx" }
excludeLibrary Jangan indeks isi dari pustaka ini. Nilainya adalah jalur yang sepenuhnya memenuhi syarat ke pustaka, yang dapat disalin dari browser Anda:

Contoh 1 (jalur yang sepenuhnya memenuhi syarat):

"container" : { "name" : "useQuery", "query" : "includeLibrariesInSite=https://mysite.sharepoint.com/subsite1; excludeLibrary=https://mysite.sharepoint.com/subsite1/MyDocumentLibrary" }

Contoh 2 (URI disalin dari browser Anda):

"container" : { "name" : "useQuery", "query" : "includeLibrariesInSite=https://mycompany.sharepoint.com/teams/mysite; excludeLibrary=https://mycompany.sharepoint.com/teams/mysite/MyDocumentLibrary/Forms/AllItems.aspx" }
additionalColumns Indeks kolom dari pustaka dokumen. Nilainya adalah daftar nama kolom yang dipisahkan koma yang ingin Anda indeks. Gunakan garis miring terbelakang ganda untuk menghindari titik koma dan koma dalam nama kolom:

Contoh 1 (additionalColumns=MyCustomColumn,MyCustomColumn2):

"container" : { "name" : "useQuery", "query" : "includeLibrary=https://mycompany.sharepoint.com/mysite/MyDocumentLibrary;additionalColumns=MyCustomColumn,MyCustomColumn2" }

Contoh 2 (karakter escape menggunakan garis miring terbelakang ganda):

"container" : { "name" : "useQuery", "query" : "includeLibrary=https://mycompany.sharepoint.com/teams/mysite/MyDocumentLibrary/Forms/AllItems.aspx;additionalColumns=MyCustomColumnWith\\,,MyCustomColumnWith\\;" }

Menangani kesalahan

Secara default, pengindeks SharePoint Online berhenti segera setelah menemukan dokumen dengan jenis konten yang tidak didukung (misalnya, gambar). Anda dapat menggunakan excludedFileNameExtensions parameter untuk melewati jenis konten tertentu. Namun, Anda mungkin perlu mengindeks dokumen tanpa mengetahui semua tipe konten yang mungkin sebelumnya. Untuk melanjutkan pengindeksan ketika jenis konten yang tidak didukung ditemui, atur parameter konfigurasi failOnUnsupportedContentType ke false:

PUT https://[service name].search.windows.net/indexers/[indexer name]?api-version=2024-05-01-preview
Content-Type: application/json
api-key: [admin key]

{
    ... other parts of indexer definition
    "parameters" : { "configuration" : { "failOnUnsupportedContentType" : false } }
}

Untuk beberapa dokumen, Azure AI Search tidak dapat menentukan tipe konten, atau tidak dapat memproses dokumen dengan tipe konten yang didukung. Untuk mengabaikan mode kegagalan ini, atur parameter konfigurasi failOnUnprocessableDocument ke false:

"parameters" : { "configuration" : { "failOnUnprocessableDocument" : false } }

Azure AI Search membatasi ukuran dokumen yang diindeks. Batas ini didokumenkan dalam Batas Layanan di Azure AI Search. Dokumen besar diperlakukan sebagai kesalahan secara default. Namun, Anda masih dapat mengindeks metadata penyimpanan dokumen besar jika Anda menetapkan parameter konfigurasi indexStorageMetadataOnlyForOversizedDocuments ke true:

"parameters" : { "configuration" : { "indexStorageMetadataOnlyForOversizedDocuments" : true } }

Anda juga dapat melanjutkan pengindeksan jika kesalahan terjadi pada setiap titik pemrosesan, baik saat mengurai dokumen atau saat menambahkan dokumen ke indeks. Untuk mengabaikan sejumlah kesalahan tertentu, atur parameter konfigurasi maxFailedItems dan maxFailedItemsPerBatch ke nilai yang diinginkan. Contohnya:

{
    ... other parts of indexer definition
    "parameters" : { "maxFailedItems" : 10, "maxFailedItemsPerBatch" : 10 }
}

Jika file di situs SharePoint mengaktifkan enkripsi, pesan kesalahan yang mirip dengan yang berikut ini mungkin ditemui:

Code: resourceModified Message: The resource has changed since the caller last read it; usually an eTag mismatch Inner error: Code: irmEncryptFailedToFindProtector

Pesan kesalahan juga akan menyertakan ID situs SharePoint, ID drive, dan ID item drive dalam pola berikut: <sharepoint site id> :: <drive id> :: <drive item id>. Informasi ini dapat digunakan untuk mengidentifikasi item mana yang gagal di akhir SharePoint. Pengguna kemudian dapat menghapus enkripsi dari item untuk mengatasi masalah tersebut.

Lihat juga