Verilənlər bazasının dizaynı. Ən yaxşı təcrübələr

Məzənnə ilə növbəti axının başlaması ərəfəsində "Məlumat bazası" Biz verilənlər bazası dizaynı üçün vacib məsləhətlərlə kiçik bir müəllif materialı hazırlamışıq. Ümid edirik ki, bu material sizin üçün faydalı olacaqdır.

Verilənlər bazasının dizaynı. Ən yaxşı təcrübələr

Verilənlər bazaları hər yerdədir: ən sadə bloqlardan və kataloqlardan tutmuş etibarlı informasiya sistemlərinə və böyük sosial şəbəkələrə qədər. Verilənlər bazasının sadə və ya mürəkkəb olması o qədər də vacib deyil, onu düzgün tərtib etmək vacibdir. Verilənlər bazası düşünmədən və məqsədi aydın başa düşmədən tərtib edildikdə, o, nəinki səmərəsiz olur, həm də verilənlər bazası ilə sonrakı iş istifadəçilər üçün əsl əzab, keçilməz meşə olacaq. Faydalı və istifadəsi asan məhsul yaratmağınıza kömək edəcək bəzi verilənlər bazası dizayn məsləhətləri.

1. Cədvəlin nə üçün olduğunu və quruluşunun nə olduğunu müəyyən edin

Verilənlər bazasının dizaynı. Ən yaxşı təcrübələr

Bu gün Scrum və ya RAD (Rapid Application Development) kimi inkişaf metodları İT komandalarına verilənlər bazalarını sürətlə inkişaf etdirməyə kömək edir. Bununla birlikdə, zamanın arxasınca, məqsədin özünün nə olduğunu, son nəticələrin nə olduğunu qeyri-müəyyən şəkildə təsəvvür edərək, birbaşa baza qurmağa dalmaq çox böyükdür.
 
Sanki komanda səmərəli, sürətli işə fokuslanıb, amma bu bir ilğımdır. Layihənin dərinliyinə nə qədər tez və daha tez daxil olsanız, verilənlər bazası dizaynındakı səhvləri müəyyən etmək və dəyişdirmək üçün bir o qədər çox vaxt lazım olacaq.

Beləliklə, qərar verməli olduğunuz ilk şey verilənlər bazanızın məqsədini müəyyən etməkdir. Verilənlər bazası hansı proqram növü üçün hazırlanır? İstifadəçi yalnız qeydlərlə işləyəcək və əməliyyatlara diqqət yetirməli olacaq, yoxsa onu daha çox məlumat analitikası maraqlandırır? Baza harada yerləşdirilməlidir? Müştəri davranışını izləyəcək, yoxsa sadəcə müştəri münasibətlərini idarə edəcək? 

Dizayn komandası bu suallara nə qədər tez cavab versə, verilənlər bazası dizayn prosesi bir o qədər hamar olacaq.

2. Saxlama üçün hansı məlumatları seçməliyəm?

Verilənlər bazasının dizaynı. Ən yaxşı təcrübələr

İrəli planlaşdır. Verilənlər bazasının tərtib olunduğu sayt və ya sistemin gələcəkdə nə edəcəyi ilə bağlı düşüncələr. Texniki şərtlərin sadə tələblərindən kənara çıxmaq vacibdir. Xahiş edirəm, istifadəçinin nə vaxtsa saxlayacağı bütün mümkün məlumat növləri haqqında düşünməyə başlamayın. Bunun əvəzinə istifadəçilərin yazı yaza, sənədlər və ya fotoşəkillər yükləyə və ya mesaj mübadiləsi apara biləcəklərini düşünün. Əgər belədirsə, onda verilənlər bazasında onlar üçün yer ayırmalısınız.

Dizayn bazasının gələcəkdə dəstəklənəcəyi komanda, şöbə və ya təşkilatla işləyin. Müştəri xidməti mütəxəssislərindən tutmuş şöbə rəhbərlərinə qədər müxtəlif səviyyələrdə insanlarla ünsiyyət qurun. Beləliklə, rəyin köməyi ilə siz şirkətin tələbləri haqqında aydın təsəvvür əldə edəcəksiniz. 

İstər-istəməz, hətta eyni şöbə daxilindəki istifadəçilərin ehtiyacları ziddiyyət təşkil edir. Bununla qarşılaşsanız, öz təcrübənizə etibar etməkdən qorxmayın və bütün tərəflərə uyğun gələn və verilənlər bazasının əsas məqsədini təmin edən bir kompromis tapın. Əmin olun: gələcəkdə siz +100500 karma və çoxlu peçenye alacaqsınız.

3. Məlumatları ehtiyatla modelləşdirin

Verilənlər bazasının dizaynı. Ən yaxşı təcrübələr

Məlumatların modelləşdirilməsi zamanı diqqət yetirilməli olan bir neçə əsas məqam var. Daha əvvəl dediyimiz kimi, verilənlər bazasının məqsədi modelləşdirmədə hansı metodlardan istifadə olunacağını müəyyən edir. Əgər biz onlayn qeydlərin işlənməsi (OLTP), başqa sözlə qeydlərin yaradılması, redaktəsi və silinməsi üçün verilənlər bazası dizayn ediriksə, biz əməliyyat modelləşdirməsindən istifadə edirik. Əgər verilənlər bazası əlaqəli olmalıdırsa, çoxölçülü modelləşdirmədən istifadə etmək daha yaxşıdır.

Modelləşdirmə zamanı konseptual (CDM), fiziki (PDM) və məntiqi (LDM) məlumat modelləri qurulur. 

Konseptual modellər varlıqları və onlara daxil olan məlumat növlərini, habelə onlar arasındakı əlaqələri təsvir edir. Məlumatlarınızı məntiqi hissələrə bölün - bu, həyatı çox asanlaşdırır.
Əsas odur ki, mülayimlikdir, həddi aşmayın.

Müəssisəni bir söz və ya ifadə ilə təsnif etmək çox çətindirsə, o zaman alt tiplərdən (alt varlıqlardan) istifadə etmək vaxtıdır.

Müəssisə öz həyatını aparırsa, onun davranışını və görünüşünü, eləcə də digər obyektlərlə münasibətlərini təsvir edən atributlara malikdirsə, onda siz yalnız alt tipdən deyil, həm də supertipdən (ana müəssisə) etibarlı şəkildə istifadə edə bilərsiniz. 

Bu qaydaya laqeyd yanaşsanız, digər tərtibatçılar modelinizdə çaşqın olacaq və məlumatları və onların necə toplanacağına dair qaydaları tam başa düşməyəcəklər.

Konseptual modellər məntiqi modellərdən istifadə etməklə həyata keçirilir. Bu modellər fiziki verilənlər bazası dizaynı üçün yol xəritəsi kimidir. Məntiqi modeldə biznes məlumat subyektləri müəyyən edilir, verilənlərin növləri müəyyən edilir və verilənlər arasında əlaqələri tənzimləyən qayda açarının statusu müəyyən edilir.

Sonra Məntiqi Məlumat Modeli əvvəlcədən seçilmiş DBMS (verilənlər bazasının idarəetmə sistemi) platforması ilə müqayisə edilir və Fiziki Model alınır. Verilənlərin fiziki olaraq necə saxlandığını təsvir edir.

4. Düzgün məlumat növlərindən istifadə edin

Verilənlər bazasının dizaynı. Ən yaxşı təcrübələr

Yanlış məlumat növündən istifadə daha az dəqiq məlumat, cədvəllərə qoşulma çətinlikləri, atributların sinxronizasiyasında çətinliklər və şişmiş fayl ölçüləri ilə nəticələnə bilər.
Məlumatın bütövlüyünü təmin etmək üçün atribut yalnız onun üçün məqbul olan məlumat növlərini ehtiva etməlidir. Əgər yaş verilənlər bazasına daxil edilibsə, sütunun maksimum 3 rəqəmdən ibarət tam ədədləri saxladığından əmin olun.

NULL dəyəri olan minimum boş sütunlar yaradın. Bütün sütunları NULL olaraq yaratsanız, bu, böyük səhvdir. Müəyyən bir iş funksiyasını yerinə yetirmək üçün boş bir sütuna ehtiyacınız varsa, məlumat naməlum olduqda və ya hələ mənası yoxdursa, onu yaratmaqdan çekinmeyin. Axı, "Ölüm tarixi" və ya "İşdən çıxarılma tarixi" sütunlarını əvvəlcədən doldura bilmərik, biz barmaqlarımızı göyə göstərən proqnozçu deyilik :-).

Əksər modelləşdirmə proqramları (ER/Studio, MySQL Workbench, SQL DBM, glify).com) data sizə məlumat regionlarının prototiplərini yaratmağa imkan verir. Bu, yalnız düzgün məlumat tipini, tətbiq məntiqini və yaxşı performansı deyil, həm də dəyərin tələb olunduğunu təmin edir.

5. Təbii olun

Verilənlər bazasının dizaynı. Ən yaxşı təcrübələr

Cədvəldə hansı sütunun açar kimi istifadə olunacağına qərar verərkən həmişə istifadəçinin hansı sahələri redaktə edə biləcəyini nəzərə alın. Heç vaxt onları açar kimi seçməyin - pis fikirdir. Hər şey ola bilər, ancaq onun unikal olduğuna əmin olmalısınız.

Təbii və ya işgüzar açardan istifadə etmək yaxşıdır. Onun semantik mənası var, ona görə də verilənlər bazasında təkrarlanmanın qarşısını alacaqsınız. 

Biznes açarı unikal deyilsə (ad, soyad, vəzifə) və cədvəlin müxtəlif sətirlərində təkrarlanmırsa və ya dəyişməli deyilsə, yaradılan süni açar əsas açar kimi təyin edilməlidir.

6. Orta səviyyədə normallaşdırın

Verilənlər bazasının dizaynı. Ən yaxşı təcrübələr

Verilənlər bazasında məlumatları effektiv şəkildə təşkil etmək üçün bir sıra təlimatlara əməl etməli və verilənlər bazasını normallaşdırmalısınız. Təqib edilməli beş normal forma var.
Normallaşdırma ilə siz artıqlıqdan qaçırsınız və tətbiqinizdə və ya saytınızda istifadə olunan məlumatların bütövlüyünü təmin edirsiniz.

Həmişə olduğu kimi, hər şey orta səviyyədə olmalıdır, hətta normallaşma. Verilənlər bazasında eyni unikal açarları olan çoxlu cədvəllər varsa, o zaman siz məlumat bazasını həddən artıq normallaşdırmısınız. Həddindən artıq normallaşma verilənlər bazası işinə mənfi təsir göstərir.

7. Erkən sınaqdan keçirin, tez-tez sınaqdan keçirin

Verilənlər bazasının dizaynı. Ən yaxşı təcrübələr

Test planı və düzgün sınaq verilənlər bazası dizaynının bir hissəsi olmalıdır.

Verilənlər bazanızı sınamağın ən yaxşı yolu Davamlı İnteqrasiyadan keçir. “Verilənlər bazasının həyatında bir gün” ssenarisini simulyasiya edin və bütün kənar halların idarə olunub-olunmadığını və hansı istifadəçi qarşılıqlı əlaqəsinin ola biləcəyini yoxlayın. Səhvləri nə qədər tez tapsanız, həm vaxtınıza, həm də pulunuza bir o qədər qənaət etmiş olarsınız.

Bunlar böyük məhsuldarlıq və səmərəlilik verilənlər bazası hazırlamaq üçün istifadə edə biləcəyiniz yalnız yeddi məsləhətdir. Əgər onlara əməl etsəniz, gələcəkdə baş ağrısının çoxunun qarşısını alacaqsınız. Bu məsləhətlər verilənlər bazası modelləşdirməsində aysberqin yalnız görünən hissəsidir. Çoxlu sayda həyat hiylələri var. Hansılarından istifadə edirsiniz?

Mənbə: www.habr.com

Добавить комментарий