www.fatihkabakci.com

Personal Website and Computer Science TUR EN

SQL SERVER DISK YONETIM MIMARISI

Last update: 10/18/2012 3:26:00 PM

Yazan:Fatih KABAKCI

Sql Server,verileri organize ederken çeşitli semantike dayanan modeller kullanır.Sql Server'in disk yönetimi için tasarladığı modeli Page ve Extent yaklaşımlarıdır.Disk ve Ram arasında verileri taşırken en hızlı şekilde bu işlemi yapmayı hedefleyen Sql Server,diski en verimli şekilde kullanmayı da göz önünde bulundurur.Sql Server Disk Yönetimi(Sql Server Disk Management) page modelini esas alır.Bu model ardışık olarak içerisinde barındığı verileri en optimum bir şekilde saklayan bir yapıdır.



Sql Server disk'i page'lere ayırır ve ardışık olarak bu page'lere atar.Yukarıdaki resimden de görüldüğü üzere bir page 8K büyüklüğündedir.Her page içerisinde bulunan Header bilgisi,page'nin içinde barındırdığı nesnelerin,ID,page tipi ve boşluk miktarı değerlerini içerir ve 96 byte büyüklüğündedir.Page'nin en sonunda ters sırada bulunan satır offset bilgileri ise,her satır için referans değerleridir ve Sql Server'in verileri bulmasını,doğrulamasını sağlar.Bu offset bilgileri ise 132 byte olarak yer almaktadır.Page içerisinde kalan 8060 byte ise esas verilerin saklanması için ayrılmıştır.Veriler page'lere ardışık olarak yerleşirlerken,text,ntext,varchar(MAX),nvarchar(MAX) ve image türünden büyük nesneler(large objects) aynı boyutta fakat farklı yapıdaki page'lerde saklanmaktadır.

Sonuç olarak Sql Server Disk Management,diski page'lere ayırmıştır ve verileri ardışık olarak saklamaktadır.Sql Server'in disk yönetim sistemindeki bir diğer kavram Extent'lerdir.



Bir Extent 8 adet page'den oluşur ve 64K büyüklüğüne sahiptir.Yani,
8K page * 8 = 64K Extent
bağıntısı burada geçerlidir.Sql Server disk yönetim sistemi için iki çeşit Extent kullanmaktadır.
  • Mixed Extent,içerisinde farklı(karışık) nesneleri barındırır.
  • Uniform Extent,içerisinde sadece aynı nesneleri barındıran Extent.
Bir nesne ilk oluşturulduğu anda bir page içerisine alındıktan sonra,Sql Server tarafından uygun bir Extent içerisine atılır.Bu Extent ilk olarak Mixed Extent'dir.Mixed Extent içerisinde 8 adet nesne barındırabilmektedir ve oluşturulan ilk page'leri kendi içerisine alır.

Şayet Mixed Extent içerisinde günden güne verilerle dolan bir nesne,8 page miktarını aştığı anda,Uniform Extent'e alınır.Yani 8 page değerinden(64K'dan fazla) büyük alanlara ihtiyaç duyan nesneler,Mixed Extent'den Uniform Extent'lere aktarılır.

Özet olarak ilk kez oluşturulan bir nesne,bir page içerisine aktarılır.Aktarıldığı page ise,Mixed türünden bir Extent içerisine yerleştirilir.Şayet zamanla bu nesne daha fazla veri ile dolmaya başlıyorsa,daha fazla page'ler şeklinde saklanacaktır.Zamanla page sayısı artan nesne,şayet 8'i geçerse,ilgili Extent'i Uniform olacaktır.Hatırlanması gereken kritik nokta,veriler page'ler ile var olurken,page'ler ise Extent'ler içerisinde yaşamını sürdürmesidir.

Aşağıda Mixed ve Uniform Extent'lerin yapısı gösterilmektedir.



Sql Server disk yönetim mimarisi yukarıdaki temel yapı ile tasarlanmıştır.Verileri en hızlı şekilde taşıyarak,en optimum yöntemlerle saklayan bir veritabanı sunucusu olan Sql Server,oluşturulan her tablo,her index ve diğer veritabanı nesneleri için bu modelleri uygulamaktadır.
There has been no comment yet

Name:


Question/Comment
   Please verify the image




The Topics in Computer Science

Search this site for





 

Software & Algorithms

icon

In mathematics and computer science, an algorithm is a step-by-step procedure for calculations. Algorithms are used for calculation, data processing, and automated reasoning.

Programming Languages

icon

A programming language is a formal constructed language designed to communicate instructions to a machine, particularly a computer. It can be used to create programs to control the behavior of a machine. Java,C, C++,C#

Database

icon

A database is an organized collection of data. The data are typically organized to model aspects of reality in a way that supports processes requiring information.

Hardware

icon

Computer hardware is the collection of physical elements that constitutes a computer system. Computer hardware refers to the physical parts or components of a computer such as the monitor, memory, cpu.

Web Technologies

icon

Web development is a broad term for the work involved in developing a web site for the Internet or an intranet. Html,Css,JavaScript,ASP.Net,PHP are one of the most popular technologies. J2EE,Spring Boot, Servlet, JSP,JSF, ASP

Mobile Technologies

icon

Mobile application development is the process by which application software is developed for low-power handheld devices, such as personal digital assistants, enterprise digital assistants or mobile phones. J2ME

Network

icon

A computer network or data network is a telecommunications network that allows computers to exchange data. In computer networks, networked computing devices pass data to each other along data connections.

Operating Systems

icon

An operating system is software that manages computer hardware and software resources and provides common services for computer programs. The OS is an essential component of the system software in a computer system. Linux,Windows

Computer Science

icon

Computer science is the scientific and practical approach to computation and its applications.A computer scientist specializes in the theory of computation and the design of computational systems.