Reka bentuk pangkalan data: langkah dan asas

Isi kandungan:

Reka bentuk pangkalan data: langkah dan asas
Reka bentuk pangkalan data: langkah dan asas
Anonim

Reka bentuk pangkalan data ialah proses berurutan untuk menyesuaikan pengetahuan dan alatan yang ada untuk mewakili dan memproses maklumat.

Skop sebenar, tugas khusus, penerangan aliran maklumat yang masuk dan idea umum tentang proses pemprosesan maklumat secara beransur-ansur ditambah kepada idea konseptual tertentu tentang apa pangkalan data dalam kes tertentu dan bagaimana untuk bekerja dengannya.

Pangkalan data moden

Hubungan perhubungan adalah teras kepada mana-mana model maklumat. Penyelesaian daripada Oracle adalah setara dengan MySQL pada dasarnya, tetapi ia secara asasnya berbeza dalam banyak aspek. Reka bentuk pangkalan data juga merupakan soal keselamatan, volum maklumat dan akauntabiliti untuk integriti data, tetapi ini adalah kedua kepada isu mereka bentuk pangkalan data yang cekap, boleh dipercayai dan mesra pengguna.

langkah reka bentuk pangkalan data
langkah reka bentuk pangkalan data

Jadual Excel tidak berbeza daripada Oracle dan MySQL dalam konteks struktur segi empat tepat (hubungan): lajur dan baris=satu sel di persimpangan nama lajur (medan) dan indeks pemilihan (baris). Jika anda tidak mengambil kira ukuran dan jumlah kerja manual, maka, terima kasih kepada cara yang dibangunkan untuk menggabungkan sel secara menegak dan mendatar, Excel mendahului malah Oracle!

Excel, mengikut idea asasnya, tidak pernah "menyinari" dinamik, fungsi Oracle, dan ia tidak boleh memindahkan sesuatu dari satu helaian ke helaian lain "mengikut sisa". Di sini Oracle lebih menjanjikan, tetapi pertimbangannya mengenai isu pemindahan sejumlah besar maklumat dan menggabungkan kedudukan rasmi daripada pelbagai sumber meninggalkan banyak perkara yang diingini. Di sini MySQL lebih menjanjikan: ia tidak menetapkan sendiri tugas global, tetapi ia melaksanakan tugasnya dengan sempurna.

Hubungan perhubungan ialah alat yang mudah, praktikal dan mantap, daripada penyelesaian peringkat Excel peribadi hingga volum global Oracle, digunakan di mana-mana, dalam permintaan dan mereka mempunyai jaminan masa depan yang disediakan pekerjaan.

Pangkalan data moden ialah jadual, baris, lajur dan indeks yang dikelilingi oleh kefungsian penuh, alat tambahan yang dibangunkan yang mengambil kira berbilang operasi, beban berat dan volum yang besar.

Pengetahuan dan pengalaman sistem pengurusan pangkalan data moden (DBMS) mengambil kira bukan sahaja isu kebolehpercayaan, kebolehpercayaan data, peraturan akses dan isu keselamatan, tetapi juga memungkinkan untuk mengesan pengaruh luaran negatif, menganalisis kemungkinan serangandan cubaan mencederakan dengan sengaja.

Pangkalan data moden ialah asas yang boleh dipercayai untuk mana-mana sumber web dan aplikasi tempatan, keupayaan untuk memindahkan maklumat, mengubah dan memindahkan data, bersilang dan menggabungkan pandangan yang berbeza.

Satu-satunya syarat penting: pemaju yang berkelayakan tinggi. Untuk melaksanakan reka bentuk pangkalan data hubungan yang berkesan tersedia untuk pakar, dan lebih kerap kepada pasukan pakar dan pakar dalam bidang aplikasi masalah yang sedang diselesaikan.

Skop, kemungkinan penyelesaian dan halangan

Maklumat beredar di mana-mana. Banyak projek disambungkan terus ke Internet, tetapi faktor mempunyai perwakilan data rasmi di sini tidak lebih baik daripada faktor ketidakpastian semasa mencipta sumber web untuk kilang keluli.

Perkembangan dan minat besar dalam kedai dalam talian tidak memberikan alasan dan peluang untuk memindahkan pengalaman mencipta satu kedai kepada mencipta kedai lain. Faktor rahsia perdagangan mewujudkan banyak halangan kepada pemindahan pengetahuan, walaupun, sebenarnya, anda harus memisahkan kedai sebenar daripada alat perisian yang dibuat untuk kedai ini.

reka bentuk pangkalan data hubungan
reka bentuk pangkalan data hubungan

Sudah tentu, pelanggan membayar dan kod tapak adalah hak miliknya. Ciri ciri kemodenan: pemindahan pengetahuan dan perkembangan antara tugasan jenis yang sama dan bidang aplikasi yang berkaitan adalah mustahil dan ini adalah masalah.

Parsing ialah pelbagai aplikasi untuk sistem pengurusan pangkalan data. Pertama sekali, ia mengimbas maklumat dari Internet. Sama pentingnya untuk membandingkan maklumat yang terkumpulpangkalan data dan permintaan pelawat web.

Analisis kata kunci juga melibatkan keperluan untuk membentuk penyelesaian yang optimum, tetapi reka bentuk pangkalan data pada Access mungkin lebih menjanjikan berbanding MS SQL Server atau Oracle.

Senarai sumber maklumat boleh menjadi dinamik. Dinamik boleh wujud dalam jadual pangkalan data sumber, nama medan jadual dan peraturan panggilan (pertanyaan). Mereka bentuk pangkalan data hubungan daripada pelbagai sumber jelas memaksa anda untuk mereka bentuk daripada data sumber, dan bukan daripada organisasi optimum maklumat yang dikumpul.

Terdapat dua perkara yang wujud dalam mana-mana pangkalan data:

  • orientasi kepada kandungan, algoritma penjanaan pangkalan data dinamik dalam keutamaan;
  • orientasi untuk digunakan, struktur pangkalan data adalah lebih penting dan algoritma untuk menggunakan maklumat adalah berdasarkannya.

Dalam mana-mana bidang aplikasi terdapat model formal aliran maklumat masuk, model penyimpanan maklumat - reka bentuk sebenar pangkalan data dan model (algoritma) untuk menggunakan data.

Pelbagai prosedur dan langkah reka bentuk

Asas reka bentuk pangkalan data biasanya dibahagikan kepada tiga peringkat. Pakar yang berbeza merujuk kepada peringkat kerja dengan cara yang berbeza, tetapi, sebenarnya, terdapat tiga jawatan:

  • perancangan konseptual;
  • reka bentuk logik;
  • pelaksanaan teknikal.

Amalan menyumbang kepada tradisi yang mantap. Tidak kira betapa kompleksnya skop dan masalah yang sedang diselesaikan. Ia sentiasa memerlukan memilih yang betulalatan. Sebagai contoh, anda perlu mengumpul maklumat daripada pelawat ke sumber web, tetapi anda perlu membandingkannya dengan data daripada MS SQL Server. Sumber web dihoskan pada FreeBSD (Internet, pelayan Apache) dan MS SQL Server di bandar lain tersedia melalui rangkaian teragih syarikat.

asas reka bentuk pangkalan data
asas reka bentuk pangkalan data

Dalam penyelesaian ini, anda perlu menyelesaikan masalah tertentu terlebih dahulu: untuk mewujudkan pertukaran data dengan pelayan dalaman.

Pelaksanaan teknikal tugas biasa semestinya akan memberi kesan pada peringkat awal: jarang sekali reka bentuk pangkalan data boleh dilakukan dari awal. Walaupun dengan teknologi penyelesaian masalah yang terbukti, skopnya sedang berkembang, ia sentiasa diperlukan untuk melakukan sesuatu secara berbeza daripada yang asalnya dimaksudkan.

Baru-baru ini, ramai ahli teori dan pengamal beroperasi dengan entiti sebagai data khas. Ini adalah abstraksi yang membolehkan anda menerangkan model maklumat pada input, semasa pemprosesan dan dalam hasil akhir - pangkalan data.

Paparan data dan entiti

Reka bentuk DB melalui abstraksi dan entiti: keupayaan untuk mencipta gambar maklumat, mentakrifkan jenis data dan perhubungan antara mereka.

Biasanya reka bentuk model pangkalan data sedemikian berakhir dengan model grafik, menggunakan MS Visio atau alat visual DBMS yang dipilih. Akses mempunyai cara tersendiri untuk membentuk gambar maklumat, MySQL mempunyai sendiri, dan beberapa sistem pengurusan kandungan menyembunyikan pangkalan data sama sekali, mengenakan model data pada pembangun melalui entiti mereka sendiri -objek tugas yang sedang diselesaikan.

Ciri ciri kebanyakan sistem pengurusan kandungan (CMS) ialah mereka membuat "aplikasi" untuk tahap abstraksi yang lebih besar apabila menerangkan kawasan maklumat masalah yang sedang diselesaikan. Pangkalan data sebenar disembunyikan, CMS menawarkan pemaju ideanya sendiri tentang gambaran maklumat dunia.

Akibatnya, peringkat reka bentuk pangkalan data dikurangkan kepada pematuhan keperluan asas dan pelaksanaan langkah yang dicadangkan oleh pencipta CMS tertentu. Tidak ada yang memalukan dalam menggunakan idea pangkalan data dan reka bentuknya daripada Symfony atau Bitrix, Zend atau Yii, tetapi bagi pembangun ia adalah "beban".

Sebaik-baiknya, alatan reka bentuk pangkalan data harus dipilih dan digunakan secara individu, tanpa pendapat luar, tetapi dengan penerapan pengalaman dan pengetahuan.

reka bentuk pangkalan data maklumat
reka bentuk pangkalan data maklumat

Sesuai untuk pembangun yang disahkan oleh Oracle, tetapi boleh diterima dengan sempurna untuk kelayakan pembangun untuk menyertakan cerapan tentang idea maklumat Oracle dan pengetahuan yang berfungsi tentang aplikasi MySQL.

Dalam projek yang kompleks dan pemprosesan maklumat yang diedarkan, bukan sahaja pangkalan data adalah penting, tetapi juga sumber maklumat, idea tentang keperluan pengguna.

Peringkat atau pasukan: keseimbangan keutamaan

Keperluan konsistensi adalah yang paling penting. Asas reka bentuk pangkalan data juga termasuk fasa kerja, pemantauan keputusan pertengahan, memikirkan semula setiap peringkat yang telah siap berdasarkan pelaksanaan jenis kerja berikut:

  • sistematik;
  • fase;
  • maklum balas dari mana-mana masa, ke kedudukan permulaan.

Peruntukan ini adalah abstrak, tetapi terdapat dalam mana-mana teknologi teori dan praktikal untuk mencipta pangkalan data yang berkesan.

Tiada teknologi berkembang dengan sendirinya, ia didorong oleh manusia. Kelayakan pasukan pembangunan adalah penting. Model maklumat pangkalan data bukan sahaja rangka kerja, tetapi juga aliran maklumat.

Apa yang lebih penting: grafik yang cantik dalam perwakilan struktur pangkalan data atau penerangan yang tepat tentang aliran maklumat dalam dinamik - bukan sahaja mengenai tugas dan skop, tetapi juga pendapat pasukan pembangunan dalam dinamik.

reka bentuk struktur pangkalan data
reka bentuk struktur pangkalan data

Personel adalah segala-galanya, tetapi dalam konteks: reka bentuk konsep pangkalan data ialah segala-galanya kelayakan. Semua orang adalah unik, dan dalam bidang sistem maklumat, perwakilan orang tertentu wujud dan berkembang.

Adalah penting untuk membina pasukan pembangun, bukan beberapa langkah reka bentuk pangkalan data mitos yang dicadangkan oleh pakar yang berwibawa. Kuasa pakar ini dibentuk berdasarkan kerja-kerja tertentu, pada masa tertentu. Kerja perlu dilakukan hari ini, tugas baharu, peralatan moden, teknologi segar, …

Kemungkinan terbalik. Terdapat Excel dan Akses dan data "berlimpahan" dalam format ini dari zaman purba, semasa Windows for Workgoups masih hidup dan sihat. Data dBase dan Quattro kekal sebahagiannya. Hari ini kata-kata ini telah pun dilupakan, tetapi maklumatkekal, ia adalah dalam permintaan dan perlu diekstrak dan membentuk idea baharu.

Lama dan baharu: keseimbangan pengetahuan

Teknologi Cloud tidak seperti pangkalan data yang Ashton-Tate lakukan. Apa yang Oracle pernah beli sama sekali tidak setanding dengan apa yang dilakukannya hari ini. Tetapi pembolehubah, algoritma, fungsi, gelung dan keadaan kekal dalam pengaturcaraan sejak awal 80-an itu. Melainkan konsep prosedur telah tenggelam dalam kelalaian, dan semuanya kekal seperti pada zaman dahulu.

Malah idea-idea moden pengaturcaraan berorientasikan objek juga diselubungi "belenggu" sintaksis dan semantik klasik abad yang lalu.

Apa yang perlu dilakukan - pengaturcaraan adalah inersia, dan pemformalkan maklumat serta reka bentuk pangkalan data maklumat lebih merupakan proses daripada hasil. Kerja berperingkat adalah prasyarat untuk mencapai hasil. Tetapi siapa yang mengira bilangan lelaran dari peringkat pertengahan hampir ke permulaan kerja?

Maklumat sentiasa dinamik, tiada apa yang berhenti: terutamanya bidang subjek tugas dan keperluan pengguna. Setiap peringkat kerja yang lengkap membolehkan anda menilai pada tahap baharu perkara yang telah dilakukan dan perkara yang perlu dilakukan.

reka bentuk pangkalan data logik
reka bentuk pangkalan data logik

Untuk mempertimbangkan untuk mereka bentuk struktur pangkalan data sebagai tugas dan mendapatkan hasil akhir adalah sia-sia. Sebaik sahaja pangkalan data digunakan, idea baharu pasti akan muncul, walaupun alat untuk mencipta pangkalan data adalah Excel "mudah", dan bukan produk yang hebat dan serba boleh dari Oracle,memanipulasi berjuta-juta transaksi, ratusan ribu pengguna serentak dan terabait maklumat.

Keutamaan bukanlah struktur pangkalan data, tetapi pembentukan pasukan pakar yang berkelayakan, ditambah dengan keperluan mandatori untuk kedinamikan hasil yang lebih besar, supaya selepas kerja selesai, ia tidak perlu menghubungi pembangun, sekurang-kurangnya beberapa bulan.

Pembangunan berurutan dan/atau lompat tinggi

Windows bukan pangkalan data, tetapi ia mempunyai peninggalan - pendaftaran. Fail hos hanyalah pengenalan alamat IP mesin tempatan dan nama simbolik. Tetapi melalui fail ini, maklumat mengalir dari domain yang berbeza atau ke DBMS yang berbeza terbentuk.

Adalah mungkin untuk memahami Windows banyak sisi sebagai komputer atau pelayan yang berfungsi, tetapi ia tidak akan berfungsi dalam apa jua cara untuk membenarkan logik versi produk ini. PHP juga bukan pangkalan data, tetapi hujah pembangun mengapa versi 5 serta-merta mengikuti versi 7 adalah tidak konsisten. PHP ialah alat akses MySQL, sintaksnya mentakrifkan cara membentuk pertanyaan dan mendapatkan respons daripada pangkalan data menggunakan dialek SQL.

Contoh ketidakserasian antara alat pengaturcaraan moden dan sokongan pangkalan data telah menjadi kebiasaan sejak beberapa tahun kebelakangan ini, tetapi ini bukan yang paling asli. Apakah yang akan ada di sebalik versi Windows 10? Apakah prospek untuk Pangkalan Data Oracle 12c?

Maklumat pengarang pembangun: Oracle Database 11g Express Edition (Oracle Database XE) ialah DBMS peringkat permulaan berdasarkan kod DBMS 11g Release 2 Oracle Database. DBMS ini percuma untuk pembangunan,penempatan dan penjualan, muat turun pantas dan mudah ditadbir.”

Perspektif pembangun pengguna: “Pada 2013, Oracle mengeluarkan Pangkalan Data Oracle 12c (versi 12.1.0.1) dengan faedah utama kos storan yang lebih rendah, ketersediaan data yang tinggi, penyatuan pangkalan data yang mudah dan perlindungan akses data "".

Amalan Sebenar: Reka bentuk pangkalan data logik yang objektif, cekap dan berkesan hanya tersedia kepada pasukan pembangun yang berkelayakan. Mendapatkan hasil kerja tidak sukar, sukar untuk memformalkan aliran maklumat masuk dan menentukan asas yang optimum.

Ke dunia bentuk licin daripada segi empat tepat tepat

Dengan kemunculan pengaturcaraan berorientasikan objek, siri data telah mengambil nafas baharu. Sesungguhnya, segala-galanya di sekeliling hanyalah garisan, lebih baik panjang yang tidak ditentukan. Nombor dan tarikh juga merupakan rentetan aksara.

Kuasa dan objektiviti perhubungan hubungan tidak dapat dinafikan, tetapi adakah dinamik lajur dan baris merosakkan reputasinya? Jadual hanyalah data yang mungkin mempunyai pengepala (senarai lajur) atau tiada baris. Biarkan jadual hanyalah koleksi data, tidak semestinya dinamakan.

Set data boleh menjadi heterogen dan anda boleh menemui data struktur berbeza di dalamnya. Pada asasnya, kehomogenan data menunjukkan perkembangan skop. Pengagihan data mengikut jenis dan spesies adalah tanda pendekatan yang sistematik dan objektif, tetapi masih dinasihatkan untuk mengakui kemungkinan dinamik struktur.

Jika outputmereka bentuk dan mencipta pangkalan data di luar struktur tegar dan menganggap bahawa jadual ialah koleksi baris yang tidak semestinya jenis yang sama dan serupa dalam semantik antara satu sama lain, maka reka bentuk pangkalan data akan berubah secara mendadak.

Subjek kerja tidak akan menjadi perihalan struktur pangkalan data, tetapi dinamik pergerakan maklumat. Peringkat kerja akan dibahagikan kepada tiga pusat graviti:

  • aliran maklumat input;
  • transformasi dan pergerakan maklumat dalam pangkalan data;
  • pilih data untuk digunakan.

Tiada konsep struktur jadual. Tiada baris atau lajur. Terdapat abstraksi - tertentu, struktur tertentu, yang memenuhi titik tertentu dalam algoritma. Lebih khusus lagi, fungsi pemprosesan maklumat memerlukan maklumat tertentu dalam jumlah tertentu.

Keperluan wajib rekursif semua fungsi pemprosesan maklumat dan fokus pada fungsi, bukan data, membolehkan anda mereka bentuk pangkalan data dalam dinamik maklumat terkumpul dan aliran data masuk, yang digunakan atas inisiatif pengguna, proses atau fungsi lain.

Malah: isyarat penggunaan datang, permintaan pengambilan telah diterima, pencetus dalam aplikasi dicetuskan, dan maklumat masuk, melalui apa yang sudah ada, memberikan penyelesaian yang diingini.

Pengetahuan asas dan pembinaan tegar

Ilmu adalah hak prerogatif manusia, program adalah beban komputer. Pembangun bebas untuk menggunakan pengetahuan yang dia fikir sesuai dalam situasi tertentu. Orang biasa menggunakan banyak pangkalan data, tanpa mementingkannya. bagaimanapangkalan data disusun dalam kepala orang biasa, tiada siapa yang tahu, tetapi semua orang tahu bagaimana dia menjalankan perniagaannya, di mana dia menulis apa yang dia temui, dan bila dia perlu menggunakannya.

Hasil kerja pengaturcara - pada tahap program dalam "Asas", yang mendapatkan semula data daripada tapak web kedai dalam talian melalui ODBC, adalah setara dengan pembangun Oracle bertajuk yang membuat permintaan untuk mengambil data daripada MAKS Aviation and Space Salon. Kedua-dua keputusan "membeku" secara statik dari saat kerja selesai. Ini bukan pengetahuan aktif yang digunakan seseorang, ini adalah rahsia mencipta sistem reka bentuk pangkalan data.

Algoritma tidak boleh dibetulkan. Semuanya mesti ditakrifkan secara dinamik. Kelebihan pembangun yang berkelayakan tidak dapat dinafikan, tetapi mereka tidak terletak sama sekali dalam bentuk penyelesaian yang elegan daripada Oracle, MySQL, atau Access, yang terhad dalam keupayaannya. Hamparan Excel lain boleh menyediakan kandungan dinamik dan tidak memerlukan penyertaan pengaturcara untuk masa yang lebih atau kurang baik selepas selesai kerja.

Persoalannya ialah sejauh mana dinamik kawasan aplikasi diformalkan, bukan struktur pangkalan data.

Penyelesaian Langsung

Adalah mustahil untuk merancang kerja sedemikian rupa untuk mengikat pasukan pembangun profesional dengan tugas. Bukan bermakna pasukan itu tersinggung, tetapi ini bukan pendekatan yang betul.

Penyelesaian Langsung
Penyelesaian Langsung

Tugas mereka bentuk pangkalan data harus dirumuskan sedemikian rupa sehingga fungsi yang dibangunkan akan memperbaiki dirinya sendiri, mengumpul pengetahuan dan, dalam melaksanakan "tugas"nya, bukan bermula dari kod,dicipta oleh pakar, tetapi daripada pengetahuan yang diperoleh melalui kod ini.

Disyorkan: