Gambaran Umum Pencarian Windows
Windows Search adalah platform pencarian desktop yang memiliki kemampuan pencarian instan untuk jenis file dan jenis data yang paling umum, dan pengembang pihak ketiga dapat memperluas kemampuan ini ke jenis file dan jenis data baru.
Topik ini diatur sebagai berikut:
- Pendahuluan
- Prasyarat Teknis
- Dokumentasi Windows Search SDK
- Riwayat Windows Search
- Sumber Tambahan
- Topik terkait
Pendahuluan
Windows Search adalah komponen standar Windows 7 dan Windows Vista, dan diaktifkan secara default. Windows Search menggantikan Windows Desktop Search (WDS), yang tersedia sebagai add-in untuk Windows XP dan Windows Server 2003.
Windows Search terdiri dari tiga komponen:
Layanan Pencarian Windows
WSS mengatur fitur yang diekstrak dari kumpulan dokumen. Protokol Pencarian Windows memungkinkan klien untuk berkomunikasi dengan server yang menghosting WSS, baik untuk mengeluarkan kueri maupun untuk memungkinkan administrator mengelola server pengindeksan. Saat memproses file, WSS menganalisis sekumpulan dokumen, mengekstrak informasi yang berguna, lalu mengatur informasi yang diekstrak sehingga properti dokumen tersebut dapat dikembalikan secara efisien sebagai respons terhadap kueri.
Kumpulan dokumen yang dapat dikueri terdiri dari katalog, yang merupakan unit organisasi tingkat tertinggi di Windows Search. Katalog mewakili sekumpulan dokumen terindeks yang dapat dikueri. Katalog terdiri dari tabel properti dengan teks atau nilai dan lokasi (lokal) terkait yang disimpan dalam kolom tabel. Setiap baris tabel sesuai dengan dokumen terpisah dalam cakupan katalog, dan setiap kolom tabel sesuai dengan properti. Katalog mungkin berisi indeks terbalik (untuk pencocokan kata cepat) dan cache properti (untuk pengambilan cepat nilai properti).
Proses pengindeks diimplementasikan sebagai layanan Windows yang berjalan di akun LocalSystem dan selalu berjalan untuk semua pengguna (bahkan jika tidak ada pengguna yang masuk), yang memungkinkan Windows Search untuk menyelesaikan hal berikut:
- Pertahankan satu indeks yang dibagikan di antara semua pengguna.
- Pertahankan pembatasan keamanan pada akses konten.
- Memproses kueri jarak jauh dari komputer klien pada jaringan.
layanan Pencarian dirancang untuk melindungi pengalaman pengguna dan performa sistem saat mengindeks. Kondisi berikut menyebabkan layanan membatasi kembali atau menjeda pengindeksan:
- Penggunaan CPU tinggi oleh proses terkait non-pencarian.
- Tingkat I/O sistem tinggi termasuk pembacaan dan penulisan file, file halaman dan I/O cache file, dan I/O file yang dipetakan.
- Ketersediaan memori rendah.
- Daya tahan baterai rendah.
- Ruang disk rendah pada drive yang menyimpan indeks.
Platform Pengembangan
Cara yang disukai untuk mengakses API Pencarian dan membuat aplikasi Windows Search adalah melalui sumber data Shell. Sumber data Shell adalah komponen yang digunakan untuk memperluas namespace Shell dan mengekspos item di penyimpanan data. Penyimpanan data adalah repositori data. Penyimpanan data dapat diekspos ke model pemrograman Shell sebagai kontainer yang menggunakan sumber data Shell. Item dalam penyimpanan data dapat diindeks oleh sistem Windows Search menggunakan penangan protokol.
Misalnya, ISearchFolderItemFactory adalah komponen yang dapat membuat instans sumber data folder pencarian, yang merupakan semacam sumber data "virtual" yang disediakan oleh Shell yang dapat menjalankan kueri melalui sumber data lain di namespace shell dan menghitung hasil. Ini dapat melakukannya baik dengan menggunakan pengindeks atau dengan menghitung dan memeriksa item secara manual dalam cakupan yang ditentukan. Antarmuka ini memungkinkan Anda menyiapkan parameter pencarian dengan menggunakan metode yang membuat dan memodifikasi folder pencarian. Jika metode antarmuka ini tidak dipanggil, nilai default digunakan sebagai gantinya.
Mengakses kemampuan Windows Search secara tidak langsung melalui model data Shell lebih disukai karena menyediakan akses ke fungsionalitas Shell penuh pada tingkat model data Shell. Misalnya, Anda dapat mengatur cakupan pencarian ke pustaka (yang merupakan fitur yang tersedia di Windows 7 dan yang lebih baru) untuk menggunakan folder pustaka sebagai cakupan kueri. Windows Search kemudian menggabungkan hasil pencarian dari lokasi tersebut jika berada dalam indeks yang berbeda (jika folder berada di komputer yang berbeda). Lapisan data Shell juga membuat tampilan properti item yang lebih lengkap, mensintesis beberapa nilai properti. Ini juga menyediakan akses ke fitur pencarian untuk penyimpanan data yang tidak diindeks oleh Windows Search. Misalnya, Anda dapat mencari perangkat penyimpanan Universal Serial Bus (USB), perangkat portabel yang menggunakan protokol MTP, atau server File Transfer Protocol (FTP) melalui sumber data Shell yang menyediakan akses ke sistem penyimpanan tersebut. Melakukannya memastikan pengalaman pengguna yang lebih baik.
Windows Search memiliki cache nilai properti yang digunakan dalam implementasi Windows Search Service (WSS). Nilai properti ini dapat dikueri secara terprogram dengan menggunakan penyedia Windows Search OLE DB, atau melalui ISearchFolderItemFactory, yang mewakili item dalam hasil pencarian dan tampilan berbasis kueri. Windows Search kemudian mengumpulkan dan menyimpan properti yang dipancarkan oleh penangan filter atau penangan properti ketika item seperti dokumen Word diindeks. Penyimpanan ini dibuang dan dibangun kembali ketika indeks dibangun kembali.
Pengembang pihak ketiga dapat membuat aplikasi yang menggunakan data dalam indeks melalui kueri terprogram, dan dapat memperluas data dalam indeks untuk jenis file dan item kustom yang akan diindeks oleh Windows Search. Jika Anda ingin menampilkan hasil kueri di Windows Explorer, Anda harus menerapkan sumber data Shell sebelum Anda bisa membuat handler protokol untuk memperluas indeks. Namun, jika semua kueri terprogram (melalui OLE DB misalnya) dan ditafsirkan oleh kode aplikasi daripada Shell, namespace Shell masih lebih disukai tetapi tidak diperlukan.
Handler protokol diperlukan windows untuk mendapatkan informasi tentang isi file, seperti item dalam database atau tipe file kustom. Meskipun Windows Search bisa mengindeks nama dan properti file, Windows tidak memiliki informasi tentang isi berkas. Akibatnya, item tersebut tidak dapat diindeks atau diekspos di Windows Shell. Dengan menerapkan handler protokol kustom, Anda dapat mengekspos item ini. Untuk daftar handler yang diidentifikasi oleh skenario pengembang yang coba Anda capai, lihat "Gambaran Umum Handler" di Windows Search sebagai Platform Pengembangan.
Catatan
Sumber data Shell terkadang dikenal sebagai ekstensi namespace Shell. Handler terkadang dikenal sebagai ekstensi Shell atau handler ekstensi Shell.
Antarmuka Pengguna
Di Windows Vista dan yang lebih baru, Windows Search diintegrasikan ke semua jendela Windows Explorer untuk akses instan ke pencarian. Ini memungkinkan pengguna untuk dengan cepat mencari file dan item berdasarkan nama file, properti, dan konten teks lengkap. Hasil juga dapat difilter lebih lanjut untuk menyempurnakan pencarian. Berikut adalah beberapa fitur Lain dari Windows Search:
- Kotak pencarian instan di setiap jendela memungkinkan pemfilteran instan semua item yang saat ini terlihat. Kotak pencarian instan muncul di menu Mulai untuk mencari program atau file, dan di sudut kanan atas semua jendela Windows Explorer untuk memfilter hasil yang ditampilkan. Pencarian instan juga diintegrasikan ke dalam beberapa fitur Windows lainnya, seperti Pemutar Media Windows, untuk menemukan file terkait.
- Dokumen dapat ditandai dengan kata kunci untuk mengelompokkannya menurut kriteria kustom yang ditentukan oleh pengguna. Tag adalah item metadata yang ditetapkan oleh pengguna atau aplikasi untuk mempermudah menemukan file berdasarkan kata kunci yang mungkin tidak ada dalam nama item atau konten. Misalnya, sekumpulan gambar mungkin ditandai sebagai "Arizona Vacation 2009" untuk diambil dengan cepat nanti dengan mencari salah satu kata yang disertakan.
- Header kolom yang disempurnakan dalam tampilan Windows Explorer memungkinkan pengurutan dan pengelompokan dokumen dengan cara yang berbeda. Misalnya, file dapat diurutkan sesuai dengan nama, tanggal diubah, jenis, ukuran, dan tag. Dokumen juga dapat dikelompokkan sesuai dengan salah satu properti ini dan setiap grup dapat difilter (tersembunyi atau ditampilkan) sesuai keinginan.
- Dokumen dapat ditumpuk sesuai dengan nama, tanggal diubah, jenis, ukuran, dan tag. Tumpukan menyertakan semua dokumen yang memiliki properti yang ditentukan dan terletak di dalam subfolder folder yang dipilih.
- Pencarian dapat disimpan (akan diambil nanti) dengan mengklik tombol Simpan Pencarian di panel pencarian di Windows Explorer. Hasilnya akan diisi ulang secara dinamis berdasarkan kriteria asli saat pencarian tersimpan dibuka. Untuk petunjuknya, lihat Menyimpan Hasil Pencarian Anda.
- Penangan pratinjau dan penanganan gambar mini memungkinkan pengguna untuk mempratinjau dokumen di Windows Explorer tanpa harus membuka aplikasi yang membuatnya.
Prasyarat Teknis
Sebelum Anda mulai membaca dokumentasi Windows Search SDK, Anda harus memiliki pemahaman mendasar tentang konsep berikut:
- Cara mengimplementasikan sumber data Shell.
- Cara mengimplementasikan handler.
- Cara bekerja dalam kode asli.
Sumber data Shell adalah komponen yang digunakan untuk memperluas namespace Shell dan mengekspos item di penyimpanan data. Di masa lalu, sumber data Shell disebut sebagai ekstensi namespace Shell. Handler adalah objek Model Objek Komponen (COM) yang menyediakan fungsionalitas untuk item Shell. Untuk daftar handler yang diidentifikasi oleh skenario pengembang yang coba Anda capai, lihat "Gambaran Umum Handler" di Windows Search sebagai Platform Pengembangan.
Untuk informasi selengkapnya tentang rakitan interoperabilitas Windows Search SDK untuk bekerja dengan objek COM yang diekspos oleh Windows Search dan program lain yang menggunakan kode terkelola, lihat Menggunakan Kode Terkelola dengan Data Shell dan Pencarian Windows. Namun, perhatikan bahwa filter, penangan properti, dan penangan protokol harus ditulis dalam kode asli. Hal ini disebabkan oleh potensi masalah penerapan versi common language runtime (CLR) dengan proses yang dijalankan beberapa add-in. Pengembang yang baru menggunakan C++ dapat mulai menggunakan Pusat Pengembang Visual C++ dan Memulai Pengembangan Windows.
Unduhan dan Konten SDK
Selain memenuhi prasyarat teknis yang tercantum, Anda juga harus mengunduh Windows SDK untuk mendapatkan pustaka Windows Search. Sampel Kode Pencarian Windows berisi sampel kode yang berguna dan rakitan interoperabilitas untuk dikembangkan dengan kode terkelola.
Dokumentasi Windows Search SDK
Isi dokumentasi Windows Search SDK adalah sebagai berikut:
Windows Search sebagai Platform Pengembangan
Menguraikan skenario pengembangan utama di Windows Search. Menyediakan daftar handler yang diidentifikasi oleh skenario pengembangan yang coba Anda capai, panduan alat penginstal add-in, dan catatan implementasi.
Panduan Pengembang Windows Search
Memberikan penjelasan untuk Mengelola Indeks, Mengkueri Indeks Secara Terprogram, Memperluas Indeks, dan Memperluas Sumber Daya Bahasa.
-
Dokumen kategori antarmuka Windows Search berikut: Handler Protokol, Kueri, Lingkup Perayapan, Add-in Data, Manajemen Indeks, dan Pemberitahuan. Dokumentasi referensi juga mencakup Konstanta dan Enumerasi, Struktur, Pemetaan Properti, dan Format File Pencarian Tersimpan.
-
Menjelaskan sampel kode Search API yang tersedia.
-
Menjelaskan dukungan Windows 7 untuk federasi pencarian ke penyimpanan data jarak jauh menggunakan teknologi OpenSearch yang memungkinkan pengguna mengakses dan berinteraksi dengan data jarak jauh mereka dari dalam Windows Explorer.
-
Mencantumkan teknologi yang terkait dengan Windows Search: Enterprise Search, SharePoint Enterprise Search, dan aplikasi lama seperti Windows Desktop Search 2.x dan Platform SDK: Indexing Service.
-
Menentukan istilah penting yang digunakan dalam teknologi Windows Search dan Shell.
Riwayat Windows Search
Windows Search menggantikan Windows Desktop Search (WDS), yang tersedia sebagai add-in untuk Windows XP dan Windows Server 2003. WDS menggantikan Layanan Pengindeksan warisan dari versi Windows sebelumnya dengan peningkatan performa, kegunaan, dan ekstensibilitas. Platform pengembangan baru mendukung persyaratan yang menghasilkan sistem yang lebih aman dan stabil. Meskipun platform kueri baru tidak kompatibel dengan Microsoft Windows Desktop Search (WDS) 2.x, filter dan handler protokol yang ditulis untuk versi WDS sebelumnya dapat diperbarui untuk bekerja dengan Windows Search. Windows Search juga mendukung sistem properti baru. Untuk informasi tentang filter, penangan properti, dan penangan protokol, lihat Memperluas Indeks.
Windows Search dibangun ke dalam Windows Vista dan yang lebih baru, dan tersedia sebagai pembaruan yang dapat didistribusikan ulang ke WDS 2.x, untuk mendukung sistem operasi berikut:
- Windows XP versi 32-bit dengan Paket Layanan 2 (SP2).
- Semua Windows XP versi berbasis x64.
- Windows Server 2003 dengan Paket Layanan 1 (SP1) dan yang lebih baru.
- Semua versi Windows Server 2003 berbasis x64.
Sistem yang menjalankan sistem operasi ini harus menginstal Windows Search untuk menjalankan aplikasi yang ditulis untuk Windows Search.
Sumber Tambahan
- Untuk informasi tentang membuat sumber data Shell, lihat Menerapkan Antarmuka Objek Folder Dasar.
- Untuk informasi selengkapnya tentang ISearchFolderItemFactory dan sumber data folder DB, lihat deskripsi konstanta STR_PARSE_WITH_PROPERTIES di Kunci String Konteks Ikat. Lihat juga Array Asosiasi dan IPropertySystem::GetPropertyDescriptionListFromString.
- Untuk informasi tentang OLE DB, lihat Gambaran Umum Pemrograman OLE DB. Untuk informasi tentang Penyedia Data .NET Framework untuk OLE DB, lihat dokumentasi Namespace Layanan System.Data.OleDb.
- Untuk gambaran umum penangan jenis file (juga dikenal sebagai penangan ekstensi Shell dan Penangan pencarian), lihat Windows Search sebagai Platform Pengembangan.
- Untuk papan pesan yang didukung komunitas tentang teknologi Pencarian, lihat Tanya Jawab Microsoft.
- Untuk sampel kode terkait, lihat Sampel Kode Pencarian Windows.
Topik terkait