Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 12075|Yanıt: 0

[Kaynak] Veritabanı Tasarım İlkeleri (Yeniden Baskı) On Dört İpucu

[Bağlantıyı kopyala]
Yayınlandı 9.04.2015 21:00:54 | | |

1. Orijinal belge ile varlık arasındaki ilişki

Bire bir, bire çok ve çok-çok ilişki olabilir. Genel olarak, bunlar bire bir ilişkilerdir: yani orijinal belgeler çifti
sadece bir varlığa karşılık gelmeli. Özel durumlarda, bir-çok veya bir-bire ilişki olabilir; yani bir orijinal belge birden fazla gerçekliğe karşılık gelir
gövde veya bir varlığa karşılık gelen birden fazla orijinal belge. Buradaki varlık temel bir tablo olarak anlaşılabilir. Bu yazışmayı netleştirdikten sonra, bizim için tasarım yapın
Giriş arayüzü çok faydalı.
〖Örnek 1〗: Bir çalışan özgeçmiş bilgisi, insan kaynakları bilgi sistemindeki üç temel tabloya karşılık gelir: çalışan temel bilgi tablosu ve toplum
İlişki masası, iş özgeçmiş formu. Bu, "bir orijinal belge birden fazla varlığa karşılık gelir" tipik bir örnektir.
2. Birincil ve yabancı anahtarlar
Genel olarak, bir varlığın ne birincil ne de yabancı anahtarı olamaz. E-R diyagramında, yaprak kısmındaki varlıklar birincil anahtarı tanımlayabilir,
Ayrıca birincil anahtarı tanımlamamak da mümkündür (çünkü çocuğu yoktur), ancak yabancı anahtarı olması gerekir (çünkü bir babası vardır).
Birincil ve yabancı anahtarların tasarımı, küresel veritabanlarının tasarımında önemli bir yer üstlenir. Küresel veritabanının tasarımı tamamlandığında,
Amerikan veritabanı tasarım uzmanları şöyle demişti: "Anahtarlar, her yerde anahtarlar, sadece anahtarlar", bu onun veritabanı tasarım deneyimi
Ayrıca bilgi sistemlerinin (veri modelleri) çekirdeği hakkında son derece soyut fikirlerini yansıtır. Çünkü: birincil anahtar son derece soyut bir varlıktır ve birincil anahtar
Varlıklar arasındaki bir bağlantıyı temsil eden bir çift yabancı anahtar.
3. Temel tablonun doğası
Temel tablo, ara tablo ve geçici tablodan farklıdır çünkü aşağıdaki dört özelliğe sahiptir:
(1) Atomiklik. Temel tablodaki alanlar artık ayrıştırılamaz.
(2) İlkellik. Temel tablodaki kayıtlar, orijinal verinin (temel veri) kayıtlarıdır.
(3) Çıkarımcı. Tüm çıktı verileri, temel tablodaki ve kod tablosundaki verilerden türetilebilir.
(4) İstikeniyet. Temel tablonun yapısı nispeten kararlıdır ve tablodaki kayıtlar uzun süre saklanmalıdır.
Temel tabloların doğası anlaşıldıktan sonra, veritabanları tasarlanırken, temel tablolar ara tablolardan ve geçici tablolardan ayırt edilebilir.
4. Paradigma standartları
Temel tablo ile alanları arasındaki ilişki, üçüncü paradigmaya mümkün olduğunca uymalıdır. Ancak, üçüncü paradigmaya uygun veritabanı tasarımları genellikle değildir
En iyi tasarım. Veritabanlarının operasyonel verimliliğini artırmak için genellikle paradigma standardını azaltmak gerekir: zaman için yer sağlamak için uygun şekilde yedekliliği artırmak
Amacı.
Örnek 2: Tablo 1'de gösterildiği gibi malların depolanması için temel bir tablo vardır. "Miktar" alanının varlığı, tablonun tatmin edilecek şekilde tasarlanmadığını gösterir
Üçüncü paradigma yeterlidir, çünkü "miktar" "birim fiyat" ile "miktar" çarpılarak elde edilebilir; bu da "miktar"ın gereksiz bir alan olduğunu gösterir. Ancak, artım
"Miktar" alanının gereksiz alanı, zaman için alan değişimi uygulaması olan sorgu istatistiklerinin hızını artırabilir.
Rose 2002'de iki tür öngörülü sütun vardır: veri sütunları ve hesaplanan sütunlar. "Miktar" gibi bir sütuna "hesaplama sütunu" denir ve
"Birim Fiyat" ve "Miktar" gibi sütunlara "veri sütunları" denir.
Tablo 1 Ürün tablosunun tablo yapısı
Ürün Adı Ürün Modeli Birim Fiyat Miktar Miktarı
TV 29 inç 2.500 40 100.000

5. Üç paradigmayı sıradan bir terimle anlamak
Üç paradigmayı sıradan bir dilde anlamak, veritabanı tasarımına büyük fayda sağlar. Veritabanı tasarımında, üç paradigmayı daha iyi uygulamak için sadece
Üç paradigma sıradan bir dilde anlaşılmalıdır:
İlk paradigma: 1NF, niteliklerin atomik olmasını gerektiren ve artık ayrıştılamayan öznitelikler üzerindeki atomik bir kısıtlamadır;
İkinci paradigma: 2NF, kayıtlar üzerindeki benzersizlik kısıtlamasıdır ve kayıtların benzersiz bir tanımlamaya, yani varlığın benzersizliğine sahip olmasını gerektirir;
Paradigma 3: 3NF, alan tekrarına bir kısıtlamadır; yani, hiçbir alan diğer alanlardan türetilemez, alanın gereksiz olmaması gerekir

Hiçbir yedek veritabanı tasarımı bunu yapamaz. Ancak, yedekliliği olmayan bir veritabanı mutlaka en iyi veritabanı değildir, bazen şansı artırmak için
Verimlilik sağlamak için paradigma standardını azaltmak ve gereksiz verileri uygun şekilde saklamak gerekir. Özel yaklaşım, kavramsal veri modelleri tasarlanırken üçüncü paradigmaya bağlı kalmaktır
, paradigma standardının küçültülmesi çalışması, fiziksel veri modelinin tasarımında dikkate alınır. Paradigmayı azaltmak, yedekliliğe izin veren alanlar eklemektir.
6. Çoklu ilişkileri tanımlamada ve doğru şekilde yönetmede iyi olun
İki varlık arasında çoktan çokluğa bir ilişki varsa, bu ilişki ortadan kaldırılmalıdır. Bunu ortadan kaldırmanın yolu, ikisi arasında üçüncü bir real eklemek
beden. Bu şekilde, eskiden çoktan çok ilişkisi olan şey, şimdi iki bire çok ilişkiye dönüştü. Orijinal iki varlığın özellikleri makul şekilde dağıtılmalıdır
Üç varlığa gidin. Buradaki üçüncü varlık esasen daha karmaşık bir ilişkidir ve temel bir tabloya karşılık gelir. Genel olarak, sayılar
Kütüphane tasarım aracı çoktan çoktan çok ilişkilerini tanıyamaz, ancak çoktan çoktan çok ilişkileri yönetebilir.
Örnek 3: "Kütüphane Bilgi Sistemi"nde "kitap" bir varlıktır ve "okuyucu" da bir varlıktır. Bu iki varlık aynıdır
Kitaplar arasındaki ilişki tipik bir çoktan çokluğa ilişkidir: bir kitap farklı zamanlarda birden fazla okuyucu tarafından ödünç alınabilir ve bir okuyucu daha fazlasını ödünç alabilir
Bu kitap. Bu amaçla, ikisi arasında "ödünç alma ve iade kitapları" olarak adlandırılan üçüncü bir varlık eklenmelidir ve özellikleri şunlardır: ödünç alma zamanı ve ödünç alma
Ayrıca bir logosu vardır (0 bir kitabı ödünç almak, 1 ise kitabı iade etmek anlamına gelir), ayrıca iki yabancı anahtara sahip olmalıdır ("kitap"ın ana anahtarı ve "okuyucu"nun birincil anahtarı), böylece
"Kitaplar" ve "okuyucularla" bağlantı kurar.
7. Birincil anahtar PK'nın değer yöntemi
PK, programcılar için bir tablolar arası bağlantı aracıdır ve fiziksel anlamı olmayan bir sayı dizisi olabilir ve program tarafından otomatik olarak 1'e eklenir. Evet
fiziksel anlamda anlamlı bir alan adı veya alan adlarının birleşimidir. Ama ilki, ikincisinden daha iyidir. PK, alan isimlerinin birleşimi olduğunda, bir alan numarası önerin
Çok fazla saymayın, çünkü endeks sadece çok yer kaplamakla kalmaz, aynı zamanda yavaşlar.
8. Veri yedekliliğini doğru yapın
Birincil ve yabancı anahtarların çoklu tablolarda tekrarlanması, veri yedekliği kavramı değildir ve birçok kişi bunun farkında değildir
。 Anahtar olmayan alanların tekrarı veri yedekliğidir! Ve bu düşük seviyeli bir yedeksizliktir, yani tekrarlayan bir yedeksizliktir. İleri yedeklik saha tabanlı değildir
Tekrar, ama alanlardan türevler.
Örnek 4: Üründeki "birim fiyat, miktar ve miktar" üç alanı, "miktar" ise "birim fiyat" ile "miktar" çarpılmasından türetilir
Bu yedekliktir ve bir tür gelişmiş yedekliktir. Yedekliğin amacı, işlem hızını artırmaktır. Sadece düşük seviyeli yedeklik bu sayıyı artıracak
verilerin tutarsızlığı, çünkü aynı veri farklı zamanlardan, yerlerden ve rollerden birden fazla kez girilebilir. Bu nedenle, ileri işten çıkarma (pie
Doğası gereği yedeklilik) ve düşük seviyeli tekrarlılığa (tekrarlayan fazlalık) karşı çıkar.
9. E--R diyagramları için standart bir cevap yoktur
Bir bilgi sisteminin E-R diyagramına standart bir cevap yoktur, çünkü tasarım ve çizim yöntemi benzersiz değildir, yeter ki sistemin gerektirdiği işi kapsa.
Kapsam ve işlevsel içerik uygulanabilir. Bunun yerine, E--R diyagramını değiştirmek gerekir. Tek bir standart cevabı olmasa da, keyfi olabileceği anlamına gelmez
Tasarım. İyi bir E-R diyagramı için kriterler şunlardır: net yapı, özlü ilişki, orta sayıda varlık, makul öznitelik tahsisleri ve düşük seviyeli yedeklik yok.
10. Görüntüleme teknikleri veritabanı tasarımında faydalıdır
Temel tablolar, kod tabloları ve ara tabloların aksine, görünümler var olması için veri kaynağının gerçek tablolarına bağlı sanal tablolardır. Görünümler programcılar içindir
Veritabanını kullanan bir pencere, temel tablo veri sentezinin bir biçimi, veri işleme yöntemi ve kullanıcı verilerinin gizliliği bir tür
anlamlar. Karmaşık işleme gerçekleştirmek, hesaplama hızını artırmak ve depolama alanı tasarrufu sağlamak için görüşün tanım derinliği genellikle üç katmanı geçmemelidir. Üç kat gibi
Eğer görünüm hâlâ yeterli değilse, görünüm üzerinde geçici bir tablo tanımlamalı ve ardından geçici tabloda bir görünüm tanımlamalısınız. Bu şekilde, görüşün derinliği tekrar tekrar tanımlanır
Hiçbir kısıtlama yok.
Ulusal siyasi, ekonomik, teknolojik, askeri ve güvenlik çıkarlarıyla ilgili belirli bilgi sistemleri için görüşlerin rolü çok daha önemlidir. Bunlar
Sistemin temel tablosunun fiziksel tasarımı tamamlandıktan sonra, ilk görünüm katmanı hemen temel tabloda oluşturulur ve bu katman görünümünün sayısı ve yapısı temel tabloyla aynıdır
Sayı ve yapı tamamen aynıdır. Ve tüm programcıların yalnızca görüntü üzerinde çalışmasına izin verildiği şart koşuluyordu. Sadece veritabanı yöneticisi,
Birden fazla personelin elinde tuttuğu "güvenlik anahtarı" doğrudan temel masada kullanılabilir. Okuyucular şu soruyu düşünmeye davet edilir: neden böyle?
11. Ara tablolar, ifadeler ve geçici tablolar
Ara tablo, istatistikleri depolayan bir tablodur; veri depolama, çıktı raporları veya sorgu sonuçları için tasarlanmıştır ve bazen birincil anahtarı yoktur
yabancı anahtarlar (veri depoları hariç). Geçici tablolar, programcılar tarafından kişisel kullanım için geçici kayıtları depolamak üzere tasarlanmıştır. Temel ve ara tablolar DBA tarafından korunmaktadır
Geçici tablolar otomatik olarak programcının kendisi tarafından yönetilir.
12. Bütünlük kısıtlamaları üç açıdan kendini gösterir
Alan bütünlüğü: Kısıtlamaları uygulamak için Check kullanın ve veritabanı tasarım aracında, alanın değer aralığı tanımlanırken bir Ch harfi bulunur
ECK butonu ile alanın değer şehrinin tanımlandığı bir nokta bulunur.
Referans bütünlüğü: PK, FK ve tablo düzeyindeki tetikleyicilerle uygulanmıştır.
Kullanıcı tarafından tanımlanan bütünlük: Saklanan prosedürler ve tetikleyicilerle uygulanan bazı iş kurallarıdır.
13. Veritabanı tasarımı yamalarını önleme yöntemi "üç az kişi" ilkesidir
(1) Veritabanında ne kadar az tablo varsa, o kadar iyi. Ancak tablo sayısı azaltıldığında, sistemin E-R diyagramının küçük ve ince olduğu söylenebilir ve kaldırılır
Tekrarlanan ve gereksiz varlıklar, nesnel dünyanın yüksek derecede soyutlanmasını oluşturur ve yamalama tasarımını önlemek için sistematik veri entegrasyonu yapılır;
(2) Bir tabloda ana anahtarları birleştiren alanlar ne kadar az olursa, o kadar iyidir. Birincil anahtarın rolü nedeniyle, biri birincil anahtar indeksi oluşturmak, diğeri ise alt tablo olarak hizmet vermektir
yabancı anahtarlar için ana anahtarların kombinasyonundaki alan sayısı azalır; bu da sadece çalışma süresini tasarruf etmekle kalmaz, aynı zamanda indeks depolama alanını da tasarruf eder;
(3) Bir tabloda ne kadar az alan varsa, o kadar iyidir. Sadece az sayıda alan sistemde veri çoğaltma olmadığını gösterir
Veri yedekliği çok azdır ve daha da önemlisi, okuyucuların "satır değiştirmeyi" öğrenmeleri teşvik edilir; bu da alanların alt tablodaki ana tabloya çekilmesini engeller
, ana tabloda birçok boş alan bırakıyor. "Sütun değiştirme satırı" olarak adlandırılan satır, ana tablonun içeriğinin bir kısmını çıkarıp ayrı bir tablo oluşturmaktır
Alt masa. Bu yöntem çok basit, bazı insanlar buna alışamıyor, benimsemiyor ve uygulamaz.
Veritabanı tasarımının pratik prensibi, veri yedekliği ile işlem hızı arasında doğru dengeyi bulmaktır. "Üç az kişi" bütüncül bir genel bakış
Düşünce, kapsamlı görüşler, belirli bir ilkeyi izole edemez. İlke görecelidir, mutlak değildir. "Üç tane daha" ilkesi kesinlikle yanlış. Deneyin
Düşünün: Sistemin aynı fonksiyonu kapsanıyorsa, 100 varlıktan oluşan E--R diyagramı (toplamda 1.000 öznitelik) kesinlikle 200 varlığın (toplamda 2.000 öznitelik) oluşan E--R diyagramından daha iyidir
E-R diyagramı çok daha iyi.
"Üç az ol" ilkesini savunmak, okuyucuların sistematik veri entegrasyonu için veritabanı tasarım teknolojisini kullanmayı öğrenmelerini sağlamaktır. Veri entegrasyonu için atılacak adımlar şunlardır:
Dosya sistemi uygulama veritabanına entegre edilir, uygulama veritabanı konu veritabanına entegre edilir ve konu veritabanı küresel kapsamlı bir veritabanına entegre edilir.
Entegrasyon derecesi ne kadar yüksekse, veri paylaşımı o kadar güçlü olur ve bilgi adaları o kadar az olur
Ana anahtar sayısı ve nitelik sayısı daha az olacaktır.
"Üç az kişi" ilkesini savunmanın amacı, okuyucuların veritabanını sürekli eklemek, silmek ve değiştirmek için yama teknolojisi kullanmasını engellemek ve böylece kurumsal veri oluşturmaktır
Kütüphane, rastgele tasarlanmış veritabanı tablolarından oluşan bir "çöp yığını" ya da veritabanı tablolarının "karmaşası" haline geldi ve nihayetinde veritabanındaki temel tablolar ve nesillere neden oldu
Kod tabloları, ara tablolar ve geçici tablolar dağınık ve sayısız olduğundan, işletmelerin ve kurumların bilgi sistemlerinin korunamayacağı ve felç edilemediği anlamına gelir.
"Üç tane daha" ilkesi herkes tarafından yapılabilir; bu, veritabanı tasarlama "yama yöntemi"nin yanlışlığıdır. "Üç az kişi" ilkesi
Bu, daha az ama ince bir ilkedir; yüksek veritabanı tasarımı becerileri ve sanat gerektirir; ki herkes bunu yapamaz, çünkü bu ilke ortadan kaldırılır
Veritabanının "yama yöntemi" kullanılarak tasarlanmasının teorik temeli.
14. Veritabanı operasyon verimliliğini artırmanın yolları
Verilen sistem donanımı ve yazılım koşulları altında, veritabanı sisteminin çalışma verimliliğini artırmak için yöntemler şunlardır:
(1) Veritabanının fiziksel tasarımında paradigmayı azaltın, yedekliliği artırın, daha az tetikleyici kullanın ve daha fazla depolanmış prosedür kullanın.
(2) Hesaplama çok karmaşık ve kayıt sayısı çok büyükse (örneğin 10 milyon), karmaşık hesaplama önce veritabanının dışında yapılmalıdır
Dosya sistemi yöntemi C++ dilinde hesaplanıp işlendikten sonra, sonunda tabloya eklenir. Bu, telekom faturalama sistemi tasarımı deneyimidir.
(3) Bir tabloda çok fazla kayıt bulunuyorsa, örneğin 10 milyondan fazla, tablo yatay olarak bölünmelidir. Yatay segmentasyon uygulaması şudur:
Tablonun kaydını, tablonun birincil anahtarı PK'nın belirli bir değerine göre yatay olarak iki tabloya böl. Bir tabloda çok fazla alan bulunuyorsa, örneğin aşmak
Seksen olarak, masa dikey olarak bölünür ve orijinal masa iki tabloya ayrılır.
(4) Veritabanı yönetim sistemi DBMS'nin sistem optimizasyonu, yani tampon sayısı gibi çeşitli sistem parametrelerinin optimize edilmesi.
(5) Veri odaklı SQL dili kullanırken optimize algoritmalarını benimsemeye çalışın.
Kısacası, veritabanının çalışma verimliliğini artırmak için veritabanı sistemi, veritabanı tasarımı ve program uygulaması optimize edilmelidir
, bu üç seviye aynı anda çok çalışıyor.
Yukarıdaki on dört beceri, birçok kişi tarafından çok sayıda veritabanı analizi ve tasarım uygulamasında kademeli olarak özetlenir. Bu deneyimler için
Okuyucular katı veya ezberleştirici olmamalı, sindirmeli ve anlamalı, gerçeklerden gerçeği aramalı ve esnek bir şekilde ustalaşmalıdır. Ve yavaş yavaş yapın: başvuruyu gönderin
sergi, geliştirme uygulaması.




Önceki:XP+Linux+Win7 üç sistemli eğitim eğitimi oluşturmayı kolayca öğretir
Önümüzdeki:Bi Fujian'ın "Kaplan Dağı'nı Alt Etme" adlı filminde ahlaksız videolar ve Başkan Mao'yu azarlıyor
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com