Langkah Membangun Membangun Indeks Domain – Apa itu pengindeksan yang dapat diperluas? Mengapa penting bagi Anda sebagai pengembang kartrid? Bagaimana Anda harus menerapkannya?
Langkah Membangun Membangun Indeks Domain
indexunlimited – Untuk menjawab pertanyaan-pertanyaan ini pertama-tama kita perlu memahami mode pengindeksan yang disediakan oleh Oracle, yang pada gilirannya mengharuskan kita terlebih dahulu mempertimbangkan peran pengindeksan dalam sistem manajemen informasi.
Baca Juga : Mengapa Pengindeksan Situs Web Harus Dimiliki oleh Pemasar
Apa itu Pengindeksan?
Dorongan untuk mengindeks data muncul karena kebutuhan untuk menemukan informasi spesifik dan kemudian mengambilnya seefisien mungkin. Jika Anda dapat menyimpan seluruh dataset di memori utama (setara dengan seseorang yang menghafal sebuah buku), maka pengindeksan tidak perlu dilakukan. Karena ini tidak mungkin, dan karena waktu akses disk jauh lebih lambat daripada waktu akses memori utama, Anda terpaksa bergulat dengan seni pengindeksan. Jika Anda memikirkan bentuk pengindeksan yang paling kita kenal — indeks di bagian belakang buku teknis — Anda akan melihat bahwa setiap token indeks memiliki tiga karakteristik yang mengacu pada item yang diindeks:
- Identitas — token harus memungkinkan kita untuk mengidentifikasi item sedemikian rupa sehingga dibedakan dari massa data lainnya. Tapi ini bukan hanya hubungan yang representatif. Dengan mendefinisikan item indeks, Anda memfilter informasi, secara implisit menyediakan struktur logis untuk informasi yang diindeks.
- Ini memiliki banyak implikasi. Pertama, ini berarti bahwa data yang sama dapat dikenakan skema pengindeksan yang berbeda. Untuk yang lain, itu berarti bahwa skema pengindeksan menyediakan jalur akses ke informasi. Indeks di bagian belakang buku memberi Anda akses ke seluruh rentang topik yang dibahas dalam buku. Asalkan strukturnya memenuhi kebutuhan Anda, pengurutan data sebelumnya berarti Anda tidak perlu menyaring setiap informasi sedikit pun.
- Lokasi –token harus memungkinkan kami menemukan informasi. Dalam kasus sebuah buku, ini adalah nomor halaman, dan mungkin juga termasuk penunjukan bab. Ini tidak terlalu tepat karena kami masih harus mencari halaman untuk item tersebut. Berbeda dengan indeks normal, analisis percakapan menggunakan nomor baris karena kebutuhan akan ketepatan yang lebih besar dalam menemukan item:
- 10296 HELEN: Jika Anda benar-benar mencintai saya, Anda tidak akan pergi berperang.
- 10297 PARIS: Jika kamu benar-benar mencintaiku, kamu tidak akan menghalangi jalanku
kewajiban.
- Penyimpanan — token indeks harus ditempatkan di suatu tempat, dan informasi yang dipetakannya juga harus disimpan. Dalam kasus buku, halaman biasanya merupakan unit penyimpanan dalam kedua kasus, tetapi sifat penyimpanannya berbeda. Sementara teks isi disimpan sebagai kalimat, token indeks memiliki struktur yang sama sekali berbeda.
Hasilnya adalah Anda dapat mengambil informasi lebih cepat daripada jika Anda harus membolak-balik seluruh buku (setara dengan pemindaian file secara berurutan)! Namun, perhatikan bahwa sementara pengindeksan mempercepat pengambilan, itu memperlambat sisipan karena Anda harus memperbarui indeks.
Hubungan antara Struktur Logika dan Fisik
Tidak ada struktur tunggal yang optimal untuk semua aplikasi.
- Jika Anda ingin mengetahui apakah ada Regionsyang berisi kota bernama Metropolis, Anda akan menggunakan operator kesetaraan yang akan mengembalikan kecocokan persis (atau tidak).
- Jika Anda tertarik pada berapa banyak periode waktu yang memiliki permintaan daya antara dua nomor yang ditentukan, Anda akan menggunakan operator yang dapat memproses berbagai data.
Dalam setiap kasus, Anda akan ingin mengatur data dalam struktur indeks yang berbeda karena kueri yang berbeda memerlukan informasi yang diindeks dengan cara yang berbeda. Seperti yang akan kita bahas di bagian berikut, struktur Hash paling cocok untuk menentukan pencocokan tepat, sedangkan B-tree jauh lebih cocok untuk kueri rentang. Selain itu, ini bukan satu-satunya jenis pertanyaan. Bagaimana jika Anda ingin mengetahui apakah Pembangkit Listrik A atau B dapat melayani Kuadran 3 dengan baik, atau untuk menentukan zona cakupan yang tumpang tindih yang berasal dari distribusi pembangkit listrik yang berbeda? Dalam kasus ini, Anda akan ingin membuat operator ( inRangeOf, servesArea, dan seterusnya) yang memenuhi kebutuhan spesifik Anda. Sayangnya, Anda tidak dapat melakukan ini melalui indeks Hash atau B-tree.
Kebutuhan akan Struktur Indeks yang Mencakup Data Tidak Terstruktur
Batasan indeks Hash dan B-tree penting karena salah satu kriteria yang membedakan kartrid dari aplikasi database lain adalah bahwa data sering kali menggabungkan berbagai jenis informasi. Sementara sistem database dicapai dalam memproses nilai skalar, mereka tidak dapat mencakup data spesifik domain yang menarik bagi pengembang kartrid. Informasi dalam konteks ini dapat terdiri dari teks, gambar, audio, video — dan kombinasinya yang terdiri dari tipe data khusus domain.
Salah satu cara untuk mengatasi masalah ini adalah dengan membuat indeks yang berfungsi sebagai struktur perantara. Ini adalah perpanjangan logis dari ide dasar yang mendasari pengindeksan berbasis perangkat lunak, yaitu bahwa pointer merujuk ke data (catatan, halaman, file). Dalam skema ini, kata kunci yang digunakan untuk mengindeks video dapat disimpan sebagai indeks. Selangkah lebih maju, struktur perantara itu sendiri dapat diindeks, karena Anda mungkin mengindeks abstrak (deskripsi teks kapsul) film. Keuntungan dari pendekatan ini adalah mungkin lebih mudah untuk membuat indeks berdasarkan deskripsi tekstual film daripada untuk mengindeks cuplikan video. Dengan menggunakan strategi ini, Anda dapat memindai indeks tanpa pernah mengacu pada data primer (film).
Sayangnya, struktur perantara di mana teks atau skalar digunakan untuk mewakili data tidak terstruktur tidak dapat memenuhi semua persyaratan. Untuk satu hal, mereka selalu lebih lambat daripada pengindeksan data langsung karena mereka memperkenalkan tingkat tipuan. Lebih penting lagi, jika tugasnya adalah menganalisis kepadatan tulang dalam sinar-x, atau untuk mengkategorikan gerakan primata, atau untuk merekam emisi radio bintang, tidak ada pengganti yang efisien untuk pengindeksan langsung data tidak terstruktur.
Ringkasan
Untuk tipe data sederhana seperti integer dan string kecil, semua aspek pengindeksan dapat dengan mudah ditangani oleh sistem database. Ini tidak berlaku untuk dokumen, gambar, klip video, dan tipe data kompleks lainnya yang memerlukan pengambilan berbasis konten (CBR). Alasan penting adalah bahwa tipe data yang kompleks memiliki format khusus aplikasi, persyaratan pengindeksan, dan predikat seleksi. Misalnya, ada banyak penyandian dokumen yang berbeda (seperti ODA, SGML, teks biasa) dan teknik pengambilan informasi (IR) (kata kunci, boolean teks lengkap, kesamaan, probabilistik, dan sebagainya). Untuk secara efektif mengakomodasi objek data kompleks yang jumlahnya besar dan terus bertambah, sistem database harus mendukung pengindeksan khusus aplikasi. Pendekatan yang kami terapkan untuk memenuhi persyaratan ini disebut pengindeksan yang dapat diperluas .