Pangunahing impormasyon tungkol sa mga database. Subd. pangunahing mga konsepto ng database Pangunahing uri ng mga database


Kamusta mahal na mga mambabasa! Ang sinumang baguhang web developer sa kalaunan ay makakatagpo ng mga konsepto tulad ng database, DBMS at MySQL. Halos anumang website ay hindi magagawa nang wala ang mga tool na ito. Sa karagdagang artikulo ay mauunawaan natin ang mga konsepto at terminong ito.

Database ay isang tiyak na hanay ng data, na inayos ayon sa ilang mga patakaran at pagkakaroon ng isang tiyak na istraktura.

Sa madaling salita, ang database ay isang data store. Ang isang database ay maihahambing sa isang aklatan, kung saan ang mga aklat ay nakaimbak sa isang tiyak na pagkakasunud-sunod, na nagpapahintulot sa isang manggagawa na mabilis na mahanap ang nais na trabaho.

Mayroong isang malaking bilang ng mga uri ng mga database, na naiiba sa iba't ibang mga katangian at pamantayan. Ang mga pangunahing uri ng mga database ay kinabibilangan ng:

  • Hierarchical;
  • Network;
  • Object-oriented;
  • Relational.

Ang pinakakaraniwan ay mga relational database. Relational database binubuo ng mga talahanayan, na kung saan ay binubuo ng mga hilera at hanay. Ang data na nilalaman sa mga talahanayan ay naka-link sa bawat isa sa pamamagitan ng mga pangunahing halaga.

Ang mga espesyal na tool sa software ay ginagamit upang gumana sa mga database - mga sistema ng pamamahala ng database(DBMS). DBMS nagbibigay-daan sa iyo na lumikha ng mga database, mag-access ng data, magsagawa ng iba't ibang mga manipulasyon sa data (magdagdag, mag-edit, magtanggal) at matiyak ang seguridad ng data.

Upang patakbuhin ang data sa isang relational database gamit ang isang DBMS, isang espesyal na wika ng SQL ang ginagamit.

SQL(structured query language) - isinalin mula sa English, ang wika ng structured query na ginagamit upang lumikha, magbago at magtanggal ng data.

Ang pinakasimpleng pamamaraan para sa pagtatrabaho sa isang database ay ganito ang hitsura:

Iyon ay, ang gumagamit ng database ay nagpapadala ng isang SQL query sa pamamagitan ng DBMS sa database at tumatanggap ng ilang partikular na data. Bukod dito, ang DBMS ay hindi kinakailangang matatagpuan sa computer ng gumagamit, ngunit maaaring matatagpuan sa isang lugar sa network.

Mga uri ng DBMS

Batay sa likas na katangian ng kanilang trabaho, ang mga DBMS ay nahahati sa single-user at multi-user. Kasama sa mga database ng single-user ang pagtatrabaho sa isang user lang sa isang pagkakataon, habang sa mga database ng multi-user, maraming user ang maaaring gumana nang sabay-sabay. Ang mga database ng maraming gumagamit, sa turn, ay nahahati sa mga database na may sequential at parallel na pag-access.

Ano ang MySQL

Sa kasalukuyan, pangunahing ginagamit ang mga multi-user na DBMS. Ang pinakasikat sa kanila ay ang MS SQL Server, Oracle at MySQL.

MySQL ay ang pinakasikat na database management system para sa web development. Karamihan sa mga website at Internet portal ay binuo gamit ang DBMS na ito.

Ang pangunahing bentahe ng MySQL ay kinabibilangan ng mataas na bilis, bilis ng pagproseso ng data, flexibility, pagiging maaasahan at kadalian ng paggamit. Napakahalaga na ang MySQL DBMS ay ganap na maipamahagi nang walang bayad sa ilalim ng GNU General Public License. Bilang karagdagan, sinusuportahan ng MySQL ang sabay-sabay na operasyon ng isang walang limitasyong bilang ng mga gumagamit at may isang epektibong sistema ng seguridad.

Kapag bumubuo ng mga website, karamihan sa mga programmer ay gumagamit ng kumbinasyon ng PHP + MySQL. Maraming sikat na content management system (CMS) ang nilikha gamit ang kumbinasyong ito.

Samakatuwid, kung nagpaplano kang matutunan kung paano lumikha ng mga website, pagkatapos ay pagkatapos matutunan ang mga wikang HTML at CSS na kinakailangan para sa layout ng pahina, ang susunod na hakbang ay dapat na pag-aaral ng wikang PHP at pagtatrabaho sa MySQL DBMS.

Iyon lang! Sa muling pagkikita!

Ang isa sa pinakamahalagang lugar ng aplikasyon ng mga computer ay ang pagproseso at pag-iimbak ng malaking halaga ng impormasyon sa iba't ibang larangan ng aktibidad ng tao: ekonomiya, pagbabangko, kalakalan, transportasyon, gamot, agham, atbp.

Ang mga umiiral na modernong sistema ng impormasyon ay nailalarawan sa pamamagitan ng malaking dami ng nakaimbak at naprosesong data, kumplikadong organisasyon, at ang pangangailangan na matugunan ang magkakaibang mga pangangailangan ng maraming mga gumagamit.

Ang isang sistema ng impormasyon ay isang sistema na nagpapatupad ng awtomatikong pagkolekta, pagproseso at pagmamanipula ng data at kasama ang mga teknikal na paraan ng pagproseso ng data, software at mga tauhan ng pagpapanatili.

Ang layunin ng anumang sistema ng impormasyon ay upang iproseso ang data tungkol sa mga bagay sa totoong mundo. Ang batayan ng sistema ng impormasyon ay ang database. Sa malawak na kahulugan ng salita, ang database ay isang koleksyon ng impormasyon tungkol sa mga partikular na bagay ng totoong mundo sa anumang paksa. Ang isang paksa na lugar ay karaniwang nauunawaan bilang isang bahagi ng totoong mundo na napapailalim sa pag-aaral upang ayusin ang pamamahala ng mga bagay nito at, sa huli, automation, halimbawa, isang negosyo, isang unibersidad, atbp.

Kapag lumilikha ng isang database, hinahangad ng gumagamit na ayusin ang impormasyon ayon sa iba't ibang mga katangian at mabilis na gumawa ng isang pagpipilian na may isang arbitrary na kumbinasyon ng mga katangian. Napakahalaga na piliin ang tamang modelo ng data. Ang modelo ng data ay isang pormal na representasyon ng mga pangunahing kategorya ng pang-unawa sa totoong mundo, na kinakatawan ng mga bagay, koneksyon, pag-aari, pati na rin ang kanilang mga pakikipag-ugnayan.

Database ay isang modelo ng impormasyon na nagbibigay-daan sa iyong maayos na mag-imbak ng data tungkol sa isang pangkat ng mga bagay na may parehong hanay ng mga katangian.

Ang impormasyon sa mga database ay nakaimbak sa isang maayos na paraan. Kaya, sa isang notebook, ang lahat ng mga entry ay inayos ayon sa alpabeto, at sa isang library catalog alinman ayon sa alpabeto (alphabetical catalogue) o alinsunod sa larangan ng kaalaman (subject catalogue).

Ang isang sistema ng mga programa na nagpapahintulot sa iyo na lumikha ng isang database, i-update ang impormasyong nakaimbak dito, at magbigay ng maginhawang pag-access dito para sa pagtingin at paghahanap ay tinatawag sistemapamamahala ng database (DBMS).

  1. Mga uri ng database

Ang isang pangkat ng mga elemento ng data na nauugnay sa isa't isa ay karaniwang tinatawag pagre-record. Mayroong tatlong pangunahing uri ng organisasyon ng data at mga relasyon sa pagitan nila: hierarchical (sa anyo ng isang puno), network at relational.

Hierarchical database

Sa isang hierarchical database, mayroong isang pag-order ng mga elemento sa isang talaan, ang isang elemento ay itinuturing na pangunahing isa, ang iba ay nasa ilalim. Ang data sa talaan ay nakaayos sa isang tiyak na pagkakasunud-sunod, tulad ng mga hakbang ng isang hagdan, at ang paghahanap para sa data ay maaari lamang isagawa sa pamamagitan ng sunud-sunod na "pagbaba" mula sa bawat hakbang. Ang paghahanap para sa anumang elemento ng data sa naturang sistema ay maaaring maging lubos na matrabaho dahil sa pangangailangang sunud-sunod na dumaan sa ilang nakaraang hierarchical na antas. Ang isang hierarchical database ay nabuo sa pamamagitan ng isang direktoryo ng mga file na nakaimbak sa disk; Ang puno ng direktoryo, na magagamit para sa pagtingin sa Norton Commander, ay isang malinaw na pagpapakita ng istraktura ng naturang database at ang paghahanap para sa nais na elemento sa loob nito (kapag nagtatrabaho sa operating system ng MS-DOS). Ang parehong database ay ang family genealogical tree.

Figure 1. Hierarchical database model

Database ng network

Ang database na ito ay mas nababaluktot, dahil posible na magtatag ng mga pahalang na koneksyon bilang karagdagan sa mga vertical na hierarchical na koneksyon. Ginagawa nitong mas madali ang paghahanap ng mga kinakailangang elemento ng data, dahil hindi na ito nangangailangan ng pagdaan sa lahat ng nakaraang hakbang.

Figure 2. Modelo ng network ng database

Relational database

Ang pinakakaraniwang paraan upang ayusin ang data ay ang pangatlo, na maaaring bawasan sa parehong hierarchical at network - relational (relasyon sa Ingles - relasyon, koneksyon). Sa isang relational database, ang ibig sabihin ng record ay linya hugis-parihaba mga mesa. Ang mga elemento ng form ng talaan mga hanay mesa na ito (mga patlang). Ang lahat ng elemento sa isang column ay may parehong uri (numeric, character), at ang bawat column ay may natatanging pangalan. Walang magkaparehong mga hilera sa talahanayan. Ang bentahe ng naturang mga database ay ang kalinawan at kalinawan ng organisasyon ng data, ang bilis ng paghahanap para sa kinakailangang impormasyon. Ang isang halimbawa ng relational database ay isang table sa page ng class journal, kung saan ang entry ay isang row na may data tungkol sa isang partikular na mag-aaral, at ang mga pangalan ng field (column) ay nagpapahiwatig kung anong data tungkol sa bawat mag-aaral ang dapat itala sa mga cell ng talahanayan.

Ang kumbinasyon ng isang database at isang programa ng DBMS ay bumubuo ng isang sistema ng pagkuha ng impormasyon na tinatawag na bangko ng data.

1. Batay sa teknolohiya sa pagpoproseso ng data, ang mga database ay nahahati sa sentralisado at ipinamamahagi. Ang isang sentralisadong database ay naka-imbak sa memorya ng isang computer system. Kung ang computer system na ito ay bahagi ng isang computer network, posible ang distributed access sa naturang database. Ang pamamaraang ito ng paggamit ng mga database ay kadalasang ginagamit sa mga lokal na network ng PC. Ang isang distributed database ay binubuo ng ilan, posibleng magkakapatong o kahit na duplicate na mga bahagi, na nakaimbak sa iba't ibang mga computer sa isang computer network. Ang pagtatrabaho sa naturang database ay isinasagawa gamit ang isang distributed database management system (RDBMS).

kanin. 3. Relational database model

2. Batay sa paraan ng pag-access ng data, ang mga database ay nahahati sa mga database Sa lokal na access at mga database na may remote (network access). Ang mga sentralisadong sistema ng database na may access sa network ay nangangailangan ng iba't ibang mga arkitektura ng naturang mga sistema: file server; client-server.

File server

Ang arkitektura ng mga sistema ng database na may access sa network ay nagsasangkot ng paglalaan ng isa sa mga network machine bilang isang sentral (file server). Ang isang nakabahaging sentralisadong database ay naka-imbak sa naturang makina. Ang lahat ng iba pang makina sa network ay gumaganap ng mga function ng mga workstation na sumusuporta sa access ng user system sa sentralisadong database. Ang mga file ng database, alinsunod sa mga kahilingan ng user, ay inililipat sa mga workstation, kung saan ginagawa ang karamihan sa pagproseso. Sa mataas na intensity ng pag-access sa parehong data, bumababa ang pagganap ng naturang sistema ng impormasyon. Ang mga gumagamit ay maaari ring lumikha ng mga lokal na database sa mga workstation, na eksklusibo nilang ginagamit. Ang scheme ng pagproseso ng impormasyon batay sa prinsipyo ng file-server ay ipinapakita sa figure.

Client-server

Hindi tulad ng nakaraang sistema, ang sentral na makina (database server), bilang karagdagan sa pag-iimbak ng sentralisadong database, ay dapat isagawa ang karamihan sa pagproseso ng data. Ang isang kahilingan na gumamit ng data na ibinigay ng isang kliyente (workstation) ay nagreresulta sa paghahanap at pagkuha ng data sa server. Ang nakuhang data ay dinadala sa network mula sa server patungo sa kliyente. Ang isang partikular na tampok ng arkitektura ng client-server ay ang paggamit ng isang wika - mga query sa SQL.

Marami, na nagsimulang galugarin ang mundo Web, wala pa ring ideya kung ano ito Database. Ngunit halos lahat ng mga gumagamit ng Internet ay nagamit na ito nang hindi bababa sa isang beses - pag-save ng data ng gumagamit sa site, pagproseso ng mga query sa paghahanap at marami pa. Karamihan sa data ay naka-imbak sa Database, at upang maipakita ang ilang impormasyon, pinoproseso nito ang isang kahilingan para sa database. Kaya ano ito?

Database- isang kumplikadong data (impormasyon) na nakaayos at magkakaugnay.

Ang isang halimbawa ay aklatan. Oo, oo, hindi lang mga libro ang nasa istante, ngunit may iba't ibang uri ng Catalog kung saan makakahanap ang isang librarian ng isang partikular na libro (ayon sa alpabeto - ayon sa may-akda o pamagat, ayon sa istante, ayon sa paksa). Kaya, nang tinanggap ang isang kahilingan para sa isang libro, posible na mahanap ito batay sa isang tiyak na pamantayan. Masasabi nating ang data ay inimbak at naproseso sa library. Ngunit hindi ba magiging interesado ang data kung hindi rin sila mapamahalaan! Kaya darating tayo sa susunod na termino.

Sistema ng Pamamahala ng Database ay isang hanay ng mga tool sa wika at software, ang mga pangunahing pag-andar kung saan kasama ang kakayahang lumikha ng data, iproseso ito at basahin ito, tanggalin ito at isakatuparan ang secure na kontrol ng database.

Sa pangkalahatan, ang isang DBMS ay isang sistema na nagpapahintulot sa iyo na lumikha ng mga database at manipulahin ang impormasyon mula sa kanila. At nagbibigay ito ng access sa data ng DBMS sa pamamagitan ng isang espesyal na wika - SQL.

SQL- isang unibersal na structured query language, ang mga pangunahing gawain kung saan kasama ang pagbabasa, pagsulat at pagtanggal ng impormasyon sa Database.

Mula sa kasaysayan ng SQL

Noong unang bahagi ng 1970s, sa isa sa mga laboratoryo ng pananaliksik ng kumpanya IBM isang eksperimental na relational na DBMS IBM System R ang binuo, kung saan nilikha ang isang espesyal na wika SEQUEL, na nagpadali sa pamamahala ng data sa DBMS na ito. Ang abbreviation SEQUEL ay nakatayo para sa Structured English QUEry Language- "nakabalangkas na wikang query sa Ingles". Ang SEQUEL ay pinalitan ng pangalan SQL.

Ang petsa ng paglikha ay itinuturing na 1974.
Ang mga may-akda ay isinasaalang-alang Donald Chamberlin, Raymond Boyce.
Ang unang pamantayan ay pinagtibay noong 1986.

Ano ang MySQL

MySQL- isang database management system na maaaring gumana sa PHP, Java, Perl, C, C++ at iba pang mga programming language. Isa sa pinakalaganap na DBMS sa mundo. Kasama sa mga sikat na portable server build Denwer At XAMPP, pati na rin sa mga server WAMP, LAMP, AppServ. Nakasulat sa C, C++. developer - Oracle(mula noong 2010).

Mga halimbawa ng mga query sa SQL

Magpapakita ng listahan ng LAHAT ng mga database.

IPAKITA ang mga database;
Ililista ang LAHAT ng mga talahanayan sa base_name na Database.

IPAKITA ang mga talahanayan sa base_name;
Pinipili ang LAHAT ng data sa talahanayan ng tbl_name.

PUMILI * MULA sa tbl_name;
Higit pa nang detalyado ang mga kahilingan ay matatagpuan sa artikulo

Mga uri ng database

Mayroong isang malaking bilang ng mga uri ng mga database, na nag-iiba ayon sa iba't ibang pamantayan.

Batay sa anyo ng pagtatanghal ng impormasyon, ang isang pagkakaiba ay ginawa sa pagitan ng mga video at audio system, pati na rin ang mga multimedia system. Pangunahing ipinapakita ng pag-uuri na ito kung anong anyo ang impormasyon mula sa mga database ay ipinakita sa mga user: sa anyo ng mga imahe, tunog, o kakayahang gumamit ng iba't ibang anyo ng pagpapakita ng impormasyon. Ang konsepto ng "imahe" ay ginagamit dito sa isang malawak na kahulugan: maaari itong maging simbolikong teksto, isang tahimik na larawan (mga guhit, mga guhit), mga larawan, mga mapa ng heograpiya, mga gumagalaw na larawan. Sa ngayon, ang pinakamalaking praktikal na paggamit ay matatagpuan sa mga database na naglalaman ng ordinaryong data ng character.

Mga pangunahing klasipikasyon ng mga database

Pag-uuri ayon sa modelo ng data

Ang isang sentral na konsepto sa larangan ng database ay ang sa isang modelo.

Modelo ng data - ito ay ilang abstraction na, dahil naaangkop sa partikular na data, ay nagbibigay-daan sa mga user at developer na ituring ito bilang impormasyon, iyon ay, impormasyong naglalaman ng hindi lamang data, kundi pati na rin ang kaugnayan sa pagitan nila.

Hierarchical na mga base ang data ay maaaring ilarawan bilang isang puno na binubuo ng mga bagay ng iba't ibang antas. Ang pinakamataas na antas ay inookupahan ng isang bagay, ang pangalawa - ng mga bagay ng pangalawang antas, atbp.

Halimbawa, kung ang isang hierarchical database ay naglalaman ng impormasyon tungkol sa mga customer at kanilang mga order, magkakaroon ng isang customer object (magulang) at isang order object (bata). Ang customer object ay magkakaroon ng mga pointer mula sa bawat customer sa pisikal na lokasyon ng mga order ng customer sa order object.

Sa modelong ito, ang query pababa sa hierarchy ay simple (hal: aling mga order ang nabibilang sa customer na ito); gayunpaman, ang query na nakadirekta sa hierarchy ay mas kumplikado (halimbawa, kung sinong customer ang naglagay ng order na ito). Gayundin, mahirap kumatawan sa hindi hierarchical na data kapag ginagamit ang modelong ito.

Ang hierarchical database ay isang file system na binubuo ng root directory kung saan mayroong hierarchy ng mga subdirectory at file.

Sa mga pangunahing konsepto modelo ng network Kasama sa mga database ang: antas, elemento (node), koneksyon.

Knot ay isang koleksyon ng mga katangian ng data na naglalarawan sa isang bagay. Sa isang hierarchical tree diagram, ang mga node ay kinakatawan ng mga vertices ng isang graph (isang set ng mga non-empty set ng vertices at isang set ng mga pares ng vertices). Sa isang istraktura ng network, ang bawat elemento ay maaaring konektado sa anumang iba pang elemento.

Mga Database ng Network ay katulad ng mga hierarchical, maliban na mayroon silang mga pointer sa parehong direksyon na nag-uugnay sa kaugnay na impormasyon.

Bagama't nilulutas ng modelong ito ang ilan sa mga problemang nauugnay sa hierarchical na modelo, ang pagsasagawa ng mga simpleng query ay nananatiling medyo kumplikado.

Gayundin, dahil ang lohika ng pamamaraan ng pagkuha ng data ay nakasalalay sa pisikal na organisasyon ng data na ito, ang modelong ito ay hindi ganap na independyente sa aplikasyon. Sa madaling salita, kung kailangang baguhin ang istraktura ng data, kailangang baguhin ang application.

Relational database -- isang database na batay sa isang modelo ng relational data. Ang salitang "relasyon" ay nagmula sa Ingles. relasyon. Upang gumana sa mga relational database, ginagamit ang mga relational na DBMS. Ang layunin ng relational database normalization ay alisin ang mga kakulangan sa istraktura ng database na humahantong sa mga mapaminsalang redundancies sa data, na posibleng humantong sa iba't ibang anomalya at paglabag sa integridad ng data.

Ang mga relational database theorists, sa proseso ng pagbuo ng teorya, ay nakilala at inilarawan ang mga tipikal na halimbawa ng redundancy at mga paraan upang maalis ang mga ito.

Mga Bagay na Database ay isang modelo para sa pagtatrabaho sa object data.

Ang modelong ito ng database, kahit na ito ay umiikot sa loob ng maraming taon, ay itinuturing na bago. At ang paglikha nito ay nagbubukas ng mahusay na mga prospect, dahil sa ang katunayan na ang paggamit ng modelo ng object ng database ay madaling makita ng gumagamit, dahil ang isang mataas na antas ng abstraction ay nilikha. Ang object model ay perpekto para sa pagbibigay-kahulugan sa ganitong uri ng object data tulad ng mga imahe, musika, mga video, at iba't ibang uri ng teksto.

Object-oriented database (OODB) -- isang database kung saan ang data ay na-modelo sa anyo ng mga bagay, ang kanilang mga katangian, pamamaraan at mga klase.

Ang mga database na nakatuon sa object ay karaniwang inirerekomenda para sa mga kaso kung saan kinakailangan ang mataas na pagganap ng pagproseso ng data na may isang kumplikadong istraktura.

Ang OODB manifest ay nagmumungkahi ng mga mandatoryong katangian na dapat matugunan ng anumang OODB. Ang kanilang pagpili ay batay sa 2 pamantayan: ang sistema ay dapat na object-oriented at isang database.

Mga kinakailangang katangian

  • 1. Suporta para sa mga kumplikadong bagay. Ang sistema ay dapat magbigay ng kakayahang lumikha ng mga pinagsama-samang bagay sa pamamagitan ng paggamit ng mga pinagsama-samang mga konstruktor ng bagay. Kinakailangan na ang mga object constructor ay orthogonal, iyon ay, anumang constructor ay maaaring ilapat sa anumang bagay.
  • 2. Suporta para sa sariling katangian ng mga bagay. Ang lahat ng mga bagay ay dapat magkaroon ng isang natatanging identifier na independiyente sa mga halaga ng kanilang mga katangian.
  • 3. Suporta para sa mga uri at klase. Ang isang OODB ay kinakailangan upang suportahan ang hindi bababa sa isang konsepto ng pagkakaiba sa pagitan ng mga uri at klase. (Ang terminong "uri" ay mas pare-pareho sa konsepto ng abstract na uri ng data. Sa mga programming language, ang isang variable ay idineklara na may indikasyon ng uri nito. Maaaring gamitin ng compiler ang impormasyong ito upang suriin ang mga operasyong isinagawa sa variable ay katugma sa ang uri nito, na tumutulong na matiyak ang kawastuhan ng software Sa kabilang banda, ang isang klase ay isang template para sa paglikha ng mga bagay at nagbibigay ng mga pamamaraan na maaaring ilapat sa mga bagay na iyon -oras kaysa sa isang compile-time.)
  • 4. Suporta para sa pagmamana ng mga uri at klase mula sa kanilang mga ninuno. Ang isang subtype, o subclass, ay dapat magmana ng mga attribute at pamamaraan mula sa supertype nito, o superclass, ayon sa pagkakabanggit.
  • 5. Overload na sinamahan ng buong pagtali. Ang mga pamamaraan ay dapat ilapat sa mga bagay na may iba't ibang uri. Ang pagpapatupad ng isang pamamaraan ay dapat nakadepende sa uri ng mga bagay kung saan inilalapat ang pamamaraan. Para maibigay ang functionality na ito, hindi dapat mangyari ang pag-binding ng pangalan ng method sa system hanggang sa runtime ng program.
  • 6. Pagkumpleto ng computational. Ang wika sa pagmamanipula ng data ay dapat na isang pangkalahatang layunin na programming language.
  • 7. Ang hanay ng mga uri ng data ay dapat na mapalawak. Ang user ay dapat magkaroon ng paraan upang lumikha ng mga bagong uri ng data batay sa isang hanay ng mga paunang natukoy na uri ng system. Bukod dito, dapat walang pagkakaiba sa pagitan ng paraan ng paggamit ng system at mga uri ng data ng user.

Pag-uuri ng mga database ayon sa pisikal na kapaligiran ng imbakan:

  • · DB sa pangalawang memorya (tradisyonal): ang persistent storage medium ay peripheral non-volatile memory (secondary memory) - kadalasan ay isang hard drive. Inilalagay lamang ng DBMS ang cache at data para sa kasalukuyang pagproseso sa RAM;
  • · In-memory database: lahat ng data ay nasa RAM;
  • · Tertiary database: Ang isang persistent storage environment ay isang mass storage device (tertiary memory) na nakahiwalay sa server, karaniwang nakabatay sa magnetic tape o optical disks. Ang pangalawang memorya ng server ay nag-iimbak lamang ng tertiary memory data directory, ang file cache, at data para sa kasalukuyang pagproseso; Ang pag-load ng data mismo ay nangangailangan ng isang espesyal na pamamaraan.

Pag-uuri ayon sa nilalaman:

  • · Heograpikal
  • · Makasaysayan
  • · Siyentipiko
  • · Multimedia.

Pag-uuri ayon sa antas ng pamamahagi:

  • · Sentralisado o puro (eng. centralized database): isang database na ganap na sinusuportahan sa isang computer.
  • · Distributed database: isang database na ang mga bahagi ay matatagpuan sa iba't ibang node ng isang computer network alinsunod sa ilang criterion.
  • o Heterogenous ipinamahagi database): ang mga fragment ng isang distributed database sa iba't ibang network node ay sinusuportahan ng higit sa isang DBMS
  • o Homogeneous distributed database: ang mga fragment ng isang distributed database sa iba't ibang network node ay sinusuportahan ng parehong DBMS.
  • o Fragmented o partitioned database: ang paraan ng pamamahagi ng data ay fragmentation (partitioning, partitioning), vertical o horizontal.
  • o Replicated database: ang paraan ng pamamahagi ng data ay pagtitiklop

Maaari mo ring i-highlight ang:

Spatial database: Ang DB ay isang database na na-optimize para sa pag-iimbak at pagsasagawa ng mga query sa data tungkol sa mga spatial na bagay na kinakatawan ng ilang abstraction: point, line, atbp.

Habang ang mga tradisyunal na database ay maaaring mag-imbak at magproseso ng numeric at simbolikong impormasyon, ang mga spatial ay may pinalawak na functionality na nagbibigay-daan sa pag-imbak ng isang holistic na spatial na bagay na pinagsasama ang parehong tradisyonal na mga uri ng data (naglalarawan o attributive) at geometric (data tungkol sa posisyon ng isang bagay sa espasyo) .

Temporal, o temporal (Ingles: temporal database): Ang database ay isang database na nag-iimbak ng data na nakatali sa oras at may mga paraan para sa pamamahala ng naturang impormasyon. Ang pangunahing pagkakaiba sa pagitan ng temporal database management system (DBMS) at conventional relational DBMS ay para sa anumang bagay na nilikha sa isang punto ng oras. t1 at tinanggal sa oras na iyon t2, lahat ng mga estado nito sa pagitan ng oras na ito ay nai-save , samantalang sa isang maginoo na DBMS mayroon lamang kasalukuyang estado ng bagay sa isang tiyak na punto ng oras. Kaya, ang temporal na database ay nag-iimbak ng isang kasaysayan ng mga pagbabago sa estado ng isang bagay, at ang gumagamit ay maaaring makakuha ng impormasyon tungkol sa estado ng isang tala sa database sa anumang punto ng oras mula sa isang tinukoy na panahon.

Spatial-temporal database: Isang database na sabay na nagpapanatili ng isa o higit pang mga dimensyon sa parehong espasyo at oras.

Ang DB ay isang acronym na nangangahulugang "database", o "mga database" (depende sa konteksto). Sa artikulong ito, titingnan natin kung ano ito, kung ano ang mga ito at kung saan ginagamit ang mga ito. Tatalakayin din natin kung ang DBMS at DB ay pareho o hindi.

Terminolohiya

Ang database ay isang nakabalangkas na imbakan ng impormasyon. Ang isang database ay may kakayahang maglaman ng ilang partikular na data, na may kondisyon na sila ay tiyak na iuutos. Ang bawat isa sa atin ay nagtrabaho sa isang database nang hindi bababa sa isang beses, ngunit maaaring hindi alam ang tungkol dito, halimbawa, kapag nagpasok ng isang query sa paghahanap, bumaling tayo sa isang malakihang database para sa partikular na impormasyon.

Ang DBMS ay isa pang abbreviation na nangangahulugang Sa isang pangkalahatang kahulugan, ang mga ito ay iba't ibang mga solusyon sa software kung saan maaari mong ayusin ang data ng database. Nangangahulugan ito ng pagpuno sa database ng impormasyon, pag-aayos nito, pagtanggal nito, pagkopya nito, pagsusuri nito, at marami pang iba.

Mga uri ng database

Sa teorya, mayroong ilang mga uri ng mga ito. may mga:

  • Ang mga database ng relasyon (mula sa salitang Ingles na relasyon, na isinasalin bilang "koneksyon") ay nailalarawan sa pamamagitan ng mga relasyon at ipinahayag bilang isang hanay ng mga magkakaugnay na entity. Ang huli ay ipinakita sa anyo ng mga talahanayan na naglalaman ng data ng database. Ito ang pinakakaraniwan
  • Hierarchical - mga koneksyon sa antas ng "ancestor-descendant", "superior-subordinate".
  • Network - isang sangay mula sa nakaraang uri.
  • Object-oriented, na direktang gumagana sa kaukulang pamamaraan

Tingnan natin ang bawat isa sa kanila nang mas detalyado, kasama ang paraan na naninirahan sa mga pangunahing ideya at konsepto ng database.

Ang DB ay isang plato?

Sa kanilang karaniwang presentasyon, hindi sila mahirap unawain - ito ay mga palatandaan na may impormasyon. Para sa paglilinaw, maaari kang tumawag para sa tulong sa isang kilalang DBMS mula sa Microsoft - Access, na kasama sa kanilang karaniwang office application suite.

Ang mga talahanayan ng database ng relasyon ay may mga talaan (mga hilera) at mga patlang (mga haligi). Ang una ay naglalaman ng direktang impormasyon, data, ang huli ay naglalaman ng mga paglalarawan kung ano ang eksaktong ibig sabihin ng mga talaan. Halimbawa, ang patlang ay "pangalan", ang tala ay "Katerina".

Ang mga uri ng halaga ay tinukoy para sa mga field. Ang mga ito ay maaaring numeric, character, petsa, oras, atbp. Bilang karagdagan, ang bawat talahanayan ay dapat magkaroon ng isang pangunahing field - ang mga tala sa loob nito ay natatanging tinutukoy ang data.

Dapat itong maunawaan na ang database mismo ay hindi isang talahanayan. Ang database ay maaaring mag-imbak mula sa isa hanggang ilang daang mga talahanayan, depende sa dami at iba't ibang impormasyon.

Mga ugnayan sa pagitan ng mga talahanayan

Upang matiyak ang mga koneksyon sa pagitan ng mga talahanayan, ang DBMS ay may mga schema ng data. May mga koneksyon:

  • "One-to-one" - bawat talaan ng talahanayan ay tumutugma lamang sa isang talaan mula sa isa pang talahanayan.
  • "One-to-many" at "many-to-many". Ang isang tala ay maaaring tumugma sa ilan mula sa nauugnay na talahanayan nang sabay-sabay. At kabaliktaran (para sa pangalawang pagpipilian).
  • "Many-to-many". Madaling hulaan na sa kasong ito, para sa maraming mga hilera, maraming mga hilera ng isa pang talahanayan ang maaaring mapili para sa koneksyon (ang ganitong koneksyon ay nakaayos gamit ang isang intermediate na talahanayan at dalawang koneksyon ng uri sa itaas).

Gumagalaw pataas at pababa

Ang mga hierarchical database ay may mas malinaw na istraktura kaysa sa mga relational. Sila ay nailalarawan sa pamamagitan ng mahigpit na pagsunod. Mayroong isang elemento ng ugat - ang "tuktok", mula sa kung saan ang mga subordinates ay nagsanga - "mga tagapagmana" o "mga inapo". Ang hierarchical database ay isang database na may istraktura ng puno, kung saan ang bawat node ay maaari lamang magkaroon ng isang ninuno.

Ang ganitong uri ay maginhawang gamitin para sa pagbuo ng mga imbakan ng impormasyon ng isang naayos na istraktura: halimbawa, isang database ng isang yunit ng militar o isang file manager. Ang kawalan ay ang kawalan ng kakayahan para sa isang node na magkaroon ng higit sa isang ninuno, pati na rin ang pagiging kumplikado ng lohika ng database.

Pagpapalawak ng mga koneksyon

Ang mga database ng network ay naging isang solusyon sa pagkukulang ng mga hierarchical, na binanggit sa itaas. Ang tanging pagkakaiba sa pagitan ng ganitong uri at ng nauna ay ang "marami-sa-marami" na relasyon, na sa kasong ito ay nagpapakita ng sarili sa katotohanan na kung paanong ang isang ninuno ay maaaring magkaroon ng maraming tagapagmana, kaya sila, ang mga inapo, ay maaaring magmula sa ilang mga node nang sabay-sabay.

Paraan ng pagpapakita ng tabular

Bagama't ang mga talahanayan ay pangunahing nauugnay sa mga relational na database, ang parehong hierarchical at network database ay maaari ding katawanin bilang mga talahanayan. Ang pangunahing pagkakaiba sa pagitan ng mga uri na ito ay tiyak sa prinsipyo ng pagbuo ng istraktura: ang pamanggit, kumpara sa iba pang dalawa, ay mas malaya at hindi gaanong iniutos.

Uri ng object-oriented

Ang huling uri na isinasaalang-alang, object-oriented, ay ang hindi gaanong karaniwan. Ito ay dahil ito ay napaka-highly specialized. Ang mga kumplikadong istruktura ng data ng naturang database ay bumubuo ng isang bagay at direktang gumagana sa mga programming language na nakatuon sa object. Ang mga ito ay binuo noong dekada otsenta ng huling siglo at hindi pa nakakakuha ng maraming katanyagan dahil sa kanilang pagiging kumplikado at hindi masyadong mataas na pagganap.