23 Ağustos 2011 Salı

Overview of Physical Database Structures / Fiziksel Veritabanı Yapısına Genel Bakış

*The following sections explain the physical database structures of an Oracle database, including datafiles, control files, redo log files, archived redo log files, parameter files, alert and trace log files, and backup files. This section includes the following topics:

Datafiles

Every Oracle database has one or more physical datafiles, which contain all the database data. The data of logical database structures, such as tables and indexes, is physically stored in the datafiles allocated for a database.
Datafiles have the following characteristics:
  • One or more datafiles form a logical unit of database storage called a tablespace.
  • A datafile can be associated with only one tablespace.
  • Datafiles can be defined to extend automatically when they are full.
Data in a datafile is read, as needed, during normal database operation and stored in the memory cache of Oracle Database. For example, if a user wants to access some data in a table of a database, and if the requested information is not already in the memory cache for the database, then it is read from the appropriate datafiles and stored in memory.
Modified or new data is not necessarily written to a datafile immediately. To reduce the amount of disk access and to increase performance, data is pooled in memory and written to the appropriate datafiles all at once, as determined by the background process database writer process (DBWn).
Datafiles that are stored in temporary tablespaces are called tempfiles. Tempfiles are subject to some restrictions, as described in "Temporary Datafiles".
See Also:
"Overview of the Oracle Database Instance" for more information about the Oracle Database memory and process structures

Control Files

Every Oracle database has a control file. A control file contains entries that specify the physical structure of the database, including the following information:
  • Database name
  • Names and locations of datafiles and redo log files
  • Timestamp of database creation
Oracle Database can multiplex the control file, that is, simultaneously maintain a number of identical control file copies, to protect against a failure involving the control file.
Every time an instance of an Oracle database is started, its control file identifies the datafiles, tempfiles, and redo log files that must be opened for database operation to proceed. If the physical makeup of the database is altered (for example, if a new datafile or redo log file is created), then the control file is automatically modified by Oracle Database to reflect the change. A control file is also used in database recovery.

Online Redo Log Files

Every Oracle Database has a set of two or more online redo log files. These online redo log files, together with archived copies of redo log files, are collectively known as the redo log for the database. A redo log is made up of redo entries (also called redo records), which record all changes made to data. If a failure prevents modified data from being permanently written to the datafiles, then the changes can be obtained from the redo log, so work is never lost.
To protect against a failure involving the redo log itself, Oracle Database lets you create a multiplexed redo log so that two or more copies of the redo log can be maintained on different disks.

Archived Redo Log Files

Archived redo log files are database-generated offline copies of online redo log files. Oracle Database automatically archives redo log files when the database is in ARCHIVELOG mode. Oracle recommends that you enable automatic archiving of the online redo log.

Parameter Files

Parameter files contain a list of configuration parameters for that instance and database. Both parameter files (pfiles) and server parameter files (spfiles) let you store and manage your initialization parameters persistently in a server-side disk file. A server parameter file has these additional advantages:
  • The file is concurrently updated when some parameter values are changed in the active instance.
  • The file is centrally located for access by all instance in a Real Application Services database.
Oracle recommends that you create a server parameter file as a dynamic means of maintaining initialization parameters.

Alert and Trace Log Files

Each server and background process can write to an associated trace file. When an internal error is detected by a process, the process dumps information about the error to its trace file. Some of the information written to a trace file is intended for the database administrator, while other information is for Oracle Support Services. Trace file information is also used to tune applications and instances. The alert file, or alert log, is a special trace file. The alert log of a database is a chronological log of messages and errors.
The following features provide automation and assistance in the collection and interpretation of trace and alert file information:
  • The Automatic Diagnostic Repository (ADR) is a system-managed repository for storing and organizing trace files and other error diagnostic data. ADR provides a comprehensive view of all the critical errors encountered by the database and maintains all relevant data needed for problem diagnosis and eventual resolution. When the same type of incident occurs too frequently, ADR performs flood control to avoid excessive dumping of diagnostic information.
  • The Incident Packaging Service (IPS) extracts diagnostic and test case data associated with critical errors from the ADR and packages the data for transport to Oracle.

Backup Files

To restore a file is to replace it with a backup file. Typically, you restore a file when a media failure or user error has damaged or deleted the original file.
User-managed backup and recovery requires you to actually restore backup files before you can perform a trial recovery of the backups.
Server-managed backup and recovery manages the backup process, such as scheduling of backups, as well as the recovery process, such as applying the correct backup file when recovery is needed.

Türkçesi:

Bu bölüm aşağıdaki başlıkları içerir
  • Datafiles (Veri Dosyası ya da Veri Kütüğü)
  • Control Files (Denetim ya da Kontrol Dosyası )
  • Online Redo Log Files ( Çevrimiçi Yineleme Log(Kütük) Dosyaları
  • Archived Redo Log Files (Arşivlenmiş Yineleme Log Dosyası)
  • Parameter Files (Parametre Dosyaları)
  • Alert and Trace Log Files (Uyarı ve izleme Log Dosyaları)
  • Backup Files (Yedek Dosyaları)

Datafiles(Veri Dosyaları)


Her Oracle Veritabanı bütün verilerin içeren bir ya da daha fazla datafiles içerir.Tablo, indeksler gibi Mantıksal Veri Tabanı yapılarının dosyalarını, fiziksel olarak datafiles içine saklayarak bir veri tabanı için gerekli alını ayırır

Datafiles aşağıdaki karakteristik özelliklere sahiptir:
  • Bir ya da Daha fazla datafiles , tablespace olarak adlandırılan veritabanı belleğinin bir mantıksal birimini oluşur.
  • Bir datafile sadece bir tek tablespace ile ilişkile olabilir
  • Datafiles tamamen doldugunda, otomatik olarak kendini uzatmak için tanımlanabilir.

Oracle Veritabanı önbellekte depolanan ve normal veritabanı işlemi sırasında bir veri dosyası Veri gerektiği gibi okunur.Eğer bir kullanıcı bir veritabanın tablosuna birkaç veri girişi yapmak isterse, ve bu istenen bilg veri tabanı için zaten önbellekte değilse, o zaman uygun veri dosyaları okunulur ve bellekte depolanır.
Değiştirilen veya yeni verileri mutlaka hemen bir veri dosyası yazılı değildir.Disk erişim miktarını azaltmak ve performansı artırmak için, Veriler bellek içinde bir araya getirilir, uygun veri dosyalarına arka plan işlemi veritabanı yazar süreci (DBWn) tarafından belirlenerek hepsi birlikte yazılır.Datafiles tempfiles olarak adlandırılan geçiçi tablolarda saklanır.Tempfiles "Geçici DATAFILES" açıklandığı gibi bazı kısıtlamalar, tabidir.

Control Files(Kontrol ya da Denetim Dosyaları)


Her Oracle Veritabanı bir konrol dosyasına sahiptir.Bir control dosyası Veri tabanın Fiziksel Yapısını tanımlayan kayıtlar içerir ve aşağıdaki bilgileri kapsar:
  • Veri Tabanı ismi
  • İsimler ve datafiles'ın yerleri ve redo(yineleme) log dosyaları
  • Veritabanı oluşturma zaman damgası

Oracle Veritavanı konrol dosyalarını aynı anda aynı kontrol dosyası kopya sayısı korumak, kontrol dosyası içeren bir başarısızlık karşı korumak için çoğaltabilir.

Oracle veritabanı bir örneğini başlatılan her zaman, kontrol dosyası veritabanı işlemlerinin devam etmek içim datafiles, tempfiles ve Redo log dosyalarını tanımlanır ve açılmalıdır.

Veritabanının fiziksel makyaj (örneğin, yeni bir veri dosyası veya günlük dosyası yeniden oluşturulur) değiştirilirse, o zaman otomatik olarak kontrol dosyası Oracle Veritabanı değişikliği yansıtmak için değiştirilir. Bir kontrol dosyası veritabanı kurtarma da kullanılır.

Online Redo Log Files (Online Yineleme Log Dosyaları)


Her Oracle Veritabanı, iki veya daha fazla online redo log file bir dizi vardır.Redo log dosyaları arşivlenen kopyaları ile birlikte bu online redo log dosyalarını, redo log veritabanı için toplu olarak ilişkilendirilir.Redo log kayıt verileri yapılan tüm değişiklikleri redo girişleri (redo kayıtları da denilir oluşur.Bir arıza kalıcı olarak değiştirilmiş verileri veri dosyalarına yazılmasını önlerse, ardından değişiklikleri redo log elde edilebilir, bu nedenle çalışma asla kaybolmaz.

Redo log kendini içeren bir arıza karşı korumak için, Oracle Veritabanı redo log oluşturulmasına izin verir ve böylece farklı diskler üzerinde redo günlük iki ya da daha fazla kopya ile korunabilir.

Archived Redo Log Files(Arşivlenmiş Yineleme Log Dosyaları)

Arşivlenmiş redo log dosyaları online redo log dosyaları veritabanı oluşturulan çevrimdışı kopyalarıdır. Oracle Veritabanı, veritabanı ARCHIVELOG modunda iken otomatik olarak arşivler log dosyalarını yeniden. Oracle online redo log otomatik arşivleme etkinleştirmek önerir.

Parameter Files(Parametre Dosyaları)


Parametre dosyaları, aşamalar ve veritabanı için yapılandırma parametrelerinin bir listesini içerir.Her iki parametre dosyaları (PFILES) ve sunucu parametresi dosyaları (spfiles) depolaya ve ısrarla bir sunucu tarafı disk dosyası içinde başlatma parametreleri yönetmeye izin verir

  • Bazı parametre değerleri etkin bir örneği değiştirildiğinde dosyayı eş zamanlı olarak güncellenir.
  • Dosya tüm örnek bir Real Application Services veritabanı erişim merkezi yer almaktadır.

    Oracle başlatma parametreleri koruyarak dinamik bir araç olarak bir sunucu parametre dosyası oluşturmanızı önerir.

    Alert and Trace Log Files(Uyarı ve İzleme Logları)

Her sunucu ve arka plan süreci ile ilişkili bir izleme dosyası yazabilirsiniz.Bir işlem tarafından bir iç hata tespit edildiğinde, bu işlem hata bilgilerini kendi trace dosyasına atar.Bir trace dosyasına yazılmış bazı bilgiler veritabanı yöneticileri için düşünülmüştür, diğer bilgiler ise Oracle Destek Hizmetleri içindir.Trace dosya bilgileri, uygulamaları ve örnekleri ayarlamak için kullanılır .Uyarı dosyası, ya da uyarı logu, özel bir izleme dosyası. Bir veritabanı Uyarı logları, iletileri ve hatalarının bir kronolojisidir.

Aşağıdaki özellikler, otomasyon, izleme ve Uyarı dosya bilgileri toplama ve yorumlama ve yardım sağlar:
  • Otomatik Tanımlama Deposu (ADR) izleme dosyaları ve diğer hata teşhis verileri depolamak ve düzenlemek için bir sistem tarafından yönetim deposudur.ADR, veritabanı tarafından karşılaşılan tüm kritik hataları kapsamlı bir bakış sağlar ve problem tanı ve nihai bir çözüm için gerekli olan tüm ilgili verileri korur. Aynı tür olay çok sık oluştuğunda, ADR tanısal bilgi damping aşırı önlemek için taşkın kontrolü gerçekleştirir.
  • Olay Ambalaj Servisi (IPS) ADR ve taşınması için Oracle veri paketleri kritik hatalar ile ilişkili olarak tanım ve test durum verilerini çıkartır.

Backup Files


Bir dosyayı geri yüklemek için bir yedek dosyası ile değiştirmek içindir.Tipik olarak, bir medya hatası veya kullanıcı hatası orijinal file.a yedekleme dosyası hasar görmüş veya silinmiş olduğunda bir dosya geri yüklenir.

Kullanıcı tarafından yönetilen yedekleme ve kurtarma yedeklerin bir deneme kurtarma işlemini gerçekleştirmek için önce gerçekten yedekleme dosyaları geri yüklemek gerekir

Sunucu tarafından yönetilen yedekleme ve kurtarma, kurtarma gerektiğinde doğru yedekleme dosyası uygulayarak gibi yedeklerin zamanlama olarak yedekleme işlemi, yanı sıra kurtarma işlemini yönetir.



Daha fazla Türkçe Kaynak Eklemek İstersek :

*Fiziksel Bölüm

Fiziksel bölüm veritabanını oluşturan işletim sistemi dosyalarıdır. Bir Oracle veritabanı fiziksel olarak bir ya da daha fazla veri dosyası, iki ya da daha fazla log dosyası, bir ya da daha fazla kontrol dosyasından oluşur.

Veri Dosyaları(Data Files)

Veri dosyaları veri tabanındaki tüm verileri tutan dosyalardır. Tablo, indeks gibi mantıksal veritabanı yapılarının içerisindeki veriler fiziksel olarak veri dosyalarında tutulurlar. Bir veri dosyası kendisi için ayrılan alan dolduğunda,  kendi sahip olduğu alanı artırabilecek özelliklere sahiptir. Bir ya da daha fazla veri dosyası mantıksal bir veritabanı depolama ünitesi olan bir tablo uzayını oluşturular.
Normal veritabanı işlemleri boyunca bir veri dosyası içerisindeki veriler okunur ve Oracle için ayrılan belleğe getirilirler. Örneğin bir kullanıcının veritabanındaki bir tablonun verilerine erişmek istediğini varsayalım. Eğer istenilen veriler bellekte yer almıyorsa, ancak o zaman uygun veri dosyasından okunur ve belleğe getirilirler.
Değişikliğe uğrayan veriler ya da yeni eklenen veriler veri dosyalarına hemen yazılmazlar. Sabit diske erişimi azaltmak ve böylece sistemin performansını artırmak için veriler bellek havuzunda tutulur ve gerektiğinde hepsi birden uygun veri dosyalarına kaydedilirler. Bunu Oracle artalan işlemleri belirler.

Kontrol Dosyaları(Control Files)

Tüm Oracle veritabanları kontrol dosyasına sahiptir.  Bir kontrol dosyası veritabanı adı, veri dosyaları ve log dosyalarının adı ve diskteki yeri, veritabanının oluşturulma tarihi vb. veritabanı ile ilgili bilgileri tutar.
Her veritabanı oturumu açıldığında Oracle bu dosyayı kontrol ederek gerekli bilgileri alır. Eğer veritabanında fiziksel bir değişme olursa(yeni bir log dosyası ya da veri dosyası oluşturulması gibi), yapılan değişiklikler Oracle tarafından otomatik olarak kontrol dosyalarına yansıtılır.

Log Dosyaları(Log Files)

Redo Log dosyaları olarak bilinen bu dosyaların amacı veriler üzerinde yapılan tüm değişiklikleri kaydetmektir. Eğer veri dosyalarına kalıcı olarak kaydedilmiş olan, değişikliğe uğramış kayıtlarda bir bozukluk olursa yapılan değişiklikler redo log dosyalarından sağlanabilir ve işlemler kaybolmaz. Birden fazla tekrarlanan bozukluk durumlarında redo log dosyalarının da bozulmasını engellemek için Oracle farklı diskler üzerinde redo log dosyalarının birden fazla kopyasının alınmasına olanak sağlar.
Bir veritabanı işlemi sırasında elektrik kesilirse, bellekteki veriler veri dosyalarına kaydedilmeyecek ve verilerin kaybolması durumuyla karşılaşılacaktır. Oracle veritabanı tekrar açıldığında redo log dosyalarında yapılan son değişiklikler veri dosyalarına yansıtılarak verilerin kaybolması engellenir.



*Fiziksel Olarak Oracle Veri tabanı

Fiziksel olarak bir veri tabanı ; veri dosyaları, kontrol dosyaları veri tabanı redo log dosyalarından oluşmaktadır.
Kontrol Dosyaları

Veri tabanının durumunu veri tabanı fiziksel yapısını tutan dosyalardır. Veri tabanı açılırken , kontrol dosyasını okuyarak , fiziksel olarak tüm veri dosyalarını , redo log dosyalarını kontrol eder. Eğer bu dosyalarda bir uyumsuzluk söz konusu ise veya kontrol dosyası bozulmuş ise veri tabanı açılmaz .
Bu nedenle kontrol dosyaları çok önemlidir veri tabanı en az iki kopya olarak ve iki farklı disk üzerine yaratılmalıdır. Kontrol dosyalarının isimleri “init.ora” parametre dosyasında “control_files” parametresinde verilmektedir.
Veri Dosyaları

Veritabanındaki tablolar, indeksler gibi tüm mantıksal yapıların , fiziksel olarak saklandığı dosyalardır. Bir veri tabanının performanslı çalışabilmesi fiziksel olarak ayrı disklere yerleştirilecek minimum 5 veri dosyası olmalıdır. Bunlar:

1. Oracle’ın arka plandaki işlemleri için kullandığı sistem dosyası,
2. Sadece tablo kayıtlarının tutulduğu indeks dosyası,
3. Tabloların indekslerinin tutulduğu indeks dosyası ,
4. Sıralama işlemleri için veri tabanının geçici olarak kullanıldığı “temporary” dosyası,
5. Geri alma işlemlerinin tutulduğu “rollback” dosyası

Eğer bu dosyalar fiziksel olarak ayrı disk üzerinde tutulmaz ise paralel , okuma veri tabanı yazma yapılamayacağı için performansı negatif olarak etkiler. Veri tabanı çok büyükse , veri ve indeksler birden fazla veri dosyasında tutulabilir. Bazı işletim sistemlerinde , yaratılan veri dosyalarının boyu ile ilgili kısıtlamalar vardır. Örneğin Sun Solaris işletim sisteminde 2GB ‘dan daha büyük dosya yaratılamaz. Bu durumda datalarımız 9 GB’lık yer kaplıyor ise en az 5 tane veri dosyası yaratmamız gerekir. Yaratılabilecek maksimum veri dosyası sayısı “init.ora” parametresindeki “db_files” parametresi ile verilmelidir.
Redo Log Dosyaları

Veritabanındaki tüm “commit” olmuş değişikliklerin , kurtarma yapılırken kullanılmak üzere kaydedildiği dosyalardır. En az iki redo log grubu tanımlanır. Bu dosyaların boyu ve grup sayısı veri tabanı yaratılırken sisteme tanımlanır. Sonradan bu tanımlar değiştirilebilmektedir. Redo log dosyalarının boyu , ideal olarak yarım saatte bir değişecek (swich) şeklinde ayarlanmalıdır. Redo log dosyalarının çok küçük olması , sistemde beklemelere neden olur. Çok büyük olmasa da veri tabanı açılırken yapılan otomatik kurtarma işleminin çok uzun sürmesine yol açar ve aktif redo log dosyalarının silinmesi yada bozulması durumunda da daha fazla veri kaybı olmasına neden olur. Redo log dosyalarının boyunun iyi ayarlanamaması Oracle’ın dezavantajlarına bir örnek oluşturmaktadır.
Sistemin güvenliği açısından her gruptaki redo log’u iki kopya olarak veri tabanı farklı disketlerde yaratmak gerekir. Redo log’lar kesinlikle raid disk üzerine konulmamalıdır. Çünkü redo log dosyaları üzerine sürekli yazma yapılmaktadır ve raid diskler yazma işleminin yavaşlatır.
Redo log dosyaları bir döngü içersindedir. Bir gruptaki redo log dolduğunda otomatik olarak diğer gruba geçer ve işlem bu şekilde devam eder.
Eğer veri tabanı arşiv modda ise bu dolan redo log dosyasının bir kopyası arşiv.log olarak kopyalanır ve kurtarma amaçlı saklanır.
İnit.ora Parametre Dosyası

Parametre dosyası, bir instance başlığında okunan , konfigurasyon parametrelerinin tutulduğu bir text dosyasıdır. Bu dosyada kontrol dosyalarının isimleri ve yeri , veri tabanının adı , SGA da yer alan bellek yapılarının boyutları ve veri tabanındaki işlemler ile ilgili bazı ayarlar tutulur. Veri tabanın arşiv modta olup olmayacağı da yine bu dosyada bulunur.

(Excerpt from : http://www.csharpnedir.com/articles/read/?id=388&title=Oracle%20Ve%20%C4%B0li%C5%9Fkisel%20Veritaban%C4%B1%20Y%C3%B6netim%20Sistemleri%20%202 )




Hiç yorum yok:

Yorum Gönder