Pangkalan data berorientasikan objek: konsep, konsep asas, pengurusan, contoh

Isi kandungan:

Pangkalan data berorientasikan objek: konsep, konsep asas, pengurusan, contoh
Pangkalan data berorientasikan objek: konsep, konsep asas, pengurusan, contoh
Anonim

Dalam pangkalan data berorientasikan objek (OODB), pengguna boleh menetapkan operasi pada pangkalan data tertentu, yang terdiri daripada objek yang boleh terdiri daripada pelbagai jenis dan operasi yang ditetapkan. Mereka boleh mengendalikan maklumat binari dengan cekap seperti objek multimedia. Satu lagi faedah tambahan OODB ialah ia boleh diprogramkan dengan sedikit perbezaan prosedur tanpa menjejaskan keseluruhan sistem.

Prasyarat untuk penciptaan standard

Sejarah pangkalan data OODB berorientasikan objek bermula pada penghujung abad yang lalu. Mereka dicipta untuk memenuhi keperluan aplikasi baharu. Andaian adalah bahawa pangkalan data berorientasikan objek akan merevolusikan sistem perisian pada tahun 1990-an. Kini jelas bahawa ini tidak berlaku. Walau bagaimanapun, kebangkitan semula konsep ini melalui komuniti perisian percuma dan pengenalpastian aplikasi yang sesuai untuknya mendorong kajian semula ciri-ciri. OODB, yang merupakan alternatif kepada pangkalan data hubungan di mana-mana.

Prasyarat untuk penciptaan standard
Prasyarat untuk penciptaan standard

Berorientasikan objek menyediakan fleksibiliti untuk mengendalikan beberapa atau semua keperluan dan tidak terhad kepada jenis data dan bahasa pertanyaan pangkalan data tradisional. Ciri utama OODB ialah keupayaan yang mereka sediakan kepada pembangun, membolehkannya menentukan kedua-dua struktur objek kompleks dan operasi aplikasi. Satu lagi sebab untuk mencipta OODB ialah penggunaan bahasa yang semakin meningkat untuk pembangunan perisian.

Pangkalan data telah menjadi asas kepada banyak sistem maklumat, tetapi pangkalan data tradisional sukar digunakan apabila aplikasi yang mengaksesnya ditulis dalam C++, Smalltalk atau Java. Sebagai contoh, pangkalan data berorientasikan objek 1C direka bentuk sedemikian rupa sehingga ia boleh disepadukan secara langsung dengan aplikasi menggunakan bahasa berorientasikan objek dengan mengguna pakai konsep mereka: Visual Studio. Net, C ++, C, Microsoft SQL Server dan yang lain.

Kelebihan utama OODB ialah penghapusan sepenuhnya keperluan untuk RM1 (impedans) dengan peningkatan prestasi seterusnya.

Kelebihan utama OODB
Kelebihan utama OODB

Kecacatan:

  1. Mekanisme perundingan yang sangat primitif, tiada platform yang diterima standard diri.
  2. Tidak dapat menyimpan prosedur kerana objek hanya boleh diakses dalam klien.
  3. Ketidakmatangan dalam pasaran.
  4. Tiada pengumpulan objek secara fizikal.

Paradigma objek

Paradigma objek
Paradigma objek

Pangkalan data berorientasikan objek ialah pangkalan data boleh atur cara yang menyimpan data kompleks dan hubungannya secara langsung tanpa memperuntukkan baris dan lajur, menjadikannya lebih sesuai untuk aplikasi yang berfungsi dengan kelompok besar. Objek mempunyai perhubungan banyak-ke-banyak dan boleh diakses melalui penggunaan penunjuk yang dikaitkan dengannya untuk mewujudkan perhubungan. Seperti mana-mana yang boleh diprogramkan, OODB menyediakan persekitaran pembangunan aplikasi dan repositori berterusan sedia untuk dieksploitasi. Ia menyimpan dan memanipulasi maklumat yang boleh didigitalkan dalam bentuk objek, menyediakan akses pantas dan menyediakan keupayaan pemprosesan yang hebat.

Konsep asas yang digunakan dalam pangkalan data berorientasikan objek:

  • identiti objek;
  • jenis pembina;
  • keserasian bahasa;
  • jenis hierarki dan warisan;
  • memproses objek kompleks;
  • polimorfisme dan beban operator yang berlebihan;
  • membuat versi.
Versi
Versi

Untuk mempertimbangkan sepenuhnya semua aspek yang mencirikan pangkalan data berorientasikan objek, adalah penting untuk mengambil perhatian semua paradigma objek penting:

  1. Encapsulation ialah sifat yang membolehkan anda menyembunyikan maklumat untuk objek lain, dengan itu menghalang akses atau konflik yang salah.
  2. Warisan ialah harta yang objek mewarisi tingkah laku dalam hierarki kelas.
  3. Polymorphism ialah sifat operasi yang boleh digunakan untuknyajenis objek yang berbeza.
  4. Antara muka atau tandatangan operasi termasuk nama dan jenis data argumen atau parameternya.
  5. Pelaksanaan atau kaedah operasi ditentukan secara berasingan dan boleh ditukar tanpa menjejaskan antara muka. Aplikasi pengguna boleh berfungsi dengan data dengan memanggil operasi tertentu melalui nama dan hujah mereka, tidak kira bagaimana ia dilaksanakan.

Kelas dan kefungsian

Kelas dan kefungsian
Kelas dan kefungsian

Apabila mempertimbangkan konsep kelas dalam OODB, adalah perlu untuk membezakan antara istilah "kelas" dan "jenis". Jenis digunakan untuk menerangkan satu set objek dengan kelakuan yang serupa. Dalam pengertian ini, ia bergantung pada operasi apa yang boleh dipanggil pada objek. Kelas ialah koleksi objek yang berkongsi struktur dalaman yang sama, jadi ia mentakrifkan pelaksanaan, manakala jenis menerangkan cara menggunakannya.

Istilah instantiasi merujuk kepada fakta bahawa instantiasi kelas boleh digunakan untuk menghasilkan set objek yang mempunyai struktur dan tingkah laku yang sama seperti yang ditetapkan oleh kelas.

Ciri yang sangat penting untuk evolusi objek ialah ia boleh menukar kelasnya, termasuk atribut dan operasi, sambil mengekalkan identiti. Ini memerlukan mekanisme untuk mengendalikan integriti semantik yang terhasil.

Mewarisi pangkalan data berorientasikan objek organisasi membolehkan kelas ditakrifkan sebagai subkelas superkelas yang sedia ada. Ia akan mewarisi semua atribut dan kaedah daripada yang terakhir dan boleh menentukan secara pilihanmilik sendiri. Konsep ini merupakan mekanisme penting untuk menyokong penggunaan semula. Bahagian struktur yang sama bagi dua kelas berbeza hanya boleh ditakrifkan sekali dalam superclass biasa, oleh itu kurang kod akan ditulis. Terdapat beberapa sistem yang membenarkan kelas menjadi subkelas lebih daripada satu superclass. Ciri ini dipanggil warisan berbilang berbanding dengan warisan tunggal.

Contoh pangkalan data berorientasikan objek

Ia selalunya berguna untuk menggunakan nama yang sama untuk kaedah kelas super media yang berbeza tetapi serupa daripada kelas gambar dan video. Banyak fail boleh dilihat oleh penonton yang berbeza. Mereka selalunya perlu melihat semua foto dan video menggunakan kaedah "lihat", dan program yang sesuai mesti dilancarkan. Apabila fungsi dipanggil dan pautan ke video dihantar, pemain media dilancarkan. Untuk melaksanakan ciri ini, pertama sekali, adalah perlu untuk menentukan operasi "persembahan" dalam superclass media biasa dari kelas gambar dan video. Setiap subkelas mentakrifkan semula operasi carian untuk keperluan khusus mereka. Ini menghasilkan kaedah berbeza yang mempunyai nama operasi yang sama. Dalam kes ini, menggunakan fungsi ini mempunyai kelebihan penting.

struktur OODB

struktur OODB
struktur OODB

Paradigma berorientasikan objek adalah berdasarkan pengkapsulan data dan kod yang berkaitan dengan setiap objek dalam satu modul. Dari segi konsep, semua interaksi antaranya dan seluruh sistem dijalankan menggunakan mesej. Oleh itu antara mukaantara mereka ditentukan oleh set yang dibenarkan.

Secara umum, setiap objek dikaitkan dengan set:

  1. Pembolehubah yang mengandungi data objek dan sepadan dengan atribut model ER.
  2. Mesej yang dia balas. Setiap satu mungkin mempunyai atau tidak mempunyai parameter, satu atau lebih.
  3. Kaedah, setiap satunya ialah kod yang melaksanakan mesej dan mengembalikan nilai sebagai tindak balas kepadanya.

Pemesejan dalam persekitaran OO tidak membayangkan penggunaan SMS fizikal dalam rangkaian komputer. Sebaliknya, ia merujuk kepada pertukaran permintaan antara objek, tanpa mengira butiran yang betul pelaksanaannya. Kadangkala ungkapan memanggil kaedah untuk mencetuskan fakta bahawa mesej telah dihantar ke objek dan menggunakan pelaksanaan kaedah yang sepadan.

Identiti objek

Identiti Objek
Identiti Objek

Sistem pangkalan data berorientasikan objek menyediakan pengenalan unik untuk setiap objek bebas yang disimpan dalam pangkalan data. Ia biasanya dilaksanakan menggunakan pengecam objek unik atau OID yang dihasilkan oleh sistem. Nilai OID tidak dapat dilihat oleh pengguna luaran, tetapi sistem menggunakannya secara dalaman untuk mengurus pautan antara objek.

Sifat utama OID adalah tidak boleh diubah. Nilai OID untuk objek tertentu tidak boleh berubah. Ini mengekalkan identiti dunia sebenar yang diwakili. Ia juga diutamakan bahawa setiap OID digunakan sekali sahaja, walaupun ia dialih keluar daripada pangkalan data, OIDnya tidak boleh diberikan kepada yang lain. Ia juga sering dianggap tidak sesuai untuk mendasarkannya pada fizikalalamat objek dalam storan, kerana menyusun semula mereka dalam pangkalan data boleh mengubah OID. Walau bagaimanapun, sesetengah sistem menggunakan alamat fizikal sebagai OID untuk meningkatkan kecekapan mendapatkan semula objek. Rangka kerja berorientasikan objek secara automatik mengenakan kekangan hubungan, biasanya lebih berkenaan: domain, kunci, integriti objek dan integriti rujukan.

Tiga pembina utama

Tiga pembina utama
Tiga pembina utama

Dalam OODB, nilai atau keadaan objek kompleks boleh dibuat daripada orang lain menggunakan pembina jenis tertentu. Satu cara untuk mewakilinya ialah dengan memikirkan setiap satu sebagai triplet (i, c, v), di mana i ialah pengecam unik objek (OID), c ialah pembina, iaitu penunjuk kepada bagaimana nilai objek itu. dicipta, dan v ialah nilai atau keadaan objek. Mungkin terdapat berbilang pembina bergantung pada model data dan sistem OO.

Tiga pembina pangkalan data berorientasikan objek asas:

  • atom;
  • tuples;
  • set.

Kegunaan lain yang lebih biasa ialah senarai dan carta. Terdapat juga domain D, yang mengandungi semua nilai atom asas yang tersedia secara langsung pada sistem. Ia biasanya termasuk integer, nombor nyata, rentetan aksara, tarikh dan sebarang jenis data lain yang dikendalikan secara langsung oleh sistem. Kedua-dua struktur objek dan operasi disertakan dalam definisi kelas.

Keserasian dengan bahasa pengaturcaraan

Konsep teras pangkalan data berorientasikan objek digunakan dalamsebagai alatan reka bentuk dan dikodkan untuk berfungsi dengan pangkalan data.

Terdapat beberapa kemungkinan bahasa di mana konsep ini boleh disepadukan:

  1. Meluaskan bahasa untuk pemprosesan data seperti SQL dengan menambahkan jenis kompleks dan OOP. Sistem menyediakan sambungan berorientasikan objek kepada sistem hubungan, dipanggil sistem hubungan berorientasikan objek.
  2. Menggunakan bahasa pengaturcaraan berorientasikan objek sedia ada dan memanjangkannya untuk berfungsi dengan pangkalan data. Mereka dipanggil bahasa pengaturcaraan berterusan dan membenarkan pembangun bekerja secara langsung dengan data tanpa perlu melalui bahasa pemprosesan data seperti SQL. Ia dipanggil berterusan kerana data itu terus wujud selepas tamat program yang menciptanya.

Apabila memutuskan pilihan untuk digunakan, perlu diingat bahawa bahasa yang berterusan cenderung berkuasa dan agak mudah untuk membuat kesilapan pengaturcaraan yang merosakkan pangkalan data. Kerumitan bahasa menjadikan pengoptimuman automatik peringkat tinggi, seperti mengurangkan cakera I/O, sukar. Dalam banyak aplikasi, keupayaan untuk membuat pertanyaan deklaratif adalah penting, tetapi bahasa yang berterusan pada masa ini tidak membenarkan pertanyaan sedemikian tanpa masalah.

Hierarki jenis warisan

Skema pangkalan data berorientasikan objek biasanya memerlukan sejumlah besar kelas. Walau bagaimanapun, beberapa kelas adalah serupa antara satu sama lain. Untuk membenarkan perwakilan langsung persamaan antara mereka, anda perlu meletakkanmereka ke dalam hierarki pengkhususan. Konsep ini serupa dengan model ER. Pengkhususan kelas dipanggil subkelas, yang mentakrifkan atribut dan kaedah tambahan untuk kelas sedia ada. Objek yang dicipta dengan subkelas mewarisi segala-galanya daripada induk. Sesetengah ciri yang diwarisi ini mungkin telah dipinjam daripada mereka yang lebih tinggi dalam hierarki.

Objek dianggap kompleks kerana ia memerlukan jumlah ruang storan yang besar dan bukan sebahagian daripada jenis data standard yang biasanya ditawarkan oleh Pengurusan Pangkalan Data Berorientasikan Objek (OODBS). Oleh kerana saiz objek adalah ketara, SOOBMS mungkin menerima sebahagian daripada objek dan memberikannya kepada aplikasi sebelum memperoleh keseluruhan objek. Ia juga boleh menggunakan kaedah penimbal dan cache untuk mendapatkan bahagian objek lebih awal daripada masa, sebelum aplikasi boleh mengaksesnya.

OODB membenarkan pengguna mencipta jenis baharu yang merangkumi kedua-dua struktur dan operasi, dalam kes ini sistem jenis boleh diperluaskan. Anda boleh mencipta perpustakaan jenis baharu dengan mentakrifkan struktur dan operasinya. Kebanyakan daripada mereka boleh menyimpan dan menerima objek berstruktur besar dalam bentuk rentetan dan aksara atau bit, yang dihantar "seadanya" kepada program aplikasi untuk tafsiran.

Kaedah ini boleh mengakses secara langsung atribut objek sasaran mengikut nama, termasuk mana-mana yang diwarisi daripada kelas induk, tetapi mesti mengakses atribut objek lain dengan isyarat sekunder. Konsep ini membolehkan anda mengaitkan nama atau simbol pengendali yang sama dengandua atau lebih pelaksanaan berbeza, bergantung pada jenis objek yang digunakan.

Apl Membina

Penciptaan Aplikasi
Penciptaan Aplikasi

Banyak aplikasi pangkalan data menggunakan sistem OO memerlukan berbilang versi objek yang sama. Biasanya, aktiviti penyelenggaraan digunakan pada sistem perisian apabila keperluannya berubah, dan melibatkan perubahan beberapa modul pembangunan dan pelaksanaan. Jika sistem sudah berjalan dan jika satu atau lebih modul perlu ditukar, pembangun mesti mencipta versi baharu setiap modul dengan membuat perubahan.

Perhatikan bahawa mungkin terdapat lebih daripada dua versi objek, sekiranya dua versi diperlukan sebagai tambahan kepada modul asal. Versi sendiri modul perisian yang sama boleh dikemas kini pada masa yang sama. Ini dipanggil reka bentuk pangkalan data berorientasikan objek selari. Walau bagaimanapun, sentiasa ada satu titik di mana ia perlu digabungkan agar OODB hibrid dapat menggabungkan perubahan yang telah dibuat supaya ia serasi.

Keadaan berorientasikan objek

Semua sistem komputer mesti mempunyai sifat seni binanya untuk dipertimbangkan. Sebagai contoh, sistem mesti mempunyai jadual untuk dianggap sebagai hubungan. OODB tidak terkecuali dan mengandungi beberapa sifat asas seni bina objek. Walau bagaimanapun, dalam dunia nyata, banyak sifat ini dibincangkan dan beberapa, seperti warisan berbilang, dianggap sebagai penambahbaikan kepada model pangkalan data berorientasikan objek dan bukannyasebagai sebahagian daripada garis dasar. Contohnya, dalam bahasa berorientasikan objek Smalltalk, warisan berbilang tidak disokong, walaupun ia dianggap sebahagian daripada seni bina objek.

Kaedah untuk kelas mentakrifkan set operasi yang boleh dilakukan pada objek. Sebagai contoh, apabila ia digunakan pada objek, ia sama ada mengembalikan nilai atau melakukan beberapa operasi untuk mengemas kini nilai. Kadang-kadang kaedah tidak mengembalikannya. Jika kaedah direka bentuk untuk mengemas kini bilangan penumpang bagi kenderaan, tiada nilai akan dikembalikan, tetapi elemen data dalam sasaran akan mengubahnya.

Objek ialah konsep asas dalam OODB. Pada asasnya, objek adalah perwakilan abstrak perkara dunia sebenar yang disimpan di dalamnya. Objek ialah contoh kelas dalam erti kata ia dikecualikan daripada takrifnya.

Anda boleh menganggap objek sebagai pakej serba lengkap yang mempunyai tiga bahagian:

  1. Maklumat peribadi sendiri, nilai data.
  2. Prosedur peribadi yang akan memanipulasi nilai melalui definisi kelas.
  3. Buka antara muka supaya objek ini boleh berkomunikasi dengan orang lain.

contoh OODB

Menggunakan OODB memudahkan konseptualisasi kerana ia adalah lebih semula jadi untuk mewakili maklumat yang perlu disimpan. Untuk memodelkan struktur atau logik pangkalan data, penggunaan gambar rajah kelas membolehkan anda memperkenalkan kelas dengan perhubungan struktur dan warisannya. Untuk memodelkan sebahagian daripada dinamik, interaksi dantingkah laku antara objek, gambar rajah jujukan akan digunakan untuk mewakili interaksi antara objek yang terletak dalam perhubungan sementara, menerangkan keadaan yang mungkin supaya ia boleh ditemui memandangkan keadaan berubah selepas peristiwa itu berlaku.

Contoh OODB
Contoh OODB

Contoh pangkalan data berorientasikan objek ditunjukkan di bawah.

Contoh pangkalan data berorientasikan objek
Contoh pangkalan data berorientasikan objek

Mereka mempunyai nama dan seumur hidup, yang boleh bersifat sementara atau kekal. Kunci OODB ialah keupayaan yang mereka sediakan kepada pembangun untuk menentukan bilangan struktur dan operasi yang akan digunakan pada mereka. Terdapat fleksibiliti dan sokongan untuk mengendalikan jenis data yang kompleks. Anda boleh mencipta kelas dan subkelas, contohnya, pangkalan pelanggan boleh mempunyai subkelas pautan klien ini dan ia akan mewarisi semua atribut dan ciri kelas asal, pendekatan ini membolehkan anda memproses data kompleks dengan cepat dan fleksibel.

Disyorkan: