Dizin Sıralı Erişim Yöntemi

Dizin Sıralı Erişim Yöntemi ( ISAM ), hem (sıralı) sıralı hem de rasgele ( rasgele ) dizin tabanlı erişime izin veren bir dosyadaki veri kayıtları için 1960'ların sonunda IBM tarafından geliştirilen bir erişim yöntemidir .

Bir dosyanın birkaç farklı dizini olabilir. Her bir indeks , hangi bilgilerin arandığına bağlı olarak kayıtların farklı bir sırasını tanımlar . Örneğin, bir müşteri dosyası, ilgili indekslerin mevcut olması koşuluyla, soyadına göre alfabetik olarak veya posta koduna göre sayısal olarak sıralanabilir.

Veritabanı sistemlerinde de kullanılan dizin sıralı erişim yöntemi, göreve bağlı olarak erişim hızının optimize edilmesini sağlar. 1970'lerdeki ilk COBOL standartlarından bu yana ISAM, dosya kontrol paragrafında COBOL dilinin standardının bir parçası olmuştur. Yine IBM'den, ancak standartlaştırılmamış ISAM'ın çok erken bir ileri gelişimi, Sanal Depolama Erişim Yöntemi'dir (VSAM).

Depolama yapısı

Image
Dizin sıralı dosya organizasyonu: Tek seviyeli dizin

Veri kayıtları blokları veya sayfalar gruplandırılmıştır. Basit bir indeks , artan sırada sıralanan ana dosyadaki bir veri bloğunun en düşük anahtarını ifade eder . Basit, tek seviyeli bir dizin dosyası, ana dosyadaki veri bloklarına atıfta bulunan dizin girişlerinden oluşur. Kural olarak, dizin çok düzeylidir ve dizin düzeyleri yine dizine sırayla düzenlenir.

  • Arama bir ISAM dosyasında: bulunamayacağı ya da indeks Aradığınız anahtarının daha büyüktür kadar dizini dosyasında sırayla anahtarı ara. İkinci durumda, çok seviyeli bir indeksle, aranan anahtarın hangi indeks sayfasında olabileceği artık biliniyor. Arama işlemi, anahtar bulunana veya bulunmayana kadar orada devam eder.
  • Ekle : Önce arayın , ardından yeni cümlenin sayfaya uyup uymadığını kontrol edin. Evetse, sıralı ekleyin, yoksa sonraki sayfaya veya taşma sayfasına yeni kayıt ekleyin ve dizin sayfalarını güncelleyin.
  • Sil : Önce arayın , ardından cümleyi silinmiş olarak işaretleyin. Sayfadaki ilk cümleyse veya sayfa şimdi boşsa, dizin sayfalarını ayarlayın.

ISAM dosya organizasyonunun bir dezavantajı, ekleme ve silme işlemlerinden görülebilir. Ana dosya ve dizin statiktir, yeni kayıtlar genellikle taşma bloklarında depolanır ve bu, aramaları yavaşlatır. Hızla büyüyen veya değişen dosyalar bu nedenle düzenli olarak yeniden düzenlenmelidir ve bu da zaman alıcıdır.

Yöntem 2

Yukarıdaki yöntem çok uzun süredir kullanılmıyor. Ardıllık, ağaç / yaprak yapısı temelli bir yöntemdi. Bu, aranan cümlenin nerede eklenmesi veya eklenmesi gerektiğini birkaç karşılaştırmayla belirlemeyi mümkün kıldı.

Isam dosyasının anahtarının yapısı (dizin).

 *****************************************************************
 *   BLATT-NR                  *                 VATER           *
 *****************************************************************
 *                                                               *
 *                  BLATTINHALT (KEY)                            *
 *                                                               *
 *****************************************************************
 *   LINKER SOHN               *             RECHTER SOHN        *
 *****************************************************************

Dosyanın başındaki ilk giriş ( kök ).

Örnek COBOL

Image
Çerçeveli dosya kontrol paragrafı

Resmi bir ISAM dosyası modern dosya kontrolü bölümünü gösterir COBOL - derleyici :

  • SEÇ ... ATA: Harici dosya adının dahili dosya adına atanması
  • SIKIŞTIRMALI | ŞİFRELEME İLE: isteğe bağlı olarak sıkıştırma veya şifreleme ile
  • ORGANİZASYON ENDEKSLİ
  • ERİŞİM MODU SIRALI | RASTGELE | DİNAMİK: alternatif olarak üç erişim yönteminden biri. Sırayla, dizine göre veya her ikisi birden, yani H. kez, bu başlangıç ​​noktasından sırayla ve tam tersi.
  • KAYIT ANAHTARI, anahtar-adıdır [= segment-adı ...] [[[HAYIR] ÇİFTLERLE]] ...: (birincil) anahtar birkaç bölümden oluşabilir, i. H. veri kaydının ayrı alanları, yinelenen anahtarlara izin verilebilir. Yalnızca bölümleri (kısmi) dizin olarak kullanılabilen alanlar - COBOL'de her zamanki gibi - DOSYA AÇIKLAMASI'nda tanımlanacaktır.
  • ALTERNATER RECORD KEY IS ...: daha fazla indeks tanımlanabilir.
  • KİLİT MODU ÖZELDİR | OTOMATİK | MANUEL ...:
  • {Sayı} ALTERNATİF ALANI REZERVASYON YAPIN:
  • HARMAN DİZİSİ alfabe adıdır:

ISAM bugün

"ISAM dosyaları bugün hala kullanılmaktadır, yani ilişkisel bir veritabanının kullanımının gerçekten değerli olmadığı zamanlarda (veri hacmi, yapı, performans, maliyetler, vb.)" Muhtemelen hala ISAM dosyalarında, ilişkisel veritabanlarından daha fazla veri depolanmaktadır. Bu sadece COBOL ortamlarından gelen verilerle ilgili değil, özellikle UNIX altında , dizin sıralı erişim yöntemi, Informix tarafından C-ISAM uygulaması sayesinde ana bilgisayardan UNIX sistemlerine geçişte yaygın kullanım bulmuştur. ISAM'a dayalı olarak , yaygın olarak kullanılan MySQL veritabanı yönetim sisteminde uygulanan MyISAM veritabanı sistemi de geliştirildi . Ek olarak, Microsoft'un Genişletilebilir Depolama Motoru (ESE, Jet Blue olarak da bilinir ) ISAM'a dayanmaktadır. ESE, (e) z'ye hizmet eder. B. Microsoft Active Directory ve Exchange için bir veritabanı olarak .

İnternet linkleri