Sıralı Erişimli Dosyalar. Kütük Organizasyonu 1



Benzer belgeler
DOSYA ORGANİZASYONU. Sıralı erişimli dosya organizasyonu yöntemleri ÖZLEM AYDIN TRAKYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

Veri ve Dosya Yapıları. Kütük Organizasyonu 1

Dosyalarda Farklı Yaklaşımlar. Kütük Organizasyonu 1

Fiziksel Tasarım Konuları. Dosya Organizasyon Teknikleri Kayıt Erişim Yöntemleri Veri Yapıları

Ağaç Yapıları (Tree Structures) Kütük Organizasyonu 1

Indeksli Sıralı Erişimli Dosya Yapıları (Indexed Sequential File Organization) ve. Bit Seviyesinde İşlemler (Bit Level and Related Structures)

Dosya Saklama Ortamları (Sabit Diskler) Kütük Organizasyonu 1

Konular. Sequential File Organization. Direct File Organization #$% &'#(# Binary Search Interpolation Search Self-Organizing Sequential Search

Fiziksel Veritabanı Modelleme

Dosya Sıkıştırma (File Compression) Kütük Organizasyonu 1

1 Temel Kavramlar. Veritabanı 1

DOSYA ORGANİZASYONU. Giriş ÖZLEM AYDIN TRAKYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

DOSYA ORGANİZASYONU. Çarpışma çözümleme yöntemleri ÖZLEM AYDIN TRAKYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

Temel Dosya İşlemleri. Kütük Organizasyonu 1

VERİ KAYNAKLARI. Bilgi sisteminin öğelerinden biride veri

10-Veri Tabanları.

Algoritmalar. Arama Problemi ve Analizi. Bahar 2016 Doç. Dr. Suat Özdemir 1

ENF102 TEMEL BİLGİSAYAR BİLİMLERİ VE C/ C++ PROGRAMLAMA DİLİ. Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü

#$% &'#(# Konular. Binary Tree Structures. Binary Search Trees AVL Trees Internal Path Reduction Trees Deerlendirme

Yrd. Doç. Dr. Caner ÖZCAN

Hesaplanabilen Zincirler (Computed Chaining) Kütük Organizasyonu 1

#$% &'#(# Konular. Direct File Organization. Computed Chaining Comparison of Collision Resolution Methods Perfect Hashing Cichelli s Algorithm

DOSYA ORGANİZASYONU. Doğrudan erişimli dosya organizasyonu ÖZLEM AYDIN TRAKYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

Veri Tabanı Hafta Dersi

#$% &'#(# Konular. Bits of Information. Binary Özellikler Superimposed Coding Signature Formation Deerlendirme

Çakışmalar ve Çakışmaların Statik Yaklaşımlarla Çözülmesi. Kütük Organizasyonu 1

1 Temel Kavramlar. Veritabanı 1

BM-311 Bilgisayar Mimarisi

VERİ YAPILARI VE PROGRAMLAMA

BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015

Veriyi ve Bilgiyi Organize Etmek. Bilgisayar Mühendisliğine Giriş 1

Kayıt Tipi ve MARC. MARC kaydı nedir?

Veritabanı Yönetim Sistemleri, 2. basım Zehra ALAKOÇ BURMA, 2009, Seçkin Yayıncılık

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-8 Dosya İşlemleri-1. Yrd. Doç. Dr. Ümit ATİLA

DOSYA ORGANİZASYONU. Giriş ÖZLEM AYDIN TRAKYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

Dosya Saklama Ortamları (Devam) Kütük Organizasyonu 1

VERİTABANI ORGANİZASYONU

1. VERİ TABANI KAVRAMLARI VE VERİ TABANI OLUŞTUMA

UZAKTAN EĞİTİM MERKEZİ

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

Eln 1002 Bilgisayar Programlama II

Arama metodlarında temel işlem anahtarları karşılaştırmaktır.

BMB204. Veri Yapıları Ders 9. B+ Ağacı, Hash, Heap. Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

ALGORİTMA VE PROGRAMLAMA II

Özyineleme (Recursion)

Sanal Bellek (Virtual Memory)

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

KISITLAMALAR (CONSTRAINT)

VERİ YAPILARI LİSTELER. Yrd. Doç. Dr. Murat GÖK Bilgisayar Mühendisliği Bölümü YALOVA ÜNİVERSİTESİ

BMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

William Stallings Computer Organization and Architecture 9 th Edition

GİRİŞ/ÇIKIŞ VE TANIMLAMA DEYİMLERİ

Yrd. Doç. Dr. Caner ÖZCAN

BÖLÜM III: Şebeke Modelleri. Şebeke Kavramları. Şebeke Kavramları. Şebeke Kavramları. Yönlü Şebeke (Directed Network) Dal / ok

DOSYA ORGANİZASYONU. Ağaç Yapıları ÖZLEM AYDIN TRAKYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

ALGORİTMA VE PROGRAMLAMA I

Dosya Sıkıştırma (File Compression) Kütük Organizasyonu 1

Dosyaların Özellikleri (Attribute) Dosya İşlemleri. İki Seviyeli Katalog Sistemleri. Tek Seviyeli Katalog Sistemleri. Hiyerarşik Katalog Sistemleri

Programlama Dilleri 1. Ders 4: Diziler

DİSK DEPOLAMA ALANLARI

Algoritmalar ve Programlama. Algoritma

Bilgilerin Uzun Vadeli Saklanması

BİL-142 Bilgisayar Programlama II

YZM VERİ YAPILARI DERS#9: HASH FONKSİYONLARI

BİLGİSAYAR MİMARİSİ-II İÇERİK ADRESLEMELİ BELLEK

BIP116-H14-1 BTP104-H014-1

BÖLÜM 6. ÇEŞİTLİ KONULARDA ALGORİTMA VE AKIŞ ŞEMALARI

Veritabanı Yönetimi Bilgisayarların. Keşfi Hedefler. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi

ALGORİTMA VE PROGRAMLAMA I

#$% &'#(# Konular. Direct File Organization. Progressive Overflow Buckets Linear Quotient Brent s Method Binary Tree

Visual Basic 6.0. Anadolu Üniversitesi Endüstri Mühendisliği Bölümü. Dosyalama İşlemleri. Ders Notları

Çanakkale Onsekiz Mart Üniversitesi. Bilgisayar Mühendisliği Bölümü

DOSYA NEDİR? Verilerin HDD de saklanması. Verilerin HDD de saklanması DOSYA SİSTEMİ NEDİR?

Dosya, disk üzerinde depolanmış verilerin bütününe verilen isimdir. İşletim sistemi genel olarak iki çeşit dosya içerir.

BIL222 Veri Yapıları ve Algoritmalar

Ardışıl Devre Sentezi (Sequential Circuit Design)

Örnek Excel Formatını Nereden Bulabilirim?

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Algoritma ve Akış Diyagramları

Bilgisayarların Gelişimi

Alıştırma 1: Yineleme

Endüstri Mühendisliği Bölümü Bilgisayar Programlama Ders Notları

SAYI VE KODLAMA SİSTEMLERİ. Teknoloji Fakültesi/Bilgisayar Mühendisliği

ALGORİTMA VE PROGRAMLAMA II

Access e Nasıl Ulaşılır. Araç çubuklarını yeniden düzenlemek için Görünüm komutunun Araç çubukları seçeneği kullanılır.

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

Bölüm 8: Ana Bellek. Operating System Concepts with Java 8 th Edition

B-Tree Dosya Sistemi (BTRFS)

3. Bölüm Algoritmalar

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN

BİL Bilişim Teknolojileri. Access

İLİŞKİSEL VERİTABANLARI

Yrd. Doç. Dr. Ümit ATİLA

BİLGİ GÜVENLİĞİ. Bu bolümde;

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-7 Sıralama Algoritmaları

Temel Bilgisayar Programlama Final Sınavı Çalışma Notları

Ders 4: Diziler (Arrays( Arrays) barisgokce.com

YZM 2116 Veri Yapıları

Transkript:

Sıralı Erişimli Dosyalar Kütük Organizasyonu 1

Dosya Fiziksel depolama ortamlarında verilerin saklandığı mantıksal yapılara dosya denir. Dosyalar iki şekilde görülebilir. Byte dizisi şeklinde veya Alanlar içeren kayıtların bir arada bulunması şeklinde Dosyaların byte dizisi şeklindeki yapısı Bu yaklaşımda verilerin anlamı kaybolur ve bunları geriye getirmek için (yeniden ayırmak için) yol yoktur. Kütük Organizasyonu 2

Alan, Kayıt Organizasyonu Kayıt (Record): İlişkili alanların biraraya gelmesiyle oluşan yapıdır. Alan (Field): Bir dosya içindeki mantıksal anlamı olan en küçük birimdir. Anahtar (Key): Bir kayıt içinde bulunan ve kaydı tekil (eşsiz) olarak tanımlayan, belirten alanlar kümesidir. Örn: T.C kimlik no, ISBN no,tel no vb... Kütük Organizasyonu 3

Anahtarlar Birincil Anahtar (Primary Key): Bir kaydı tekil olarak tanımlayan anahtara birincil anahtar denir. İkincil Anahtar (Secondary Key): Arama için kulanılabilecek diğer anahtarlardır. Örn: Yazar adı, kitap adı veya yazar adı + kitap adı Anahtarlar alanlara karşılık gelir, bazı anahtarlar özel olarak dikkate alınırlar, bazen ise birden fazla alanın kombinasyonu da anahtar gibi düşünülüp aramalarda kullanılabilir. Kütük Organizasyonu 4

(Record) Birincil Anahtar(Primary Key) Alan(Field) Kayıt Kütük Organizasyonu 5

deneme.txt Record ISBN numarası, yazar adı ve eser adını içeren 3 farklı alan. Kütük Organizasyonu 6

Alan Yapıları Alan yapılarını 5 kategoride incelemek mümkündür. Sabit Uzunluklu Alanlar (Fixed Length) Uzun Göstergesi ile Başlayan Alanlar (Begin Each Field with Its Length Indicator) Her Birinin Sonunda Sınırlayıcıların Bulunduğu Yapılar (Delimiters to Seperate Fields) Anahtar Kelime=Değeri (Keyword=Content) Şeklinde Depolanan Alanlar Kütük Organizasyonu 7

Sabit Uzunluklu Alanlar (Fixed Length Fields) Kütük Organizasyonu 8

Uzunluk Göstergesi ile Başlayan Alanlar (Begin Each Field with Its Length Indicator) Kütük Organizasyonu 9

Her Birinin Sonunda Sınırlayıcıların Bulunduğu Yapılar (Delimiters to Seperate Fields) Kütük Organizasyonu 10

Anahtar=Kelime Değeri (Keyword=Contet) Şeklinde Depolanan Yapılar Kütük Organizasyonu 11

Özet TÜR Avantaj Dezavantaj Sabit Uzunluklu Okuma/Yazma Kolay Uzunluk Göstergeli Sınırlayıcılı Anahtar Kelimeli Bir sonraki alana sıçramak kolay Uzunluk göstergeliden daha az boş alan kullanılır Alanlar kendilerini açıklarlar, kayıtta eksik alanlar olabilir. Boşluklarla doldurulan ve işe yaramayan alan Büyük alanlar, uzunluk bilgisi için 1 byte tan fazla yer gerektirir. Alandaki tüm karakterlerin teker teker kontrol edilmesi gerekir. Anahtar kelimelerle boşa alan kaybedilir. Kütük Organizasyonu 12

Kayıt Yapıları Sabit Uzunluklu Kayıtlar Sabit Sayıda Yer İçeren Kayıtlar Uzunluk Göstergesi ile Başlayan Kayıtlar Adresleri İzleyen Bir Indexin Kullanımı Sonunda Sonlandırıcı(Sınırlayıcı) nın Bulunduğu Kayıtlar Kütük Organizasyonu 13

Sabit Uzunluklu Kayıtlar İki farklı şekilde yapılabilir. i) Sabit Uzunluklu Alanlar İçeren Sabit Uzunluklu Kayıt 203572 Alan Tharp File Organizaion 062833 John White File Organization ii) Değişken Uzunluklu Alanlar İçeren Sabit Uzunluklu Kayıt 203572 062833 Alan Tharp File Organization Micheal John White File Organization Kullanılmayan Alan Kütük Organizasyonu 14

Değişken Uzunluklu Kayıtlar i) Sabit Sayıda Alan İçeren Kayıtlar 203572 Alan Tharp File Organizaion 062833 John White File Organization ii) Uzunluk Göstergesi ile Başlayan Kayıtlar 33203572 Alan Tharp File Organizaion 35 062833 John Fisher File Organization iii) Adresleri İzleyen Bir Indexin Kullanımı Index dosyası her bir kaydın dosya içindeki başlangıç adresini tutar. Kayıtların başlangıcını bulmak için bu index üzerinde arama yapılır. Genellikle index sabit uzunlukta olur. Kütük Organizasyonu 15

Değişken Uzunluklu Kayıtlar (Devam) iv) Sonunda Sonlandırıcı Bulunan Kayıtlar Bu yapıda kayıdın sonunda end of line gibi bir ifade bulunur. Tür Avantaj Dezavantaj Sabit Uzunluklu Kayıtlar Değişken Uzunluklu Kayıtlar İstenilen Kayda Kolayca Konumlanma Boş alan daha az kullanılmakta Boş Alan Kullanımı Bir index dosyasına gereksinim duyulur. Kütük Organizasyonu 16

Dosya Organizasyonu Sıralı Erişimli Dosyalar (Sequential) Doğrudan Erişimli Dosyalar (Direct) Index Yapılı Dosyalar (Indexed) Kütük Organizasyonu 17

Dosya İşlemleri Temel dosya işlemleri : Bir kaydın alınması Bir kaydın eklenmesi Bir kaydın silinmesi Bir kaydın içindeki alanın değiştirilmesi Kütük Organizasyonu 18

Sıralı Erişimli Dosyalar (Sequential Files) Kayıtlar bitişik (ardışık) olarak saklanır. 1 2 3...... i i+1 i+2...... n-2 n-1 n Kütük Organizasyonu 19

Kayıtlara Erişim (Access) Sıralı erişim için bu dosya yapısı olukça uygundur. Bir kayıttan diğer kayda geçmek için aktif olan kaydın adresini, kayıt boyutu kadar arttırmak yeterlidir. Sıralı dizi yapısı bu yapıya örnek olarak verilebilir. Döngü sayacı kullanılarak sırasıyla kayıtlara erişerek işlem yapmak mümkündür. Bu durum, döngü sayacının primary key olduğunda geçerlidir. Örn: Number sütununa göre Kütük Organizasyonu 20

Kütük Organizasyonu 21

Eğer erişim işlemi name alanına göre yapılacaksa sıralı arama (sequential search) yapılmalıdır. Sıralı aramada, istenilen kayda ulaşılıncaya kadar bütün kayıtlara sırasıyla teker teker bakılır. Örn: Rober Blom adlı kişiye ulaşabilmek için 7 tane probe a gereksinim vardır. Probe: Farklı bir konuma ulaşıma verilen isimdir. Başarısız aramalarda dosyadaki tüm kayıtlara bakılması gerekir. Bu yüzden başarısız aramalarda sıralı erişimde zaman kaybına neden olur. Kütük Organizasyonu 22

Genel olarak (n bir dosyadaki toplam kayıt sayısı olsun) Minimum 1 kayda erişilecek veya Maksimum n tane kayda erişilecektir. Ortalama= (n+1)/2 n/2 erişim söz konusudur. Kayıtlar birincil anahtarlarına göre (sayısal veya alfabetik olarak) sıralanırsa, istenilen kayda ulaşmak daha az zaman alır. Büyük n değerleri için performans kaybı söz konusu iken, n in az olduğu durumlar için oldukça yapısı basit olduğundan tercih edilebilir. Computational Complexity O(n) dir. Kütük Organizasyonu 23

Binary Search Kayıtlar sıralı durumdadır. Aranan alanın ortasından aramaya başlanır. Her defasında kayıtların yarısı elenir. Computational Complexity O (log 2 n) dir. Kütük Organizasyonu 24

Binary Search Kütük Organizasyonu 25

Örnek ^ aktif olan kayıt Kütük Organizasyonu 26

Interpolation Search Telefon rehberinde bir kişinin aranmasına benzer. Aranan kaydın pozisyonunun tahmin edilmesiyle bir sonraki pozisyon belirlenir. Kayıtlar birincil bellekte ise binary search, ikincil bellekte ise interpolation search tercih edilir. Kütük Organizasyonu 27

Self-Organizing Sequential Search Bu yapıda sık kullanılan kayıtlar dosyanın başlangıcına getirilerek performans arttırılmaya çalışılır. Bunun için 3 yaygın algoritma kullanılır: Move_to_front Transpose Count Kütük Organizasyonu 28

Move_to_Front Bir kayda ulaşıldığında dosyanın başına alınır. Bir kayıt eğer sık kullanılmıyorsa diğer kayıtların erişim süresini arttırır. Yer kısıtlı olmadığı ve hızlı erişimin önemli olduğu durumlarda kullanılır. Bağlı yapılar kullanılır. Kütük Organizasyonu 29

Örnek Kütük Organizasyonu 30

Transpose Bir kayda ulaşıldığında önündeki ile yer değiştirir. Bir kayıt dosyanın başlangıcına gelinceye kadar birden fazla ulaşılmalıdır. Move_to_front algoritmasına göre daha kararlıdır. Yer kısıtlı olduğunda tercih edilmelidir. Count Kayıtlar erişilme sırasına göre büyükten küçüğe doğru sıralanır. Erişilme bilgisini tuttuğu için fazladan alan gerektirir. Erişim sayıları başka bir yerde gerekiyorsa bu yapı tercih edilebilir. Kütük Organizasyonu 31