Verilənlər bazasının dizaynı: addımlar və əsaslar

Mündəricat:

Verilənlər bazasının dizaynı: addımlar və əsaslar
Verilənlər bazasının dizaynı: addımlar və əsaslar
Anonim

Verilənlər bazasının dizaynı məlumatı təmsil etmək və emal etmək üçün mövcud bilik və vasitələrin uyğunlaşdırılmasının ardıcıl prosesidir.

Həqiqi əhatə dairəsi, konkret tapşırıq, daxil olan məlumat axınının təsviri və informasiyanın emalı prosesi haqqında ümumi fikirlər tədricən konkret halda verilənlər bazasının nə olduğu və necə işləndiyi barədə müəyyən konseptual fikrə əlavə olunur. onunla işləmək.

Müasir verilənlər bazası

Münasibət əlaqələri istənilən informasiya modelinin mərkəzində dayanır. Oracle-dan olan həllər mahiyyətcə MySQL-ə bərabərdir, lakin onlar bir çox aspektlərdə əsaslı şəkildə fərqlənirlər. Verilənlər bazasının dizaynı həm də təhlükəsizlik, məlumatın həcmi və məlumatların bütövlüyü üçün cavabdehlik məsələsidir, lakin bunlar səmərəli, etibarlı və istifadəçi dostu verilənlər bazası dizaynı məsələsində ikinci dərəcəlidir.

verilənlər bazası dizayn mərhələləri
verilənlər bazası dizayn mərhələləri

Excel cədvəlləri düzbucaqlı (əlaqəli) strukturlar kontekstində Oracle və MySQL-dən fərqlənmir: sütunlar və sətirlər=sütun adı (sahə) və seçim indeksinin (sətir) kəsişməsində bir xana. Əgər siz əl əməyinin ölçüsünü və miqdarını nəzərə almırsınızsa, o zaman xanaları şaquli və üfüqi şəkildə birləşdirən işlənmiş vasitələr sayəsində Excel hətta Oracle-ı da qabaqlayır!

Excel, əsas ideyasına görə, heç vaxt Oracle-ın dinamikasını, funksionallığını “parlamır” və “qalıqlarına görə” nəyisə bir vərəqdən digərinə köçürə bilməz. Burada Oracle daha perspektivlidir, lakin onun böyük həcmdə məlumatların köçürülməsi və müxtəlif mənbələrdən rəsmiləşdirilmiş mövqelərin birləşdirilməsi məsələlərinə dair mülahizələri çox arzuolunandır. Burada MySQL daha perspektivlidir: o, özünə qlobal vəzifələr qoymur, lakin öz işini mükəmməl şəkildə yerinə yetirir.

Münasibət əlaqələri şəxsi Excel səviyyəli həllərdən tutmuş Oracle qlobal həcmlərinə qədər rahat, praktiki və köklü alətlərdir, hər yerdə, tələbatda istifadə olunur və onların təminatlı işlə təmin olunmuş gələcəyi var.

Müasir verilənlər bazası tam funksionallıqla əhatə olunmuş cədvəllər, sətirlər, sütunlar və indekslərdir, çoxsaylı əməliyyatları, ağır yükləri və böyük həcmləri nəzərə alan əlavə alətlərdir.

Müasir verilənlər bazası idarəetmə sistemləri (DBMS) üzrə bilik və təcrübə yalnız etibarlılıq, məlumatların etibarlılığı, girişin tənzimlənməsi və təhlükəsizlik məsələlərini nəzərə almır, həm də mənfi xarici təsirləri izləməyə, mümkün hücumları təhlil etməyə imkan verir.və qəsdən zərər verməyə cəhdlər.

Müasir verilənlər bazası istənilən veb-resurs və yerli proqramlar üçün etibarlı əsasdır, məlumatı köçürmək, məlumatları çevirmək və ötürmək, kəsişmək və müxtəlif görünüşləri birləşdirmək imkanıdır.

Yeganə vacib şərt: yüksək ixtisaslı tərtibatçı. Əlaqəli verilənlər bazalarının effektiv dizaynını yerinə yetirmək üçün bir mütəxəssis, daha tez-tez isə həll olunan problemin tətbiqi sahəsində mütəxəssis və ekspertlər komandası istifadə edə bilər.

Əhatə dairəsi, mümkün həll və maneələr

Məlumat hər yerdə yayılır. Bir çox layihələr birbaşa İnternetə bağlıdır, lakin burada rəsmi məlumatların təqdim edilməsi faktoru polad zavodu üçün veb resurs yaratarkən qeyri-müəyyənlik faktorundan yaxşı deyil.

Onlayn mağazalara olan inkişaf və kütləvi maraq bir mağaza yaratmaq təcrübəsini digər mağaza yaratmağa köçürmək üçün əsas və imkanlar vermir. Kommersiya sirri faktoru biliyin ötürülməsinə çoxlu maneələr yaradır, baxmayaraq ki, siz faktiki mağazanı bu mağaza üçün yaradılmış proqram alətlərindən ayırmalısınız.

əlaqəli verilənlər bazası dizaynı
əlaqəli verilənlər bazası dizaynı

Təbii ki, müştəri ödəniş edib və sayt kodu onun mülkiyyətidir. Müasirliyin xarakterik xüsusiyyəti: eyni tipli tapşırıqlar və əlaqəli tətbiq sahələri arasında bilik və inkişafların ötürülməsi mümkün deyil və bu problemdir.

Parsing verilənlər bazası idarəetmə sistemləri üçün geniş proqram çeşididir. İlk növbədə, İnternetdən məlumatların skan edilməsidir. Toplanmış məlumatları müqayisə etmək də eyni dərəcədə vacibdirverilənlər bazası və veb ziyarətçi sorğuları.

Açar söz təhlili həmçinin optimal həllin formalaşdırılması ehtiyacını ehtiva edir, lakin Access-də verilənlər bazası dizaynı MS SQL Server və ya Oracle-dan daha perspektivli ola bilər.

İnformasiya mənbələrinin siyahısı dinamik ola bilər. Dinamikalar mənbə verilənlər bazası cədvəllərinə, cədvəl sahələrinin adlarına və çağırış (sorğu) qaydalarına xas ola bilər. Çoxsaylı mənbələrdən əlaqəli verilənlər bazalarının layihələndirilməsi sizi toplanmış məlumatın optimal təşkilindən deyil, mənbə məlumatından dizayn etməyə məcbur edir.

İstənilən verilənlər bazasına xas olan iki şey var:

  • məzmuna oriyentasiya, prioritetdə dinamik verilənlər bazası yaratma alqoritmi;
  • istifadə istiqaməti, verilənlər bazasının strukturu daha vacibdir və məlumatdan istifadə alqoritmi ona əsaslanır.

İstənilən tətbiq sahəsində daxil olan informasiya axınının formal modeli, məlumat saxlama modeli - verilənlər bazasının faktiki dizaynı və verilənlərdən istifadə modeli (alqoritmi) mövcuddur.

Müxtəlif prosedurlar və dizayn addımları

Verilənlər bazası dizaynının əsasları adətən üç mərhələyə bölünür. Fərqli mütəxəssislər müxtəlif yollarla iş mərhələlərinə istinad edirlər, lakin əslində üç mövqe var:

  • konseptual planlaşdırma;
  • məntiqi dizayn;
  • texniki icra.

Təcrübə qurulmuş ənənələrə kömək edir. Nə qədər mürəkkəb olsa da, əhatə dairəsi və həll olunan problem. Həmişə düzgün olanı seçmək lazımdıralətlər. Məsələn, veb-resursa gələn ziyarətçilərdən məlumat toplamaq lazımdır, lakin onu MS SQL Server məlumatları ilə müqayisə etmək lazımdır. Veb resurs FreeBSD-də (İnternet, Apache server) yerləşdirilir və başqa şəhərdəki MS SQL Server şirkətin paylanmış şəbəkəsi vasitəsilə əldə edilə bilər.

verilənlər bazası dizaynının əsasları
verilənlər bazası dizaynının əsasları

Bu həlldə siz ilk növbədə müəyyən problemi həll etməlisiniz: daxili serverlə məlumat mübadiləsi qurmaq.

Ümumi tapşırığın texniki icrası mütləq ilkin mərhələyə təsir edəcək: nadir hallarda verilənlər bazası dizaynını sıfırdan etmək olar. Problemin həlli üçün sübut edilmiş texnologiya olsa belə, əhatə dairəsi inkişaf edir, həmişə nəzərdə tutulduğundan fərqli bir şey etmək tələb olunur.

Son zamanlar bir çox nəzəriyyəçi və praktiklər xüsusi məlumat kimi qurumlarla işləyirlər. Bunlar girişdə, emal zamanı və yekun nəticədə - verilənlər bazasında məlumat modelini təsvir etməyə imkan verən abstraksiyalardır.

Data və obyekt baxışları

Mücərrədlər və obyektlər vasitəsilə DB dizaynı: məlumat şəkli yaratmaq, məlumat növlərini və onlar arasında əlaqələri müəyyən etmək imkanı.

Adətən verilənlər bazası modelinin belə dizaynı MS Visio və ya seçilmiş DBMS-nin vizual alətlərindən istifadə etməklə qrafik modellə başa çatır. Access-in məlumat şəklini yaratmaq üçün öz yolu var, MySQL-in özünəməxsus yolu var və bəzi məzmun idarəetmə sistemləri verilənlər bazasını tamamilə gizlədir, öz qurumları vasitəsilə tərtibatçıya məlumat modelini tətbiq edir -həll olunan tapşırığın obyektləri.

Bir çox məzmun idarəetmə sistemlərinin (CMS) xarakterik xüsusiyyəti ondan ibarətdir ki, onlar həll olunan problemin informasiya sahəsini təsvir edərkən daha böyük abstraksiya səviyyəsi üçün “tətbiq” edirlər. Əsl verilənlər bazası gizlidir, CMS tərtibatçıya dünyanın informasiya şəkli haqqında öz ideyasını təklif edir.

Nəticədə verilənlər bazası dizaynının mərhələləri fundamental tələblərə əməl olunmasına və konkret CMS-in yaradıcıları tərəfindən təklif olunan addımların yerinə yetirilməsinə qədər azaldılır. Symfony və ya Bitrix, Zend və ya Yii-dən verilənlər bazası ideyalarından və onların dizaynından istifadə etməkdə utanc verici bir şey yoxdur, lakin tərtibatçı üçün bu, "yükdür".

İdeal olaraq, verilənlər bazası dizayn alətləri kənar rəy olmadan, lakin təcrübə və biliklərin tətbiqi ilə fərdi olaraq seçilməli və tətbiq edilməlidir.

məlumat bazasının dizaynı
məlumat bazasının dizaynı

Oracle tərəfindən sertifikatlaşdırılan tərtibatçı üçün idealdır, lakin Oracle-ın məlumat ideyalarına dair fikirləri və MySQL tətbiqləri üzrə iş biliklərini daxil etmək üçün tərtibatçının ixtisasları üçün mükəmməl məqbuldur.

Mürəkkəb layihələrdə və paylanmış məlumat emalında təkcə verilənlər bazası deyil, həm də məlumat mənbələri, istehlakçıların ehtiyacları haqqında fikirlər vacibdir.

Mərhələlər və ya komanda: prioritetlər balansı

Ardıcıllıq tələbi ən təcili əhəmiyyət kəsb edir. Verilənlər bazası dizaynının əsaslarına həmçinin işin mərhələli şəkildə bölünməsi, aralıq nəticələrin monitorinqi, aşağıdakı iş növünün yerinə yetirilməsi əsasında hər bir tamamlanmış mərhələnin yenidən nəzərdən keçirilməsi daxildir:

  • sistemli;
  • mərhələli;
  • istənilən vaxtdan başlanğıc mövqeyə geribildirim.

Bu müddəalar mücərrəddir, lakin effektiv verilənlər bazası yaratmaq üçün istənilən nəzəri və praktik texnologiyada mövcuddur.

Heç bir texnologiya öz-özünə inkişaf etmir, onu insanlar idarə edir. İnkişaf qrupunun ixtisasları vacibdir. Verilənlər bazası məlumat modeli təkcə çərçivə deyil, həm də məlumat axınıdır.

Daha vacib olanı: verilənlər bazası strukturunun təsvirində gözəl qrafika və ya dinamikada məlumat axınlarının dəqiq təsviri - təkcə tapşırıq və əhatə dairəsi məsələsi deyil, həm də dinamikada inkişaf qrupunun rəyi.

verilənlər bazası strukturunun dizaynı
verilənlər bazası strukturunun dizaynı

Kadrlar hər şeydir, lakin kontekstdə: verilənlər bazasının konseptual dizaynı hər şeyin keyfiyyətidir. Bütün insanlar unikaldır və informasiya sistemləri sahəsində konkret insanların təmsilləri mövcuddur və inkişaf edir.

Nüfuzlu ekspertin təklif etdiyi bəzi mifik verilənlər bazası dizayn addımları deyil, tərtibatçılar komandası yaratmaq vacibdir. Bu mütəxəssisin səlahiyyəti konkret əsərlər əsasında, konkret zamanda formalaşıb. Bu gün iş görülməlidir, yeni tapşırıq, müasir avadanlıq, təzə texnologiya, …

Mümkün tərs. Bu formatlarda Excel və Access proqramları və Windows for Workgoups hələ sağ və yaxşı olduğu qədim dövrlərdən bəri "bol" məlumatlar mövcuddur. Qismən dBase və Quattro məlumatları qaldı. Bu gün bu sözlər artıq unudulub, amma məlumatqaldı, o, tələbatlıdır və çıxarılmalı və yeni ideyalar formalaşdırılmalıdır.

Köhnə və yeni: bilik balansı

Bulud texnologiyası Ashton-Tate-nin etdiyi verilənlər bazası kimi deyil. Oracle-ın bir vaxtlar aldığı şeylər heç bir şəkildə bugünkü ilə müqayisə oluna bilməz. Lakin dəyişənlər, alqoritmlər, funksiyalar, dövrələr və şərtlər 80-ci illərin əvvəlindən proqramlaşdırmada qaldı. Prosedur anlayışı unudulmazsa və hər şey qədim zamanlarda olduğu kimi qalırsa.

Obyektyönümlü proqramlaşdırmanın hətta müasir ideyaları da keçən əsrin klassik sintaktik və semantik "qandalar"ına bürünmüşdür.

Nə etməli - proqramlaşdırma ətalətlidir və məlumatın rəsmiləşdirilməsi və məlumat bazalarının dizaynı nəticədən daha çox prosesdir. Mərhələli iş nəticə əldə etmək üçün ilkin şərtdir. Bəs aralıq mərhələlərdən demək olar ki, işin başlanmasına qədər təkrarlamaların sayını kim saydı?

Məlumat həmişə dinamikdir, heç nə yerində dayanmır: xüsusən tapşırığın mövzu sahəsi və istifadəçi tələbləri. İşin hər tamamlanmış mərhələsi artıq görülənləri və görüləcək işləri yeni səviyyədə qiymətləndirməyə imkan verir.

məntiqi verilənlər bazası dizaynı
məntiqi verilənlər bazası dizaynı

Verilənlər bazası strukturunun layihələndirilməsini tapşırıq kimi nəzərdən keçirmək və son nəticəni əldə etmək əbəsdir. Verilənlər bazası istifadəyə verilən kimi, verilənlər bazası yaratmaq üçün alət Oracle-dan fantastik dərəcədə güclü və çox yönlü məhsul deyil, "sadə" Excel olsa belə, yeni bir fikir mütləq ortaya çıxacaq.milyonlarla tranzaksiyanı, yüz minlərlə eyni vaxtda istifadəçini və terabayt məlumatı manipulyasiya etmək.

Prioritet verilənlər bazasının strukturu deyil, ixtisaslı mütəxəssislər komandasının formalaşdırılması, üstəgəl nəticənin daha çox dinamizmi üçün məcburi tələbdir ki, iş başa çatdıqdan sonra əlaqə saxlamağa ehtiyac olmasın. tərtibatçılar, ən azı bir neçə ay.

Ardıcıl inkişaf və/yaxud hündürlüyə tullanmalar

Windows verilənlər bazası deyil, lakin onun relikti var - reyestr. Host faylı sadəcə olaraq yerli maşının IP ünvanlarının və simvolik adlarının identifikasiyasıdır. Lakin bu fayl vasitəsilə müxtəlif domenlərdən və ya müxtəlif DBMS-lərə məlumat axını formalaşır.

Çoxtərəfli Windows-u işləyən kompüter və ya server kimi başa düşmək mümkündür, lakin bu məhsulun versiyalarının məntiqini əsaslandırmaq üçün heç bir şəkildə işləməyəcək. PHP də verilənlər bazası deyil, lakin tərtibatçıların 5-ci versiyanın niyə 7-dən dərhal sonra gəlməsi ilə bağlı arqumentləri uyğun gəlmir. PHP MySQL-ə giriş vasitəsidir, onun sintaksisi SQL dialektindən istifadə etməklə sorğuların necə formalaşdırılacağını və verilənlər bazasından cavabların alınmasını müəyyən edir.

Müasir proqramlaşdırma alətləri ilə verilənlər bazası dəstəyi arasında uyğunsuzluq nümunələri son illərdə normaya çevrilib, lakin bu, ən orijinalı deyil. Windows 10 versiyasının arxasında nə olacaq? Oracle Database 12c üçün hansı perspektivlər var?

Tərtibatçı-müəllifin məlumatı: Oracle Database 11g Express Edition (Oracle Database XE) Oracle Database 11g Release 2 DBMS koduna əsaslanan giriş səviyyəli DBMS-dir. Bu DBMS inkişaf üçün pulsuzdur,yerləşdirmə və satış, sürətli yükləmə və idarə etmək asan.”

İstifadəçi tərtibatçısının perspektivi: “2013-cü ildə Oracle aşağı saxlama xərcləri, yüksək məlumat əlçatanlığı, asan verilənlər bazası konsolidasiyası və məlumat girişinin qorunması kimi əsas üstünlükləri ilə Oracle Database 12c (versiya 12.1.0.1) buraxdı "".

Real Təcrübə: Obyektiv, səmərəli və effektiv məntiqi verilənlər bazası dizaynı yalnız ixtisaslı tərtibatçılar komandası üçün əlçatandır. İşçi nəticə əldə etmək çətin deyil, daxil olan məlumat axınlarını rəsmiləşdirmək və optimal təməli müəyyən etmək çətindir.

Dəqiq düzbucaqlılardan hamar fiqurlar dünyasına

Obyekt yönümlü proqramlaşdırmanın meydana çıxması ilə verilənlərin seriallaşdırılması yeni həyat tərzi aldı. Həqiqətən, ətrafdakı hər şey yalnız xətlərdir, tercihen qeyri-müəyyən uzunluqdadır. Rəqəmlər və tarixlər də simvol sətirləridir.

Münasibət münasibətlərinin gücü və obyektivliyi danılmazdır, lakin sütun və cərgələrin dinamikası onların reputasiyasına xələl gətirirmi? Cədvəl sadəcə başlığı (sütunların siyahısı) və ya sətirləri olmayan verilənlərdir. Cədvəl sadəcə məlumat toplusu olsun, mütləq adlandırılmamalıdır.

Məlumat toplusu heterojen ola bilər və siz orada müxtəlif strukturlu məlumatları tapa bilərsiniz. Prinsipcə, məlumatların homojenliyi əhatə dairəsinin inkişafını göstərir. Məlumatların növlər və növlər üzrə paylanması sistematik və obyektiv yanaşmanın əlamətidir, lakin struktur dinamikasının mümkünlüyünü qəbul etmək hələ də məsləhətdir.

Çıxış varsasərt strukturlardan kənar verilənlər bazası layihələndirmək və yaratmaq və cədvəlin mütləq eyni tipdə olmayan və bir-birinə semantika baxımından oxşar olan sətirlər toplusu olduğunu fərz etsək, verilənlər bazası dizaynı kəskin şəkildə dəyişəcək.

İşin mövzusu verilənlər bazası strukturunun təsviri deyil, informasiyanın hərəkət dinamikası olacaq. İşin mərhələləri üç ağırlıq mərkəzinə bölünəcək:

  • giriş məlumat axını;
  • verilənlər bazası daxilində məlumatın çevrilməsi və hərəkəti;
  • istifadə etmək üçün data seçin.

Cədvəl quruluşu anlayışı yoxdur. Heç bir sətir və ya sütun yoxdur. Bir abstraksiya var - alqoritmin müəyyən bir nöqtəsini təmin edən müəyyən bir strukturun verilmiş. Daha dəqiq desək, məlumatın emalı funksiyası müəyyən miqdarda müəyyən məlumat tələb edir.

Bütün informasiyanın emalı funksiyalarının rekursivliyinin məcburi tələbi və məlumatlara deyil, funksiyalara diqqət yetirilməsi istifadəçinin təşəbbüsü ilə istifadə edilən yığılmış məlumat və daxil olan məlumat axınının dinamikasında verilənlər bazasını tərtib etməyə imkan verir., proses və ya digər funksiya.

Əslində: istifadə siqnalı gəldi, gətirmə sorğusu alındı, tətbiqdə tətik işə salındı və artıq orada olanlar vasitəsilə daxil olan məlumat istənilən həlli təmin etdi.

Fundamental biliklər və sərt konstruksiyalar

Bilik insanın səlahiyyətidir, proqramlar kompüterlərin yüküdür. Tərtibatçı müəyyən bir vəziyyətdə uyğun bildiyi bilikləri tətbiq etməkdə sərbəstdir. Adi bir insan çoxlu verilənlər bazasından istifadə edir, ona əhəmiyyət vermədən. Necəməlumat bazaları adi bir insanın başında təşkil olunur, heç kim bilmir, amma hər kəs bilir ki, o, biznesini necə aparır, harada tapdığını yazır və ondan nə vaxt istifadə etmək lazımdır.

Proqramçının işinin nəticəsi - ODBC vasitəsilə onlayn mağazanın veb saytından məlumatları əldə edən "Basic" proqram səviyyəsində, məlumatların alınması üçün sorğu verən başlıqlı Oracle tərtibatçısına bərabərdir. MAKS Aviasiya və Kosmos Salonundan. Hər iki nəticə iş başa çatdıqdan sonra statik vəziyyətdə "donur". Bu, insanın istifadə etdiyi aktiv bilik deyil, verilənlər bazası dizayn sistemi yaratmağın sirri budur.

Alqoritmi düzəltmək mümkün deyil. Hər şey dinamik şəkildə müəyyən edilməlidir. İxtisaslı tərtibatçıların üstünlükləri danılmazdır, lakin onlar Oracle, MySQL və ya imkanları məhdud olan Access-in zərif həll formalarında heç də yalan deyil. Başqa bir Excel cədvəli dinamik məzmun təmin edə bilər və iş başa çatdıqdan sonra az-çox layiqli vaxt ərzində proqramçının iştirakını tələb etmir.

Sual verilənlər bazasının strukturunda deyil, tətbiq sahəsinin dinamikasının nə qədər yaxşı rəsmiləşdirilməsindədir.

Canlı Həllər

İşi peşəkar tərtibatçılardan ibarət komandanı bir tapşırığa bağlayacaq şəkildə planlaşdırmaq mümkün deyil. Komandanın inciməsi deyil, amma bu düzgün yanaşma deyil.

Canlı Həllər
Canlı Həllər

Verilənlər bazasının layihələndirilməsi vəzifəsi elə tərtib edilməlidir ki, işlənmiş funksionallıq özünü təkmilləşdirsin, bilik toplasın və öz “vəzifələrini” yerinə yetirərkən koddan başlamasın,ekspertlər tərəfindən yaradılmışdır, lakin bu kod vasitəsilə əldə edilmiş biliklərə əsaslanır.

Tövsiyə: