DB2(Rusça'da “dibi iki” olarak telaffuz edilir, İngilizce “dibi tu” dan izleme kağıdı da yaygındır) - aile yazılım ürünleri IBM'de Bilgi Yönetimi alanında.

Çoğu zaman, DB2'den söz edildiğinde, IBM tarafından geliştirilen ve piyasaya sürülen ilişkisel veritabanı yönetim sistemi DB2 Universal Database (DB2 UDB) kastedilmektedir.

"DB/2" yazımı bazen görülür, ancak bu yazım yanlıştır: IBM gösteriminde, kesrin paydasındaki sayı, platform anlamına gelir ve "/2", ürün anlamına gelir. işletim sistemi OS/2 (veya PS/2 serisi bilgisayarlar). Örneğin, OS/2 için DB2'nin sürümü "DB2/2" olarak belirlenmiştir.

Uygulamalar

DB2 DBMS, şu anda aşağıdaki platformlarda kullanılabilir:

  • Linux, UNIX ve Windows v9 için DB2 AIX, HP-UX, Linux, Solaris, Windows platformları ve Mac OS X platformu için beta için
  • z/OS v9 için DB2 z/OS ve OS/390 platformları için
  • VSE ve VM v7 için DB2 Sunucusu z/VM ve z/VSE platformları için
  • ben için DB2 IBM i platformu için (donanım ve yazılım düzeyinde sisteme entegre)

Geçmişte, OS/2, UnixWare, PTX için DB2 veritabanı sunucusunun sürümleri yayımlanmıştı.

DB2 DBMS istemcileri, listelenen platformlara ek olarak, SINIX, IRIX, klasik Mac OS ve MS-DOS için de çeşitli sürümlerde yayınlandı veya yayınlandı. mobil versiyon DB2 Her Yerde Windows CE, Palm OS, Symbian OS, Neutrino ve sanal makine java.

Halihazırda IBM, ailenin ticari ürünlerine ek olarak ücretsiz bir dağıtım da yapmaktadır. DB2 Express-C Linux (x86, x86-64, POWER), Windows (x86, x86-64), Solaris (x86-64), Mac OS X (x86-64 beta) platformları için. Ücretsiz sürüm, birden fazla çift çekirdekli işlemci ve DBMS için 2 GB'ın kullanımına ilişkin kısıtlamalara sahiptir. rasgele erişim belleği(sistemdeki toplam işlemci ve bellek sayısı herhangi biri olabilir, ancak belirtilen sınırların dışındaki kaynaklar VTYS tarafından kullanılmayacaktır).

Hikaye

DB2'nin uzun bir geçmişi vardır ve bazıları tarafından SQL kullanan ilk DBMS olarak kabul edilir.

1975'ten 1982'ye kadar, DB2 prototipi IBM'de System Relational veya System R adı altında geliştirildi. SQL dili ilk olarak IBM System R'de uygulandı, ancak bu sistem araştırma niteliğindeydi ve SQL de dahil olmak üzere ticari ürün ilk olarak 1979'da Oracle tarafından piyasaya sürüldü.

DB2 adını 1982'de SQL/DS için ilk ticari sürüm ve ardından DB2 olarak adlandırılan MVS için aldı. Uzun bir süre "DB2" ile birlikte yine IBM'in ticari markası olan "Veritabanı 2" varyantı kullanıldı. Görünüşe göre bu, eski hiyerarşik IMS DBMS'den sonra ikinci amiral gemisi IBM DBMS olacaktı.

DB2'nin gelişimi, IBM için çalışan Dr. E. F. Codd'un ilişkisel veritabanları teorisini geliştirdiği ve Haziran 1970'de bir veri işleme modeli yayınladığı 1970'lerin başlarına kadar gider. Bu modeli uygulamak için ilişkisel bir veritabanı dili geliştirdi ve buna Alfa adını verdi. IBM, daha fazla geliştirme için Dr. Codd'un kontrolü dışında bir grup programcıya dış kaynak sağlamayı seçti. İlişkisel modelin bazı ilkelerini ihlal ederek, onu "yapılandırılmış" olarak uygulamışlardır. ingilizce dili istekleri”, kısaltılmış SEQUEL. SEQUEL zaten tescilli bir ticari marka olduğundan, adı SQL - "Structured Query Language" olarak kısaltıldı ve bugüne kadar öyle kaldı.

Bu nedenle, tarihsel olarak DB2, MVS için DB2'den (ki z/OS için DB2'nin alt öğesidir) ve onun kardeş SQL/DS for VM'den (VSE ve VM için DB2 Sunucusu'nun bir alt öğesidir) gelişmiştir. Daha sonra, IBM'deki başka bir geliştirici ekibi, daha sonra OS/2, AIX ve ardından Windows için DB2 v2'ye ve ardından DB2 UDB'ye (onun soyundan gelen Linux, UNIX ve Windows için DB2'dir) gelişen OS/2 EE Veritabanı Yöneticisi sunucusunu uyguladı. ). Başka bir ekip, DB2 mimarisinin yerleşik AS/400 veritabanıyla (bir alt yapı - i için DB2) entegrasyonunu tamamladı. IBM, yavaş yavaş tüm bu şubelerin entegrasyonuna doğru ilerliyor.

özellikler

İle ayırt edici özellikleri DB2, ender istisnalar dışında, dil yapılarının salt bildirimsel anlamını tanımlayan SQL dilinin bir lehçesini ve bu bildirime dayalı yapılara dayalı olarak etkili bir sorgu yürütme planı oluşturan güçlü bir çok aşamalı iyileştiriciyi içerir. Diğer SQL lehçelerinden farklı olarak, DB2 SQL lehçesi, optimize edici için pratikte hiçbir ipucu içermez, zayıf gelişmiştir (ve uzun zamandır genellikle yoktu) bir saklı yordam dili ve bu nedenle her şey bildirimsel bir sorgu yazma stilini sürdürmeyi amaçlıyor. Aynı zamanda, DB2 SQL dili hesaplama açısından eksiksizdir, yani kaynak veriler ile sonuç arasındaki hesaplanabilir karşılıkları bildirim biçiminde tanımlamanıza olanak tanır. Bu, diğer şeylerin yanı sıra tablo ifadeleri, özyineleme ve diğer gelişmiş veri işleme mekanizmalarının kullanılmasıyla sağlanır.

IBM'in ilişkisel geliştirmeye odaklanması ve firmanın bilgisayar endüstrisindeki konumu nedeniyle, DB2 SQL diyalekti ANSI/ISO SQL standartları üzerinde önemli bir etkiye sahiptir.

Saklı yordamlar DB2'de çok yaygın olarak kullanılmaz ve geleneksel olarak, saklı yordamları yazmak için geleneksel üst düzey programlama dilleri (C, Java, PL/I, Cobol, vb.) kullanılır, bu da programcının kolayca biçimlendirmesini sağlar. istemcide mi yoksa sunucuda mı yürütülmesinin daha uygun olduğuna bağlı olarak, uygulamanın bir parçası olarak veya saklı yordam olarak aynı kod. DB2 ayrıca şu anda yordamsal SQL uzantısı ANSI SQL/PSM standardına göre saklı yordamlar için.

DB2 optimizer, tablo dağıtım istatistiklerini kapsamlı bir şekilde kullanır (veri toplama işlemi DBA tarafından yapıldıysa), bu nedenle aynı SQL sorgusu, işlediği verilerin istatistiksel özelliklerine bağlı olarak tamamen farklı yürütme planlarına çevrilebilir.

Tarihsel olarak DB2, anabilgisayarlar üzerindeki çok kullanıcılı sistemlerden evrimleştiğinden, DB2 mimarisinde güvenlik sorunlarına ve DB2'yi yöneten uzmanların rollerinin dağılımına çok dikkat edilir. Özellikle, diğer birçok DBMS'den farklı olarak, DB2'nin DBMS yöneticisi için ayrı görevleri vardır (DB2 yazılım bileşenlerini yapılandırmaktan ve bunları en iyi şekilde bilgisayar sistemi) ve bir veritabanı yöneticisi (belirli bir veritabanındaki verileri yönetmekten sorumlu).

Gerekirse, programlarda statik SQL kullanımı ve paket kavramı, diğer çoğu DBMS'den farklı olarak, bu tür bir güvenlik modelinin uygulanmasına izin verir, bu tür hakların yokluğunda uygulama programlarına belirli işlemleri gerçekleştirme hakları verilebildiğinde Bu programlarla çalışan kullanıcılar için. Bu durumda, kullanıcının yalnızca programı çalıştırma hakları varsa, ancak verileri bağımsız olarak manipüle etme hakkı yoksa, bu, kullanıcının uygulama programını atlayarak veritabanıyla çalışmasının imkansızlığını garanti etmeyi mümkün kılar.

Bir bilgisayar sisteminde güvenlik araçlarının bütünleştirme düzeyini artırma kavramının bir parçası olarak, DB2, kullanıcıların kimliğini doğrulamak, işletim sistemi araçlarıyla veya özel güvenlik sunucularıyla bütünleştirmek için kendi araçlarına sahip değildir. DB2 içinde, yalnızca sistem tarafından kimliği doğrulanan kullanıcılara yetki verilir.

DB2, donanım/yazılım düzeyinde uygulamaları olan tek genel amaçlı ilişkisel DBMS'dir (IBM i sistemi; DB2 desteği, IBM System z anabilgisayar donanımında da uygulanır).

DB2'nin modern sürümleri, XML belgelerinin tek tek öğeleri üzerindeki işlemler de dahil olmak üzere, XML verilerini kullanmak için gelişmiş destek sağlar.

Hata işleme

DB2 SQL Server'ın kullanışlı bir özelliği, hataları işleme yeteneğidir. Bunun için SQLCA yapısı kullanılır. SQL İletişim Alanı- SQL bağlantı alanı), SQL ifadesinin her yürütülmesinden sonra hata bilgilerini uygulama programına döndürür.

SQLCODE Yapı Alanları ve Değerleri

Ana, ancak her zaman yararlı olmayan hata teşhisi bu alanda bulunur SQL KODU(veri türü - tamsayı) SQLCA bloğunun içinde. Aşağıdaki değerleri alabilir:

  • 0 başarı anlamına gelir.
  • Pozitif bir sayı, bir veya daha fazla uyarı ile başarı anlamına gelir. Örneğin +100, sütun bulunamadı anlamına gelir.
  • Negatif bir sayı, bir hatayla başarısızlık anlamına gelir. Örneğin, -911, sıralı bir geri dönüşü tetikleyen, süresi dolmuş bir kilit bekleme aralığı (veya kilitlenme) anlamına gelir.

SQLERRM(veri türü - 71 karakterlik bir dize). içerir Metin dizesi SQLCODE alanı sıfırdan küçükse hatanın açıklamasıyla birlikte.

SQLERRD(veri türü - dizi, 6 tam sayı). Son SQL ifadesini yürütmenin sonucunu açıklar:

  • 1 eleman - dahili bilgi;
  • 2. öğe - sunucu tarafından INSERT ifadesi için oluşturulan SERİ türü alanının değerini veya ek bir hata kodunu içerir;
  • 3. eleman - işlenen kayıtların sayısına eşittir;
  • 4. unsur - bu operatörü yürütmenin yaklaşık maliyeti;
  • 5. öğe - SQL ifadesinin metin kaydındaki hatanın ofseti;
  • 6. element - dahili bilgi.

Notlar

Bağlantılar

  • IBM web sitesindeki program sayfası
  • DeveloperWorks üzerinde DB2 - DB2 makaleleri ve eğitimi
  • PlanetDB2 - DB2 Blogları

Edebiyat

  • Tarih K. DB2 İlişkisel DBMS Kılavuzu. - M.: Finans ve istatistik, 1988. - 320 s. - ISBN 5-279-00063-9
  • Zikopoulos P.K., Baklarz J., deRus D., Melnik R.B. DB2 Sürüm 8: Resmi Kılavuz = DB2 Sürüm 8: Resmi Kılavuz. - E.: KUDITS-OBRAZ, 2004. - 400 s. - ISBN 5-9579-0031-1
  • Smirnov S.N. IBM DB2 ile Çalışma: Öğretici. - E.: Helios, 2001. - 304 s. - ISBN 5-85438-007-2 (bölgedeki UMO üniversiteleri tarafından tavsiye edilir) bilgi Güvenliği"Otomatik sistemlerin entegre bilgi güvenliği" ve "Bilgisayar güvenliği") uzmanlık alanlarında öğretim yardımcısı olarak
  • Susan Visser, Bill Wong. 21 Günde Kendinize DB2 Universal Database Öğretin = Sams Kendinize DB2 Universal Database 21 Günde Öğrenin. - 2. baskı. - E.: Williams, 2004. - 528 s. - ISBN 0-672-32582-9
  • Hook J., Harbus R., Snow D. DB2 için Evrensel Kılavuz pencereler için NT®. - New Jersey: Prentice Hall PTR, 1999. - S. 504. - ISBN 0-13-099723-4

Wikimedia Vakfı. 2010 .

Diğer sözlüklerde "IBM DB2"nin ne olduğunu görün:

    IBM DB2- Geliştirici(ler) IBM İlk yayın 1983 (1983) ... Wikipedia

    IBM DB2- DB2, IBM'in en büyük ilişkileriyle ilgili Datenbank Yönetim Sistemi (RDBMS), IBM'in sunduğu, Sistem ve Grundlagen'den E. F. Codd vom IBM Research tarafından sağlanan Jahr 1970 zurückgeht. Inhaltsverzeichnis 1 Eigenschaften 1.1… … Deutsch Wikipedia

    IBM DB2- Développeur IBM Dernière versiyonu ... Wikipedia tr Français

    IBM DB2 Ortak Mağazası- IBM tarafından e-posta iletilerini veya SAP ERP verilerini yönetmek için üretilen DB2 CommonStore Arşivleme yazılımı. DB2 veritabanı platformunu temel alan IBM Information Management portföyünün bir parçası. DB2 CommonStore birkaç üründen biridir… … Wikipedia

    Enterprise Edition - güvenilir işlem işleme ve zengin işlevselliğe ihtiyaç duyan büyük kuruluşlar için bir çözüm;

    Advanced Edition - bu sürüm sınırsız sayıda bağlantıyı, kümelemeyi destekler ve yüksek performans elde etmenize olanak tanıyan ölçeklenebilirlik sağlar (sürüm iki aşamalı işlem onayı ve otomatik yük devretme sağlamaz);

    Small Business Edition - sürüm, İnternet uygulamalarını desteklemek için tasarlanmıştır. İzin verilen maksimum IIOP/CORBA bağlantı sayısı on olup, sistemleri kümelemeye, anabilgisayar desteğine, iki aşamalı işlem onayına ve otomatik yük devretmeye ihtiyaç duymayan kuruluşlar için uygundur;

    Geliştiricilerin Sybase EAServer kullanarak uygulama oluşturma ve test etme seçeneği olan Developer Edition, tam özellikli ancak beş IIOP bağlantısıyla sınırlıdır.

Sybase EAServer, aşağıdakiler dahil bir dizi önemli fayda sağlar:

    sağlayarak sistemin güvenilir bir şekilde çalışmasını sağlar. otomatik kurtarma sunucu belleği, yük dengeleme ve kümeleme düzeyinde sağlık;

    mevcut dahili sistemlerle entegrasyon yoluyla yatırım koruması;

    Bileşen örneği önbelleğe alma, işlem yönetimi, süreç önbelleğe alma ve grafik bileşen parametreleştirme gibi kapsamlı yapılandırma ve yönetim yetenekleri aracılığıyla basitleştirilmiş yönetim.

alt db2

DBMS şirketi IBM DB2, ilk olarak seksenlerin başında ortaya çıktı. Bu ürünün sürümleri şu anda AS/400AIX, S/390, Windows, OS/2, AIX, HP-UX, SCO UnixWare, Linux, NUMA-Q ve Sun Solaris üzerinde çalışmaktadır.

DB2 Enterprise Server Edition, zengin bir yönetim araçları seti ile birlikte gelir. DB2 veri erişim mekanizmaları ODBC, JDBC ve ADO/OLE DB sürücülerini destekler ve Microsoft kullanıcıları için görsel stüdyo Ortamda bulunan Saklı Yordam Oluşturucu gibi ek modüller mevcuttur. DB2'nin Windows sürümleri, içinde saklı yordamlar oluşturmanıza da olanak tanır. Visual Basic. Borland geliştirme araçları, DB2'ye yalnızca ADO/OLE DB ve ODBC aracılığıyla değil, aynı zamanda kendi evrensel veri erişim mekanizmaları olan Borland Database Engine ve dbExpress aracılığıyla da erişimi destekler.

DB2 DBMS, veri ambarlarının oluşturulmasını destekler ve ambara veri aktarımı için araçlara ek olarak, istemci bölümünün bir parçası olarak Veri Ambarı Merkezi'ni içerir; bir ambar şeması oluşturma, bunun için ilk veri kaynaklarını belirleme, depolamadaki verileri güncelleme programları oluşturma, yanlış verileri kontrol etme ve düzeltme dahil olmak üzere veri ambarları. OLAP depolamasını desteklemek için DB2 Universal Database Server, Hyperion Essbase OLAP Server'a dayalı bir OLAP Başlangıç ​​Seti içerir.

DB2 DBMS, XML belgelerinin öğeleri ve özniteliklerine göre depolanmasını ve aranmasını destekler. SOAP protokolünü kullanarak, DB2 saklı yordamlarına ve verilerine erişim sağlayan Web hizmetlerine erişebilirsiniz (Web hizmetleri, IBM WebSphere uygulama sunucusu tarafından yönetilir).

DB2 Universal Database'in en önemli teknik özellikleri arasında nesne uzantılarını kullanarak ilişkisel ve karmaşık veriler için destek, çok işlemcili platformlarda çalışma yeteneği, küme desteği, 64 bit bellek mimarisi, sorgu paralelleştirme, heterojen yönetim ve veri işleme için araçların kullanılabilirliği, dağıtılmış işlemler için destek.

DB2, Linux, anabilgisayarlar, Windows dahil herhangi bir platformda çalışırken .Net üzerinde geliştirilebilen tek veritabanıdır. DB2, Java saklı yordamlarına sahiptir.

Visual Studio için genişletilmiş destek, Web hizmetleri desteği, XML verilerini dönüştürmeden depolamak için tam destek ve kod yazmadan uygulamalar ve Web siteleri oluşturma becerisini içerir.

DB2, veri geliştirmeyi ve bütünleştirmeyi basitleştiren kapsamlı XML desteğiyle ilişkisel teknolojiler üzerine kurulmuştur. XML, DB2'deki meta veri oluşturma sürecinin ve meta veri denetimlerinin önemli bir bileşenidir.

DB2 sürüm 9, PureXML teknolojisini, devrim niteliğindeki Venom veri sıkıştırma teknolojisini ve çevrimdışı veri yönetimini sunar. DB2, Oracle ve MySQL DBMS'de depolanan bilgilere erişim sağlar.

Uygulanan VTYS geliştirmeler, geliştiricilerin XML ve ilişkisel veri depolarıyla aynı anda çalışan uygulamaların oluşturulmasını önemli ölçüde basitleştirmesine ve hızlandırmasına olanak tanır. Örneğin, PureXML teknolojisi, özellikle XML verilerini işlemek için tasarlanmış bir standart olan XQuery dilini destekler. İlişkisel veya XML verilerini almak için uygulama geliştiricileri XQuery, XPath, standart SQL dili- veya üçü aynı anda.

DB2 Developer Workbench kapsamlı geliştirme ortamı, saklı yordamlar ve kullanıcı tanımlı işlevler oluşturmanıza, düzenlemenize, hatalarını ayıklamanıza, test etmenize ve devreye almanıza olanak tanır. Developer Workbench, uygulamalar geliştirmek ve SQL deyimleri ve XML sorguları oluşturmak, düzenlemek ve yürütmek için kullanılabilir.

DB2 sürüm 9 veritabanı sunucusu, biçim, platform ve konumdan bağımsız olarak ilişkisel ve XML verilerinin kesintisiz, paralel hareketine izin verir ( http://www-306.ibm.com/software/data/db2/v9/).

DB2, bugün başka hiçbir DBMS'nin yapamadığı dizinleri ve geçici tabloları da sıkıştırır. Raporlama için yedek veritabanına sahip bir sunucunun kullanılabileceği, hataya dayanıklı iki sunuculu bir yapılandırmanın uygulanması.

DB2'nin iki sürümü mevcuttur: DB2 Workgroup ve DB2 Enterprise Edition. DBMS, sorgu işleme paralelleştirmesi, tam bir çoğaltma araçları seti, veritabanı performansını iyileştirmek için sorgu özet tabloları, nesne yönelimli veritabanı tasarım özellikleri ve Java dili araçları uygular.

DB2, metin, ses, video, görüntü ve coğrafi verileri depolamak ve işlemek için eksiksiz bir çoklu ortam uzantıları kümesiyle donatılmıştır. DB2'nin ana dezavantajları, yönetimin göreli karmaşıklığıdır.

DB2'de, Index Smart Guide sayesinde, veri tabanındaki tipik yükü karakterize eden belirli sayıda isabet için en uygun dizinleri oluşturarak ayar yapabilirsiniz. DB2 DBMS, veri ambarı olarak çalışmasının verimliliğini büyük ölçüde artıran özet tablolar oluşturmanıza olanak tanır. Özet tablo, DBMS tarafından sık alınan sorgulara verilen yanıtları depolamak için kullanılan geçici bir çalışma alanıdır.

Uzamsal verilerle çalışmak için DB2 Spatial uzantısı, ESRI ile işbirliği içinde geliştirildi [ http://www.esri.com/partners/alliances/ibm/solutions.html,http://www.esri.com/partners/alliances/ibm/index.html].

IBM, DB2'nin üç sürümünü aynı anda yayınlar - kurumsal müşteriler, KOBİ'ler için (DB2 Express) ve geliştiriciler için (DB2 Express-C).

IBM, DBMS'nin basitleştirilmiş bir sürümüne sahiptir DB2 Express-C, ilişkiseldir ancak XML'i destekler.

VTYS Informix

IBM tarafından satın alınmadan önce, Informix'in amiral gemisi ürünü, UNIX ve Windows platformlarını destekleyen ve hem tek hem de çok işlemcili sistemlerde ve kümelerde verimli çalışma sağlayan Informix Dynamic Server (IDS) idi. Bu ürün, güçlü paralel işleme yeteneklerine sahiptir. Informix Dynamic Server'ın temel özellikleri arasında, yönetmek için kullanıldığı belirtilmelidir. disk alanı işletim sistemi araçları olarak; işletim sistemi kısıtlamalarını atlamanıza, bellek paylaşımını yönetmenize izin veren kendi işlevlerinin yanı sıra; dinamik akış kontrolü; birden çok diskte tablo ve dizin parçalanması için destek; sorgu paralelleştirme; veri yansıtma IDS sunucusu, işlemlerin iki aşamalı olarak tamamlanmasını ve ayrıca heterojen işlemleri destekler (bu durumda, diğer sunucular işlemlere katılabilir). Özellikle not, sunucunun zaman serileri için desteğidir.

Sunucu işlevselliği uzantıları, DataBlade - C dilinde veritabanı nesneleri ve alt rutinlerinin koleksiyonları, veritabanına bağlı ve hem DBMS üreticisi hem de bir dizi bağımsız üretici tarafından yayınlanır.

Veri erişim mekanizmalarından IDS, ODBC, JDBC ve ADO/OLE DB sürücülerini destekler. Borland geliştirme araçları, Borland Database Engine, dbExpress, Microsoft .NET mekanizmalarını kullanarak IDS'ye erişimi destekler.

Son zamanlarda ilişkisel VTYS'den nesne yönelimli VTYS'ye geçiş olmuştur. Bu konsepti takip eden Informix, çözümünü Informix Dynamic Server 7.3 ilişkisel veritabanına ve Informix Universal Data Option nesne-ilişkisel veritabanına dayanan ve verilerle çalışırken Dynamic Server'ın yüksek performansını evrensellik ve multimedya ile birleştirerek Centaur DBMS'de sunar. Evrensel Veri Seçeneğinin özellikleri. Bu uygulama, İnternet sistemlerinin geliştirilmesine yöneliktir. DBMS, esnek bir geliştirme ortamına, İnternetin yoğun iş yükleriyle eşleşecek ölçeklenebilirliğe ve Web'in gelişmesiyle birlikte her yerde yaygın hale gelen yeni veri türleri ile çalışmak için araçlara sahiptir. Bu sistemde uygulanan Java araçları, geliştiricilerin bu dilde saklı yordamlar, kullanıcı programları ve DataBlades bileşenleri oluşturmasına olanak tanır.

Centaur paketi, yerleşik ActiveX nesne işleme ile birlikte gelir. Bu, Visual Basic dilinde veritabanı saklı yordamları oluşturmayı mümkün kılar.

Centaur, Informix Dynamic Server'a bir eklentidir ve bu paket için geleneksel veritabanı formatı ile çalışır, böylece kullanıcılar tüm eski işlevleri korur ve sistemi yeni sürümler düzeyine yükseltmek çok zor olmayacaktır. Sistem, nesneye dayalı veritabanı tasarımı, özel tabloların oluşturulması ve indeksleme programları için olanaklarla donatılmıştır; kullanıcıların yalnızca standart SQL araçlarına güvenmek yerine sorgulara kendi işlevlerini yerleştirmelerine olanak tanır.

İyi çalışmalarınızı bilgi tabanına gönderin basittir. Aşağıdaki formu kullanın

İyi iş siteye">

Bilgi tabanını çalışmalarında ve çalışmalarında kullanan öğrenciler, yüksek lisans öğrencileri, genç bilim adamları size çok minnettar olacaktır.

http://www.allbest.ru/ adresinde barındırılmaktadır.

Minsk Yönetim Enstitüsü

otomatik bölüm bilgi sistemi

Genel mühendislik uygulamasının geçişi hakkında rapor

Staj koşulları: 19.11.2012 - 16.12.2012

Öğrenci grubu 111201-z

ONLARA. Vaitoviç

baş kıdemli

TELEVİZYON. rus öğretmeni,

teknik bilimler ustası

Allbest.ru'da barındırılıyor

Özel eğitim kurumu

Minsk Yönetim Enstitüsü

Fakülte: mühendislik ve bilgi

Departman: otomatik bilgi sistemleri

Uzmanlık: 1-40 01 02 - Bilgi sistemleri ve teknolojileri (yönlendirme ile)

Öğrenci Khobotova Anastasia Mikhailovna grubu No. 111201z için genel mühendislik uygulaması için bireysel görev

1. Özetin konusu:

IBM DB2 veritabanı yönetim sistemi.

2. Bireysel görev:

4. Program:

Eğitim (genel mühendislik) uygulama etkinliklerinin adı

Tarih

IIP için organizasyon toplantısı

Uygulama için bireysel bir ödev alma

11.09.12 - 24.09.12

Turlar (sergiler)

19.11.12 - 24.11.12

Seminerler, toplantılar, söyleşiler yapmak

19.11.12 - 30.11.12

soyut hazırlık

01.12.12 - 09.12.12

Bireysel bir görevin tamamlanması

01.12.12 - 16.12.12

Uygulama raporu hazırlama

17.12.12 - 11.03.13

Uygulama ile ilgili departmana rapor sunmak

Uygulama raporunun korunması

19.03.13 - 23.03.13

Baş TV tavşan

giriiş

1. Veritabanı yönetim sistemi

1.1 Bir VTYS kavramı

1.2 DBMS'nin yaratılış tarihi

1.6 Büyük nesneler

1.8 Tetikleyiciler

1.9 İlişkisel genişleticiler

1.11 IBM DB2 sürümlerine genel bakış

2. Pratik kısım

2.1 Sorunun ifadesi

2.2 Çözüm algoritması

2.3 Yazılım uygulaması

2.4 Program testi

Çözüm

Başvuru

giriiş

Genel mühendislik uygulamasının amacı, öğrencinin eğitim sürecinde edindiği bilgileri pekiştirmek ve genişletmek, gelecekteki meslek hakkında bir fikir edinmektir. Uygulamanın amaçları şunlardır: - konu bloğunun disiplinlerinin derslerinde sunulan teorik materyalin konsolidasyonu;

Windows işletim sistemi ve standart bir ofis paketi ile bilgisayar becerilerinin kazanılması;

Çalışılan programlama dillerinde klasik algoritmaları kullanma, geliştirme ve uygulama yöntemleri hakkında bilgisayar bilimlerindeki temel derslerin çalışılması sırasında elde edilen bilgi ve becerilerin pekiştirilmesi;

Yöntemlerde ustalaşın profesyonel aramaİnternetteki bilgiler;

Uygulama sonuçlarına ilişkin raporların hazırlanması için raporlama, yöntemler ve uygulama ortamlarının gerekliliklerini incelemek;

Ofis ekipmanları ile çalışmak.

Raporun ilk bölümü, IBM DB2 veritabanı yönetim sistemini tartışır: bir DBMS kavramı açıklanır, türleri ve kısa bir açıklaması DBMS IBM DB2.

Raporun ikinci bölümünde, A dizisinin B dizisindeki maksimum elemanını bulmak için bir algoritma ve bir C programı geliştirilmiştir.

1. IBM DB2 veritabanı yönetim sistemi

1.1 Veritabanı yönetim sistemi kavramı

Veritabanı (DB) adlandırılmış koleksiyon DBMS'nin kontrolü altında birbirine bağlı veriler.

Veritabanı yönetim sistemi (DBMS) - bir dizi yazılım ve genel veya dilsel araç özel amaç, veritabanlarının oluşturulması ve kullanımı üzerinde kontrol sağlar.

1.2 DBMS'nin yaratılış tarihi

aktif arama etkinliği kabul edilebilir yollar Sürekli büyüyen bir bilgi hacminin sosyalleşmesi, 60'lı yılların başında "Veritabanı Yönetim Sistemleri" (DBMS) adı verilen özel yazılım sistemlerinin oluşturulmasına yol açtı.

DBMS'nin ana özelliği, yalnızca verilerin kendisini değil, aynı zamanda yapılarının açıklamalarını da girme ve saklama prosedürlerinin varlığıdır. İçlerinde depolanan ve DBMS tarafından kontrol edilen verilerin bir açıklaması ile sağlanan dosyalar, veri bankaları ve ardından "Veritabanı" (DB) olarak adlandırılmaya başlandı.

ES bilgisayar ailesinin bilgisayarlarının üretimi başladığında. Çalışma iki yönde gerçekleştirildi. Her şeyden önce, kendi orijinal yerli DBMS'lerini yaratma girişimleri yapıldı. Aynı zamanda, hızlandırılmış modda, yurt dışında yaygın olarak kullanılan, yerli donanım ve yazılım platformlarında çalışabilen bazı DBMS'lerin analogları geliştirildi. Benzer bir yaklaşım, ES bilgisayar platformunun ortaya çıkmasından sonra ülkede seri üretimi başlayan donanım platformları için bir DBMS oluşturmak için de kullanıldı - SM bilgisayarları, ASVT, IBM uyumlu kişisel bilgisayarlar ve benzeri. .

1.3 IBM DB2 DBMS'nin Tarihçesi

DB2, IBM tarafından üretilen bir ilişkisel veritabanı yönetim sistemleri ailesidir. Bu, teknik uygulama, ölçeklenebilirlik vb. açısından performansta sürekli lider olan "olgun" dünya DBMS'lerinden biridir.

DB2'nin uzun bir geçmişi vardır. SQL kullanan ilk DBMS'dir. 1975'ten 1982'ye kadar, DB2 prototipi IBM'de System Relational veya System R adı altında geliştirildi.

DB2, adını 1982'de VM için SQL/DS adlı ilk ticari sürüm ve ardından MVS için DB2 adlı sürümle aldı.

DB2'nin gelişimi, Dr. E.F. IBM için çalışan Codd, ilişkisel veritabanları teorisini geliştirdi ve Haziran 1970'de bir veri işleme modeli yayınladı. Bu modeli uygulamak için ilişkisel bir veritabanı dili geliştirdi ve buna Alfa adını verdi.

IBM DB2, dünyadaki en yüksek performanslı ve güçlü DBMS'dir. Başlıca benzersiz avantajı, DB2 için yazılmış herhangi bir uygulamanın, DB2 tarafından desteklenen herhangi bir dağıtılmış platformda (Windows, HP-UX, Sun Solaris, Linux, Mac OS X ve AIX®) çalışan DB2 veri sunucularıyla çalışmasıdır.

DB2 çeşitli sürümler ve paketler halinde gelir. DB2'nin tüm sürümleri ve paketleri aynı veritabanı üzerinde oluşturulmuştur. kaynak kodu; yalnızca DB2'nin özelliklerini, işlevlerini ve faydalarını kendi ilgili pazar segmentlerine ve fiyat gruplarına hedefleyen işlevsellik ve lisans koşulları bakımından farklılık gösterirler.

DB2 nesne uzantıları kullanılarak çözülebilen görevlerin kapsamı, klasik ilişkisel yaklaşıma kıyasla önemli ölçüde artırılmıştır. için en gerekli olanı nesne yönelimli modelden ödünç alarak modern uygulamalar DB2, ilişkisel bir DBMS'nin tüm avantajlarını korudu. Bu, kurumsal bilgi sistemlerini temelinde oluştururken hem ilişkisel hem de nesne yönelimli yaklaşımları kullanmayı mümkün kılar.

1.4 DB2 işlevselliği

DB2 işlevselliği:

Çoklu platform.

Gelişmiş Kopyalama Hizmetleri (ACS). DB2 ACS, yedekleme ve geri yükleme işlemlerinde veri kopyalama işi gerçekleştirmek için hızlı depolama kopyalama teknolojisini kullanmanıza olanak tanır. Bir depolama aygıtı kullanarak verileri kopyalama yeteneği, yedekleme ve geri yükleme işlemlerini büyük ölçüde hızlandırır. DB2 ACS kullanan bir yedekleme çağrılır destek olmak anlık görüntü yedeği aracılığıyla.

Çevrimiçi tablo yeniden düzenleme, kullanıcının bir tabloyu kesintiye uğratmadan yeniden düzenlemesine olanak tanır tam erişim Ona.

Yüksek Kullanılabilirlik Olağanüstü Durum Kurtarma (HADR) desteği. DB2 HADR işlevi, DB2 veritabanları için yüksek düzeyde kullanılabilirlik ve yük devretme desteği sağlar.

Materyalleştirilmiş Sorgu Tabloları (materyalleştirilmiş sorgu tabloları), Sorgu Paralelliği (sorgu paralelliği), Çok Boyutlu Kümeleme Tabloları (MDC, çok boyutlu tablo kümeleme) desteği.

Yedekleme sırasında veri sıkıştırma desteği.

SQL çoğaltma desteği.

Veritabanı Bölümleme desteği (veritabanı bölümleme). Bu işlevsellik, tek bir veritabanı görüntüsünü birden çok fiziksel sunucuya dağıtmanıza olanak tanır.

DB2 Metin Arama. DB2 Metin Arama özelliği, DB2 tablolarının metin sütunlarında arama yapmanızı sağlar.

IBM Data Studio, sistemin tamamını kapsayan bir araç platformudur. yaşam döngüsü desteğin daha da genişletilmesi beklentisiyle, tüm IBM ilişkisel VTYS için uygulamalar (tasarım, geliştirme, devreye alma, destek ve yönetim). Bu, yalnızca taşınabilir bir SQL API'sine değil, aynı zamanda kurumsal çapta iş mantığını uygulamanıza olanak tanıyan bir dizi araca da sahip olduğunuz anlamına gelir.

1.5 Kullanıcı tanımlı veri türleri

DB2, kullanıcıya yeni veri türleri tanımlama yeteneği verir. Yeni veri türü, sistem tarafından sağlanan temel türlerden biriyle eşleşmelidir, ancak kendi anlambilimlerini tanımlayabilirler. Aynı zamanda, DB2 bu tür verileri kendileri için tanımlanan mantığa uygun olarak işleyebilir. Bir veri türünde izin verilen işlemler kümesini, temel türden değiştirerek belirleyebilirsiniz.

DB2, güçlü bir yazma mekanizması uygular. Bu durumda, temel sınıf için değil, yalnızca kendisi için tanımlanan işlemler belirsiz türdeki verilere uygulanabilir. Bir VTYS için bu yaklaşım, veri bütünlüğü kontrolü için güçlü bir mekanizma sağlar.

Böylece, "zip kodu" tipini bir tamsayıdan türetilmiş olarak tanımlayabilirsiniz, ancak aynı zamanda bu tür veriler için çarpma ve bölme işlemlerini anlamsız olarak yasaklarken, temel sınıf için bu işlemler geçerlidir.

1.6 Büyük nesneler

DB2/2 ve DB2/6000, kullanıcıya ikili büyük nesneler (BLOBS) ve büyük metin nesneleri (CLOBS) gibi yeni veri türleri sağlar. BLOBS, boyutu iki gigabayta kadar olan her türden veriyi depolamanıza olanak tanır. CLOBS aynı boyut sınırlarına sahiptir, ancak metni tek baytlık veya çift baytlık karakter dizisi olarak depolamak üzere tasarlanmıştır ve belirli bir kod sayfasıyla ilişkilendirilebilir. Bu tür veri türlerinin varlığı, ilişkisel tabloları, başta multimedya olmak üzere geleneksel olmayan türlerdeki verilerle gömmenize olanak tanır. Bu yetenek, modern uygulamalar için giderek daha önemli hale geliyor, örneğin çalışan fotoğraflarının bir İK veritabanında saklanmasına, grafik görüntüler, ses, video, büyük metinler. Aynı zamanda, yüksek performans ve güvenilirlik elde etmenin yanı sıra büyük nesnelerin kullanımıyla ilgili kısıtlamaların kaldırılmasına da büyük önem verilmektedir. Böylece, iki gigabaytlık nesneler içeren ondan fazla alan içeren bir tablo oluşturabilirsiniz.

Büyük nesnelerle çalışırken büyük fırsatlar, yeni veri türleri ve işlevlerin tanımlanmasını sağlar. Bu, elemanına göre bir resim arama olasılığını veya metinleri karşılaştırma işlemini vb. ayarlamayı mümkün kılar.

1.7 Kullanıcı tanımlı işlevler

Kullanıcı tanımlı işlevler, verilerin bir miktar kapsüllenmesini sağlayarak verilerin dahili temsilinin uygulamadan gizlenmesine olanak tanır. Ayrıca, hem temel veriler hem de kullanıcı tanımlı türler üzerinde yeni işlemler tanımlamanıza olanak tanır.

Kullanıcı tanımlı işlevler, ortak olan işlemlere izin vererek kodun yeniden kullanılmasını sağlar. çeşitli uygulamalar, her bir uygulamaya dahil edilmek yerine sunucuda saklanır. Bu işlevleri uygulamak için programlama dilleri kullanılır ve bunların DBMS'de uygulanması için CREATE FUNCTION ifadesi veri tanımlama diline girmiştir. Aslında bu ifade, kullanıcı tanımlı bir işlevi, bu işlev çağrıldığında yürütülen belirli bir programla ilişkilendirir. Verilere doğrudan erişmek yerine kullanıcı tanımlı işlevleri kullanmak, verinin iç yapısını kullanıcıdan gizlemek için kullanılabilecek bir miktar kapsülleme sağlayabilir. Ayrıca, DB2, OODB'de kullanılana benzer, kullanıcı tanımlı işlev adlarının aşırı yüklenmesi için bir mekanizmayı destekler, ancak yöntemler ve nesneler nesne yaklaşımında ilişkilendirildiğinden, işlevlerin belirli veri öğeleriyle ilişkilendirilmesine izin vermez. Kullanıcı tanımlı işlevlere esneklik eklemek, hem DB2 verileri hem de dosyalar gibi diğer veriler üzerinde aynı anda çalışabilme yeteneğidir. e-posta ve diğerleri Kullanıcı tanımlı işlevlerin bir DB2 sunucusuyla etkileşim kurmasının iki yolu vardır. Birincisi, işlevin, maksimum performansa izin veren, ancak sunucu sağlığı ve veri bütünlüğü için potansiyel bir tehdit oluşturan veritabanına doğrudan erişimi olmasıdır. İkinci seçenekte işlev, veri ve DBMS koruması sağlayan ancak performansı düşüren veritabanı sunucusundan ayrı bir işlem olarak çalışır.

Kullanıcı, özelliklerine bağlı olarak görevi için en iyi yaklaşımı seçebilir.

1.8 Tetikleyiciler

Tetikleyiciler, bir tablo güncellendiğinde olduğu gibi, veritabanında belirli olaylar meydana geldiğinde gerçekleştirilen bir dizi işlemi tanımlar.

Tetikleyiciler, nesne yönelimli bir yaklaşımda yöntemlerle (örneğin, giriş değerlerinin doğrulanması) veya bir yapıcı tarafından (yeni bir kayıt oluşturulduğunda değerlerin atanması) gerçekleştirilen işlevleri gerçekleştirmek için kullanılabilir.

Tetikleyicilerin kullanımı, yalnızca yapı ve özellikleri değil, aynı zamanda veritabanında depolanan veri nesnelerinin davranışını da modellemek için verileri "etkin" hale getirmenize olanak tanır.

1.9 İlişkisel genişleticiler

DB2 İlişkisel Genişleticiler, bu yeni özelliklere iyi bir örnektir. Özel veri türleri ve işlevleri tanımlama yeteneğini kullanarak geleneksel olmayan verilerle çalışmak için geniş bir fırsat sağlarlar. Multimedya verilerini depolamak ve bağlantıların bütünlüğünü korumak için - tetikleyiciler.

Şu anda, karmaşık bir görüntüyle çalışmanıza izin veren beş ilişkisel genişletici vardır. metin belgeleri, video, ses ve hatta parmak izleriyle.

1.10 DB2 DBMS'nin kritik analizi

DBMS'nin artılarını ve eksilerini düşünün.

iyi var ücretsiz sürüm;

Ücretsiz sürümün veritabanı boyutunda herhangi bir sınırı yoktur;

Ücretsiz sürümde istek sınırlayıcı yoktur, bu aynı anda onlarca kullanıcıya hizmet vermenizi sağlar;

İyi ücretsiz teknik destek;

PostgreSQL'den farklı olarak, Entrprise iş sektöründe kullanılmasına izin veren üreticiden ücretli destek almak mümkündür;

1C-Enterprise konfigürasyonları ile otomatik mod kilitler PostgreSQL'den daha iyi çalışır (paralellikten bahsediyoruz, kilitlerin kapsamı tablolarda değil satır düzeyindedir);

İyi performans;

Benzersiz olmayan dizinlerle daha az sorun (aslında, sorunu çözmek için veritabanlarını geçici olarak DB2'ye yüklemeniz önerilir);

"1C sunucusu için yeterli bellek yok" gibi durumları daha iyi idare eder;

256 tabloda sınır yoktur, bu da RLS ile çalışırken olasılıkları genişletir.

Az sayıda uzman ve iyi uzmanların yüksek maliyeti;

Küçük yaygınlık;

MS SQL Server'dan farklı olarak 1C, yeni sürümler için "uyarlanmış" sürümler yayınlar;

Veritabanlarının boyutu diğer DBMS'lerden daha büyüktür;

DBMS parametrelerinin "ince" ayarlanmasını gerektirir, sistemin otomatik ayarı vardır, ancak eksiktir;

Bazı mesajlar platform tarafından yanlış işlenebilir, çözüm için hata günlüğünün "seviyesini düşürmek" gereklidir;

1C-CUP uzun istekleri toplar, kilitlerde bekler, ancak kilitlenmeleri toplamaz.

1.11 IBM DB2 sürümlerine genel bakış

editörlerin isimleri

Fırsatlar ve sınırlamalar

IBM DB2 Express-C

IBM DB2 DBMS'nin temel ücretsiz sürümü. Teknik destek sağlanmamaktadır. Şunlar. Sınırlamalar: Maksimum 2 çekirdek ve 1 işlemci, 2 GB RAM kullanır. Çoğaltma ve kümeleme desteği yoktur, garanti ve ek satın alma imkanı yoktur. DBMS'nin yeteneklerini genişletmek için yazılım paketleri. Sürümler, hizmet paketleri olmadan yayımlanır. Desteklenen İşletim Sistemi: Windows ve Windows x64, Linux, Linux x86, Linux x64, Power on Linux, Solaris, Mac OS X. Desteklenen İşletim Sistemi: Windows, Linux (POWER ve x86 sunucuları), Mac OS X ve Solaris x64. Önerilen: finansal kapasitesi sınırlı olan ve 50-70 kullanıcıya kadar IBM'den teknik desteğe ihtiyaç duymayan küçük sağlık tesisleri için.

IBM DB2 Express - C FTL (Sabit Süreli Lisans)

İlk ticari versiyon. Önceki ürüne tamamen benzer, ancak 12 aylık IBM 24x7 teknik destek aboneliği + replikasyon desteği + 2 sunuculu küme desteği + FixPack yayın ve çoklu sürüm desteği ile. Şunlar. Sınırlamalar: Maksimum 2 çekirdek ve 1 işlemci, 2 GB RAM kullanır. Desteklenen İşletim Sistemi: Windows, Linux (POWER ve x86 sunucuları) ve Solaris x64. Önerilen: finansal kapasitesi sınırlı, ancak 50-150 kullanıcıya kadar IBM'den teknik desteğe ihtiyaç duyan küçük ve orta ölçekli sağlık tesisleri için.

IBM DB2 Express Sürümü

IBM DB2'nin ilk sürümü teknik Destek 12 ay boyunca. Şunlar. sınırlar: 4 çekirdeğe kadar ( Intel işlemciler) ve 4 GB'a kadar RAM. Yalnızca 2 işlemcili 2 çekirdekli sunucularda (Intel için) veya daha zayıflarında kullanılabilir. Desteklenen İşletim Sistemi: Windows, Linux (POWER ve x86 sunucuları), AIX, Solaris (SPARC ve x64), HP-UX (yalnızca IA-64) Önerilen: 70-200'e kadar IBM teknik desteğine ihtiyaç duyan küçük ve orta ölçekli hastaneler için.

IBM DB2 Çalışma Grubu Sunucu Sürümü

Sunucu Sürümü, DB2 Express ile aynı işlevleri sağlayan, ancak daha fazla bellek gerektiren daha yüksek iş yükü gereksinimleri için tasarlanmış bir DB2 veri sunucusunu temsil eder. işlem gücü olmadan daha yüksek derecede hazır olma ek ayarlar, ve daha geniş bir platforma özgü dağıtım seçenekleri yelpazesine sahiptir. Şunlar. sınırlamalar: Çeşitli yüksek performanslı çok işlemcili sunucular (Power, Itanium, Ultra SPARC vb. dahil) kullanabilirsiniz, ancak tüm işlemciler için 16 GB'a kadar RAM. Desteklenen İşletim Sistemi: Windows, Linux (POWER, System z ve x86 sunucuları), AIX, Solaris (SPARC ve x64), HP-UX (yalnızca IA-64). Önerilen: 100'den fazla kullanıcıyla IBM'den teknik desteğe ihtiyaç duyan orta ve büyük sağlık tesisleri için.

IBM DB2 Kurumsal Sunucu Sürümü

En büyük kurumlar ve en yüksek performanslı bilgi işlem için. Desteklenen İşletim Sistemi: Windows, Linux (POWER, System z ve System x), AIX, Solaris (SPARC ve x64) ve HP-UX sunucuları (yalnızca DB2 9.5'ten IA-64). Önerilen: büyük sağlık tesisleri ve 1000'den fazla kullanıcıyla IBM'den teknik desteğe ihtiyaç duyan çeşitli sağlık tesisleri ağı için.

1.12 Yeni Nesil DB2

IBM, yirmi yılı aşkın bir süredir veritabanı teknolojisindeki en önemli gelişme olan kod adı Viper olan yeni nesil DB2 9 veritabanı sunucusunu tanıttı.

DB2 9'un piyasaya sürülmesi, geleneksel, statik veritabanı teknolojilerini, müşterilere belgeler, ses ve video gibi her türlü bilgi üzerinde daha fazla kontrol sağlayan etkileşimli, dinamik bir veritabanı sunucusu kavramına dönüştüren beş yıllık bir IBM projesinin sonunu işaret ediyor. dijital imzalı video dosyaları, resimler, Web sayfaları ve XML işlemleri.

Yeni IBM veritabanı sunucusu, biçim, platform veya konumdan bağımsız olarak ilişkisel ve XML verilerinin sorunsuz, paralel hareketini sağlayan bir endüstri ilkidir.

Sekiz ülkeden 750'den fazla yazılım geliştiricisi, SOA ortamlarında bilgi yönetimine odaklanarak tasarlanan ve özelleştirilen Viper veritabanının oluşturulmasına katkıda bulundu.

DB2 9, üç önemli teknolojik gelişme sunar: patentli PureXML teknolojisi, devrim niteliğindeki Venom veri sıkıştırma teknolojisi ve gelişmiş çevrimdışı veri yönetimi. Sektöre yeni benzer bir kombinasyon işlevsellik güvenlik ve olağanüstü durum kurtarma geliştirmeleriyle geliştirilmiş, bilgi taleplerini hızlandıracak ve müşterilere bilgiye sınırsız erişim sağlayacaktır. Ayrıca, DB2'nin yeni sürümü, satıcıların aynı yeteneği sunmadığı geleneksel Oracle ve MySQL veritabanlarında depolanan bilgilere erişim sağlar.

IBM, kurumsal müşteriler, küçük ve orta ölçekli işletmeler (DB2 Express) ve geliştiriciler için (DB2 Express-C) olmak üzere ilk kez DB2'nin üç sürümünü aynı anda yayınlıyor.

IBM Bilgi Yönetimi genel müdürü Ambuj Goyal, "DB2 Viper, veritabanı endüstrisinin rekabet ortamını değiştirmeyi vaat ediyor. Müşterilerimizin talep üzerine bilgilerden yararlanarak işlerini büyütmeleri için söz veriyor."

DB2 9 ön test ve değerlendirme müşterileri ve ortakları son derece olumlu geri bildirimler sağladı. Büyük şirketlere ve KOBİ müşterilerine hizmet veren önde gelen bir ticari mülk kaza sigortası sağlayıcısı olan Zurich Insurance, N.A., erişim elde etmek için DB2 9'u kullanmayı seçti. yeni teknoloji safXML.

"Sigorta endüstrisi, büyük miktarda XML belgesi depolamak için artan bir ihtiyaçla karşı karşıya.

PureXML teknolojisi, özel işlevleri tanımlamada ve eski veritabanlarında depolanan XML verileri üzerinde harici işlemler gerçekleştirmede eşi görülmemiş düzeyde bir esneklik sağlıyor, diyor Zurich Insurance N.A. Kıdemli Veritabanı Yöneticisi James Surber. "Aynı XML belgelerinin farklı sürümlerini farklı yapılara sahip aynı tabloda depolayabilmek, XML yapımız değiştiğinde tüm tabloyu manuel olarak boşaltmak ve yeniden yüklemek için saatler harcamaktan kaçınmamızı sağlayacak."

2. Pratik kısım

2.1 Sorunun ifadesi

İki dizi verilmiştir: n elemandan oluşan A ve m elemandan oluşan B. A dizisinin en büyük öğesinin B dizisinde bulunup bulunmadığını belirleyin.

2.2 Çözüm algoritması

Çözüm algoritmasının şeması 02.16.011.001 çiziminde gösterilmiştir.

1. blokta, A ve B matrislerinin boyutu girilir.

2-11 blokları klavyeden matrisi girmek için kullanılır.

12-23 blokları, orijinal dizileri matris biçiminde görüntülemek için kullanılır.

24-30 blokları, A dizisinin maksimum öğesini bulmak için kullanılır.

31-37 blokları, B dizisindeki A dizisinin maksimum öğesini bulmak için kullanılır.

38-40 numaralı bloklar, sorunun nihai çözümüdür ve A dizisinin maksimum öğesinin B dizisinde olup olmadığını gösterir.

2.3 Yazılım uygulaması

Liste yazılım modülü C programlama dilinde problemin çözümü için ekte verilmiştir.

İlk önce tüm değişkenleri bildirmeniz gerekir:

int A, B, n, m, ben, k, maks, x;

burada A ve B, 100 dizeden oluşan tamsayı dizileridir; n ve m matris satırlarının sayısını depolayan değişkenlerdir; ben ve k - döngü değişkenleri; max - A dizisinin maksimum öğesini depolamak için tamsayı değişkeni; x, B dizisindeki A dizisinin maksimum öğesini bulmak için bir tamsayı değişkenidir.

scanf_s("%d", &n);

scanf_s("%d", &m);)

iken (n>=100, m>=100);

Boyut girişi, girilen verilerin doğruluğunu kontrol etmenizi sağlayan do...while döngüsü kullanılarak gerçekleştirilir. Çünkü Bir dizi için bellek statik olarak tahsis edildiğinden, matris satırlarının sayısı, dizileri bildirirken belirtilen 100'ü geçmemelidir. Hatalı bir giriş durumunda, dizinin boyutunu girmek için tekrar bir bilgi istemi görünecektir.

Dizi öğeleri iç içe dizilerin içine girilir. döngüler için: ilk döngüde i değişir - satır numarası 0'dan n-1'e ve ikinci döngüde k - satır numarası 0'dan m-1'e değişir. İç içe döngülerin her yinelemesinde, dizi öğelerini girmek için bir istem görüntülenir ve dizi öğeleri klavyeden girilir.

için (i=0;i

scanf_s("%d", & A[i]);)

for(k=0;k

printf("Dizi A:");

için (i=0;i

printf("%d", A[i]);

printf("B Dizisi: ");

for(k=0;k

printf("%d", B[k]);

Ardından, max değişkenine dizinin sıfır öğesine eşit bir başlangıç ​​değeri atamanız ve A dizisinin satır öğelerini sıralayarak if ifadesini kullanarak maksimum öğeyi bulmanız gerekir. A dizisinin maksimum elemanını max değerine atarız. A dizisinin maksimum öğesi görüntülenir.

için (i=1;i

eğer (maks

Ardından, x değişkenine 0'a eşit bir başlangıç ​​değeri atamanız ve B dizisinin satır öğelerini sıralayarak if ifadesini kullanarak A dizisinin maksimum öğesini bulmanız gerekir. A dizisinin maksimum öğesi B dizisindeyse, bir onay görüntülenir. B dizisi, A dizisinin maksimum öğesini içermiyorsa, bununla ilgili bir onay görüntülenir.

for(k=0;k

if (B[k]==maks) x=1;

2.4 Program testi

Dizi boyutlarının yanlış girişini gösteren programın bir test örneği, n=105 ve m=3 verileri için Şekil 2.1'de gösterilmiştir.

Şekil 2.1 - Programın bir örneği

Şekil 2.2'de gösterilen program işleminin test örneği, aşağıdaki matrisler için program işlemini gösterir:

Şekil 2.2 - Programın bir örneği

Şekil 2.3 - Programın bir örneği

Çözüm

Genel mühendislik uygulamasının bir sonucu olarak, uygulamalar oluşturmak için verimli ve güvenilir bir platforma sahip olan IBM DB2 DBMS üzerinde çalışıldı. Ürünler dahil 1c. IBM'in bu DBMS'si, farklı donanım ve yazılım platformlarında (Linux ve Windows) çalışan diğer araçlarla da entegre edilebilir - Microsoft Visual Studio, Microsoft Visual Basic, Microsoft Visual C ++, vb.

Raporun pratik kısmında ise B dizisinde A dizisinin maksimum elemanını bulmak için bir algoritma ve program geliştirildi. Test sonuçları programın hem pozitif hem de negatif tamsayılar için çalıştığını gösterdi. Görev eksiksiz tamamlandı.

Kullanılan kaynakların listesi

1. GOST 19.701-90 - Birleşik program belgeleme sistemi - Algoritma, program, veri ve sistem şemaları - Sözleşmeler ve yürütme kuralları

2. Tarih K. İlişkisel DB2 DB2 kılavuzu. - M.: Finans ve istatistik, 1988. - 320 s.

3. Kogalovsky M.R. "Veritabanı teknolojileri ansiklopedisi" / M.R. Kogalovski. - E.: Finans ve istatistik, 2002. - 800 s.

4. Deitel H.M. C / H.M.'de nasıl programlanır Deitel, PJ Deitel. - M.: Binom, 2006. - 1037 s.

5. Raoul F. Chong. DB2 Express 9.7'yi kullanmaya başlama. Moskova, 2010.-269 s.

Başvuru

Program modülü listesi

#include "stdafx.h"

#include "stdio.h"

#include "conio.h"

#include "matematik.h"

int _tmain(int argc, _TCHAR* argv)

int A, B, n,m,i,k,maks,x;

do (printf("Vvedite kol-vo elementler masiva A:\n");

scanf_s("%d", &n);

printf("Vvedite kol-vo elemanlar masiva B:\n");

scanf_s("%d", &m);)

iken (n>=100, m>=100);

için (i=0;i

(printf ("Vvedite elementi masiva A [%d]: ",i+1);

scanf_s("%d", & A[i]);)

for(k=0;k

(printf ("Vvedite elementi masiva B [%d]: ",k+1);

scanf_s("%d",&B[k]);)

printf("Dizi A:");

için (i=0;i

printf("%d", A[i]);

printf("B Dizisi: ");

for(k=0;k

printf("%d", B[k]);

için (i=1;i

eğer (maks

printf ("Maksimal"nij eleman kütle A: %d \n",maks);

for(k=0;k

if (B[k]==maks) x=1;

if (x==1) printf ("Maksimal"nij element masiva A nahoditsia v masif B\n");

else printf("Maksimal"nij eleman kütlesel A ne nahoditsia v masif B\n");

veritabanı kopyalama algoritması

Allbest.ru'da barındırılıyor

Benzer Belgeler

    Otomatikleştirilmiş bir veri bankasının ayrılmaz bir parçası olarak veritabanı yönetim sistemi. Veritabanı yönetim sisteminin yapısı ve işlevleri. Veritabanına erişim yöntemine göre VTYS'nin sınıflandırılması. Veritabanı yönetim sistemlerinde SQL dili, Microsoft DBMS.

    özet, eklendi 11/01/2009

    Veritabanlarının saklanan bilgilerin niteliğine, veri depolama yöntemine ve organizasyonlarının yapısına göre sınıflandırılması. Modern veritabanı yönetim sistemleri ve bunların oluşturulması için programlar: Microsoft Office Access, Cronos Plus, Base Editor, My SQL.

    sunum, eklendi 06/03/2014

    Ekonomide bilgi yönetiminin özellikleri. Bir veri tabanı yönetim sistemi kavramı ve işlevleri, standart bir ilişkisel sorgulama dilinin kullanımı. Veritabanlarını düzenlemek ve onlarla çalışmak için araçlar. Ekonomide veri tabanı yönetim sistemleri.

    test, 16.11.2010 eklendi

    Veri dizilerini işlemek için algoritmalar. Veritabanı Yönetim sistemi. İlişkisel veri modeli. Bilgilerin tablo şeklinde sunumu. İlişkisel veritabanı yönetim sistemi. Grafiksel çoklu pencere arayüzü.

    kontrol çalışması, eklendi 01/07/2007

    Harici depolama aygıtları. Veritabanı Yönetim sistemi. Veritabanları oluşturun, bakımını yapın ve birçok kullanıcıyla paylaşın. Bir programlama sistemi kavramı. Veri erişim sayfaları. Makrolar ve modüller. Tekel çalışma modu.

    özet, eklendi 01/10/2011

    Veritabanı yönetim sisteminin ana sınıflandırma özellikleri. Veri modeli, programın türü ve kullanımının doğası. Profesyonel geliştiriciler için programlama araçları. Bilgisayar ağlarında veri işleme merkezlerinin organizasyonu.

    sunum, eklendi 10/14/2013

    Veritabanı yönetim sisteminin kavramı ve amacı, yapım ilkeleri ve iç yapısı, işlevsel özellikleri ve yetenekleri, verimliliği değerlendirme kriterleri. Dil ve yazılım. SQL, türleri ve veri modellerini kullanma.

    sunum, eklendi 03/18/2015

    Access veritabanı yönetim sisteminin nesneleri. İstekler, formlar, raporlar. Veri türleri: metin, not alanı, sayısal. OLE nesne alanı, köprü, arama sihirbazı. Veritabanı nesneleri oluşturmanın manuel, otomatik ve otomatik araçları.

    sunum, 31/10/2016 eklendi

    Bilgi sistemlerinin ayrılmaz bir parçası olarak veritabanları. Bilgi ve veri kavramları arasındaki ilişkinin incelenmesi. Veritabanı Yönetim sistemi. Yapılandırılmış veri örneği. Mantıksal bağımsızlığın sağlanması. İşletim sistemi güvenliği.

    test, 15.06.2009 eklendi

    Verilerin depolanması ve işlenmesi. Veritabanı sistem bileşenleri. Verilerin fiziksel yapısı. MS Access'te tablo oluşturma. Veri yükleme, veritabanı sorguları. MS Access veritabanı yönetim sistemi kullanılarak bir bilgi sisteminin geliştirilmesi.

giriiş

Genel mühendislik uygulamasının amacı, öğrencinin eğitim sürecinde edindiği bilgileri pekiştirmek ve genişletmek, gelecekteki meslek hakkında bir fikir edinmektir. Uygulamanın amaçları şunlardır: - konu bloğunun disiplinlerinin derslerinde sunulan teorik materyalin konsolidasyonu;

Windows işletim sistemi ve standart bir ofis paketi ile bilgisayar becerilerinin kazanılması;

Çalışılan programlama dillerinde klasik algoritmaları kullanma, geliştirme ve uygulama yöntemleri hakkında bilgisayar bilimlerindeki temel derslerin çalışılması sırasında elde edilen bilgi ve becerilerin pekiştirilmesi;

İnternette bilgi için profesyonel arama yöntemlerine hakim olmak;

Uygulama sonuçlarına ilişkin raporların hazırlanması için raporlama, yöntemler ve uygulama ortamlarının gerekliliklerini incelemek;

Ofis ekipmanları ile çalışmak.

Raporun ilk bölümünde, IBM DB2 veritabanı yönetim sistemi ele alınmaktadır: DBMS kavramı açıklanmakta, IBM DB2 DBMS'nin türleri ve kısa bir açıklaması verilmektedir.

Raporun ikinci bölümünde, A dizisinin B dizisindeki maksimum elemanını bulmak için bir algoritma ve bir C programı geliştirilmiştir.

IBM DB2 veritabanı yönetim sistemi

Bir veritabanı yönetim sistemi kavramı

Bir veritabanı (DB), bir DBMS tarafından yönetilen birbiriyle ilişkili verilerin adlandırılmış bir koleksiyonudur.

Veritabanı yönetim sistemi (DBMS) - veritabanlarının oluşturulmasını ve kullanımını yöneten genel veya özel amaçlar için bir dizi yazılım ve dil aracı.

DBMS'nin yaratılış tarihi

Sürekli artan bilgi hacmini sosyalleştirmenin kabul edilebilir yollarını bulmaya yönelik yoğun faaliyetler, 60'ların başında "Veritabanı Yönetim Sistemleri" (DBMS) adı verilen özel yazılım sistemlerinin oluşturulmasına yol açtı.

DBMS'nin ana özelliği, yalnızca verilerin kendisini değil, aynı zamanda yapılarının açıklamalarını da girme ve saklama prosedürlerinin varlığıdır. İçlerinde depolanan ve DBMS tarafından kontrol edilen verilerin bir açıklaması ile sağlanan dosyalar, veri bankaları ve ardından "Veritabanı" (DB) olarak adlandırılmaya başlandı.

ES bilgisayar ailesinin bilgisayarlarının üretimi başladığında. Çalışma iki yönde gerçekleştirildi. Her şeyden önce, kendi orijinal yerli DBMS'lerini yaratma girişimleri yapıldı. Aynı zamanda, hızlandırılmış modda, yurt dışında yaygın olarak kullanılan, yerli donanım ve yazılım platformlarında çalışabilen bazı DBMS'lerin analogları geliştirildi. Benzer bir yaklaşım, ES bilgisayar platformunun ortaya çıkmasından sonra ülkede seri üretimi başlayan donanım platformları için bir DBMS oluşturmak için de kullanıldı - SM bilgisayarları, ASVT, IBM uyumlu kişisel bilgisayarlar vb. .

IBM DB2 DBMS'nin oluşturulma tarihi

DB2, IBM tarafından üretilen bir ilişkisel veritabanı yönetim sistemleri ailesidir. Bu, teknik uygulama, ölçeklenebilirlik vb. açısından performansta sürekli lider olan "olgun" dünya DBMS'lerinden biridir.

DB2'nin uzun bir geçmişi vardır. SQL kullanan ilk DBMS'dir. 1975'ten 1982'ye kadar, DB2 prototipi IBM'de System Relational veya System R adı altında geliştirildi.

DB2, adını 1982'de VM için SQL/DS adlı ilk ticari sürüm ve ardından MVS için DB2 adlı sürümle aldı.

DB2'nin gelişimi, Dr. E.F. IBM için çalışan Codd, ilişkisel veritabanları teorisini geliştirdi ve Haziran 1970'de bir veri işleme modeli yayınladı. Bu modeli uygulamak için ilişkisel bir veritabanı dili geliştirdi ve buna Alfa adını verdi.

IBM DB2, dünyadaki en yüksek performanslı ve güçlü DBMS'dir. Başlıca benzersiz avantajı, DB2 için yazılmış herhangi bir uygulamanın, DB2 tarafından desteklenen herhangi bir dağıtılmış platformda (Windows, HP-UX, Sun Solaris, Linux, Mac OS X ve AIX®) çalışan DB2 veri sunucularıyla çalışmasıdır.

DB2 çeşitli sürümler ve paketler halinde gelir. DB2'nin tüm sürümleri ve paketleri aynı kaynak kodu temelinde oluşturulmuştur; yalnızca DB2'nin özelliklerini, işlevlerini ve faydalarını kendi ilgili pazar segmentlerine ve fiyat gruplarına hedefleyen işlevsellik ve lisans koşulları bakımından farklılık gösterirler.

DB2 nesne uzantıları kullanılarak çözülebilen görevlerin kapsamı, klasik ilişkisel yaklaşıma kıyasla önemli ölçüde artırılmıştır. DB2, modern uygulamalar için en gerekli öğeleri nesne yönelimli modelden ödünç alarak, ilişkisel bir DBMS'nin tüm avantajlarını elinde tutmuştur. Bu, kurumsal bilgi sistemlerini temelinde oluştururken hem ilişkisel hem de nesne yönelimli yaklaşımları kullanmayı mümkün kılar.

IBM DB2 DBMS, IBM'in yaklaşık 30 yıllık araştırma ve geliştirme çalışmasının sonucudur. Bu DBMS'nin (6.x) en son sürümü, en ayrıntılı yönetim ve optimizasyon araçlarından birine ve bir Windows 95 dizüstü bilgisayardan OS/390 çalıştıran tam bir S/390 anabilgisayar kümesine kadar büyüyebilen bir veritabanı motoruna sahiptir.

DB2 paketi iki sürüm halinde gelir: DB2 Workgroup ve DB2 Enterprise Edition. Bu DBMS, paralel sorgu işleme, tam eşleme araçları seti, veritabanı performansını geliştirmek için sorgu özet tabloları, nesne yönelimli veritabanı tasarım özellikleri ve Java dili özellikleri gibi DB2'nin önceki sürümlerinden bilinen tüm yenilikçi veritabanı motoru teknolojilerini uygular. Ayrıca, DB2 sistemi, metin, ses ve video parçalarını, görüntüleri ve coğrafi verileri kaydetmenize ve değiştirmenize olanak tanıyan eksiksiz bir multimedya uzantıları seti ile donatılmıştır. Ölçeklenebilirlik açısından IBM uzmanları tarafından geliştirilen veritabanı kümeleme teknolojisinin bir benzerinin olmadığını söyleyebiliriz. Bu uzantılar, Web için uygulamaların yanı sıra fotoğrafik görüntüler ve hacimli metin raporları içeren programlar geliştirme sürecini büyük ölçüde kolaylaştırır. SQL deyimini otomatik olarak uygun Java sınıfına dönüştüren ve bunu veritabanı yapısına dahil eden bir Saklı Yordam Oluşturucu aracı bulunduğundan, DB2 sistemi uygulama geliştirme platformu olarak da oldukça rekabetçidir. DB2 6.1'de, Microsoft'un yeni bir veritabanı erişim standardı olan OLE DB belirtiminin kullanılmasına izin verilerek diğer DBMS'lerle birlikte çalışabilirlik büyük ölçüde geliştirildi. Yeni sürümde Java ile yeniden yazılan ve Web'den edinilebilen DB2 yönetim araçları en büyük övgüyü hak ediyor.

Bu DBMS'nin ana dezavantajları, yönetimin göreceli karmaşıklığı ve LINUX gibi popüler sunucu işletim sistemleri için (henüz) uygulamaların eksikliğidir.

Bu DBMS'de, Index Smart-Guide sayesinde, veri tabanındaki tipik yükü karakterize eden belirli bir erişim sayısı için optimal indeksler oluşturarak ayarlama yapmak mümkündür. DB2, veri ambarları olarak DBMS'nin verimliliğini önemli ölçüde artıran özet tablolar oluşturmanıza olanak tanıyan tek pakettir. PivotTable, veritabanı tarafından sık sorulan sorgulara verilen yanıtları depolamak için kullanılan geçici bir çalışma alanıdır. Eh, yeni işlevselliğin yanı sıra paralelleştirme ve hemen hemen her tür birleştirme ve dizin seçme yeteneği ile (belki raster dizinler hariç), DB2 6.1 modelinin en ucuz yüksek performanslı sistemlere dönüştüğü söylenebilir. Bu VTYS'nin yönetim araçları, çözülmekte olan görevlerin düzeyi için oldukça uygundur, buna ek olarak, multimedya verileriyle çalışmak ve programlama için (Microsoft SQL Server'da açıkça eksik olan) olağanüstü geniş fırsatlar sunar.

Informix'ten DBMS.

Son zamanlarda, ilişkisel DBMS'den nesne yönelimli olanlara (Oracle örneğinde açıkça görülmektedir) bir geçiş olmuştur. Informix ayrıca bu konsepti takip ederek, Informix Dynamic Server 7.3 ilişkisel veritabanına ve Informix Universal Data Option nesne-ilişkisel veritabanına dayanan ve verilerle çalışırken Dynamic Server'ın yüksek performansını Universal'ın evrenselliği ve multimedya işlevleriyle birleştiren yeni bir Centaur DBMS çözümünü duyurdu. Veri Seçeneği. Bu uygulama, İnternet sistemlerinin geliştirilmesine yöneliktir. Bu VTYS'nin, İnternet'in özelliği olan yoğun iş yükleriyle eşleşecek ölçeklenebilirliğe sahip esnek bir geliştirme ortamına ve Web'in gelişmesiyle her yerde yaygın hale gelen yeni veri türleri ile çalışmak için araçlara sahip olması beklenmektedir. Yeni sistemde uygulanan Java özellikleri, geliştiricilerin Informix'in özel veritabanı uzantıları olarak adlandırdığı bu dilde saklı yordamlar, kullanıcı programları ve DataBlades bileşenleri oluşturmasına olanak tanıyacak.

Inforix müşterileri açısından, bu ileriye doğru atılmış büyük bir adım çünkü şimdiye kadar DataBlades ile çalışırken, saklı yordamlar yazmak için Informix'in dahili dili olan C ve SPL'yi kullanabiliyorlardı. Ayrıca Centaur paketi, yerleşik ActiveX nesne işleme ile birlikte gelir. Bu, örneğin, Visual Basic dilinde veritabanı saklı yordamları oluşturmayı mümkün kılacaktır; ancak bu, Centaur paketinin bir Windows NT ortamında çalışmasını gerektirir.

Centaur, Informix Dynamic Server'a bir eklenti olacak ve bu paket için geleneksel veritabanı formatı ile çalışacak, böylece kullanıcılar tüm eski fonksiyonlara sahip olacak ve sistemi yeni sürüme yükseltmek çok zor olmayacak. Ayrıca Centaur paketi, Informix Universal Server sistemini olağanüstü bir mühendislik başarısı yapan tüm tasarım ve programlama yeteneklerini koruyacaktır. Yeni sistem, nesneye dayalı veritabanı tasarımı, özel tabloların oluşturulması ve indeksleme programları için olanaklarla donatılacak; kullanıcıların yalnızca standart SQL araçlarına dayanmak yerine sorgulara kendi işlevlerini yerleştirmelerine olanak tanır.

Sonuçlar.

Gelecekte AIS mimarisi, sunucu işletim sistemleri ve DBMS oluşturmak için mimarilerin temel özelliklerini göz önünde bulundurarak, Linux sunucu işletim sistemi olarak Internet / Intranet mimarisini Oracle 8i DBMS olarak seçeceğiz. Özet tablosu, bugün Microsoft SQL Server 7.0 (NT'de) ve Oracle8i'yi (Unix, Linux'ta) temel alan en yaygın iki çözümün karşılaştırmalı özelliklerini sunar.

Microsoft SQL Sunucusu 7.0

İdari yönetim

Grafik araçları

Bakım kolaylığı

Veri motoru

Birden fazla CPU ile çalışma

Kabul edilebilir

Birleştirme işlevi ve dizin seçimi

Birden fazla kullanıcı tarafından eşzamanlı erişim

Multimedya veri işleme

Web'e bağlanma

Ses, video, görüntü işleme

Bu metinde ara

birlikte çalışabilirlik

Kabul edilebilir

Diğer veritabanlarıyla arayüz oluşturma

tek seferlik

Çeşitli işletim sistemleri altında çalışın

Kabul edilebilir

Programlama seçenekleri

Kabul edilebilir

Saklı yordamlar ve tetikleyiciler

Dahili programlama dili

Veritabanı oluşturma

Nesne Yönelimli Sistemler

Şubelerle çalışmak

çoğaltma

Dağıtılmış işlem işleme

Uzaktan yönetim

Veri ambarlarının organizasyonu ve raporların hazırlanması

Yükleme Araçları

Analiz araçları