Bu Sayfayı Paylaş:

Kavram

Storage Engine - Depolama Motorları

Tanım: MySQL'de tablolarda farklı veri saklama, güncelleme ve erişme yöntemleri sunan bölüm ve modüller. En sık kullanılan storage engine'ler InnoDB ve MyISAM'dır. Bir veritabanı veya tablo yaratılırken farklı storage engine kullanılabilir

Kavram

InnoDB Storage Engine

Tanım: MySQL'in desteklediği bir storage engine. Bazı MySQL veriyonlarında varsayılan storage engine InnoDB'dir. Transaction desteklemektedir.

Kavram

MyISAM Storage Engine

Tanım: MySQL'in desteklediği bir storage engine. Bazı MySQL versiyonlarında varsayılan storage engine MyISAM'dir. Transaction ve "Foreign Key" desteklememektedir. Tablo seviyesinde kilitleme (Table Level Locking) desteklenir ancak satır seviyesinde kilitleme (Row Level Locking) bulunmamaktadır. Okuma özelliği fazla ancak transaction gerektiren yazma işlemleri az ise MyISAM tercih edilebilir

Veri

InnoDB ve MyISAM Karşılaştırması

MyISAM ve InnoDB MySQL'de en çok tercih edilen storage engine'lerdir. Aşağıdaki gibi karşılaştırılabilir:
  • InnoDB transaction destekler , MyISAM desteklememektedir. Bu nedenle okuma özelliği fazla ancak transaction gerektiren yazma işlemleri az olan veritabanları için MyISAM tercih edilebilir
  • Hem InnoDB hem de MyISAM Tablo seviyesinde kilitlemeyi (Table Level Locking) destekler. Ancak MyISAM satır seviyesinde kilitlemeyi (Row Level Locking) desteklemez. Bu nedenle yazma işlemlerinde InnoDB tüm tabloyu kitlemediği için daha performanslıdır
  • MyISAM Full Text Indexing(Tam Metin Dizinleme) ile büyük metinleri indexlemeyi destekler.
  • MyISAM Foreign Key desteklemez ancak InnoDB desteklemektedir
  • MyISAM tablo ilişkilerinde kısıt desteklemez ancak InnoDB desteklemektedir
  • InnoDB insert, update işlemlerinde MyISAM'a göre daha hızlıdır. MyISAM ise select işlemlerinde daha hızlıdır. Bu nedenle yazma işlemlerinin az , select işlemlerinin fazla olduğu durumlarda MyISAM tercih edilebilir


Kavram

NDBCLUSTER - NDB Storage Engine

Tanım: MySQL Cluster ürününde kullanılan storage engine

Kavram

MEMORY Storage Engine

Tanım: MySQL'de geçici tablolar için kullanılan, bilgilerin hafızada tutulduğu storage engine. Eğer sadece hafızada çalışacak geçici tablolara ihtiyaç varsa MEMORY storage engine kullanılabilir

Kavram

MERGE Storage Engine - MRG_MYISAM Storage Engine

Tanım: MySQL'de bir tabloyu birden fazla tabloya bölüp saklama ve işleme özelliği olan bir storage engine

Kavram

FEDERATED Storage Engine

Tanım: MySQL'her tablo için bir veya daha fazla kopya oluşturulması ile çalışan bir storage engine

Kavram

SHOW ENGINES Komutu

Tanım: Bir MySQL veritabanı sisteminin desteklediği storage engine'lerin listesini veren komut

Örnek

SHOW ENGINES Sonuç Örneği

Aşağıda bir MySQL'de çalıştırılan SHOW ENGINES komutu sonucu listelenen storage engine bilgileri :

EngineSupportCommentTransactionsXASavepoints
PERFORMANCE_SCHEMAYESPerformance SchemaNONONO
MRG_MYISAMYESCollection of identical MyISAM tablesNONONO
CSVYESCSV storage engineNONONO
BLACKHOLEYES/dev/null storage engine (anything you write to it disappears)NONONO
MyISAMYESMyISAM storage engineNONONO
InnoDBDEFAULTSupports transactions, row-level locking, and foreign keysYESYESYES
ARCHIVEYESArchive storage engineNONONO
MEMORYYESHash based, stored in memory, useful for temporary tablesNONONO
FEDERATEDNOFederated MySQL storage engine





Bu Sayfayı Paylaş:

İletişim Bilgileri

Takip Et

Her Hakkı Saklıdır. Bu sitede yayınlanan tüm bilgi ve fikirlerin kullanımından fibiler.com sorumlu değildir. Bu sitede üretilmiş , derlenmiş içerikleri, fibiler.com'u kaynak göstermek koşuluyla kendi sitenizde kullanılabilirsiniz. Ancak telif hakkı olan içeriklerin hakları sahiplerine aittir