PostgreSQL Veritabanı Sunucusu. Başarım Arttırma Yöntemleri



Benzer belgeler
PostgreSQL Veritabanı Sunucusu. 8.2 neler getiriyor?

POSTGRESQL'de İleri Seviyede Veri Kurtarma ve Yedekleme

İleri Seviyede PostgreSQL Yönetimi Devrim GÜNDÜZ. PostgreSQL Geliştiricisi PostgreSQL Markafoni

PostgreSQL'de Uygulamalı. (Streaming Replication. Standby)

PostgreSQL Veritabanı Sunucusu. HOT, VACUUM ve BGWRITER

PostgreSQL Veritabanı Sunucusu Devrim GÜNDÜZ.

PostgreSQL Veritabanı Sunucusu. Replikasyon Yazılımları: Slony-I Devrim GÜNDÜZ PostgreSQL Geliştiricisi

PostgreSQL - Yeni dönemdeki yeri

PostgreSQL'de Ölçekleme

PostgreSQL 9.3 Kullanılabilirlik ve Başarım

POSTGRESQL. Veritabanı Sunucusu : 8.0 neler getiriyor? Devrim Gündüz PostgreSQL Geliştiricisi

PostgreSQL - Yeni dönemdeki yeri

Genel Kavramlar. Bilgisayar ortamında işlenebilecek durumda bulunan kayıtlar. Birbiri ile ilişkili veriler topluluğu ve veriler arası ilişkiler

POSTGRESQL Veritabanı Sunucusu ve PostgreSQL ile Kurumsal Çözümler

ProFTPD FTP Sunucusu. Devrim GÜNDÜZ. TR.NET Sistem Destek Uzmanı.

Advanced Oracle SQL Tuning

PostgreSQL ile Kümeleme Teknikleri

İngilizce'de Relational Database Management System (RDBMS) olarak ifade edilir.

Veritabanlarına ve SQL'e Giriş. Devrim GÜNDÜZ. Teknoloji Destek Merkezi --

VERİ TABANI UYGULAMALARI

VERĐTABANLARINA GĐRĐŞ

MOODLE UZAKTAN ÖĞRETİM SİSTEMİ

20461C Querying Microsoft SQL Server Modül Seviye Belirleme Testi

Tavsiye Edilen Önhazırlık Veritabanı kavramını öğrenmek

EnterpriseDB Kalitesi ile Tanıştırma. Devrim GÜNDÜZ Principal Systems Engineer EnterpriseDB

VERİ TABANI YÖNETİM SİSTEMLERİ-II

PHP+Memory Cache+PostgreSQL Kullanarak Performanslı Veritabanı Uygulaması Geliştirme

PostgreSQL ve PL/pgSQL

HP Yazılım Zirvesi - İstanbul 20 May Wyndham Grand Levent Erdem Alaşehir / Finansbank Güvenlik Olay Korelasyonunda Büyük Veri Kullanımı

SELÇUK ÜNİVERSİTESİ BOZKIR MESLEK YÜKSEKOKULU VERİTABANI-II DERSİ FİNAL SINAVI

Tekir (Ön Muhasebe Yazılımı)

Unutulmuş Özellikler: Oracle Veritabanına Yaptığınız Yatırımı Sonuna Kadar Kullanın

BÖLÜM- 8: DİĞER ŞEMA NESNELERİNİ OLUŞTURMA

Üst Düzey Programlama

Microsoft SQL Server Sorgulama

"SQL Server Management Studio" yazılımını yüklemek için alttaki resmi sitesinden 180 günlük deneme sürümünü indirebilirsiniz.

İNTERNET PROGRAMLAMA 2 A S P. N E T. Marmara Teknik Bilimler MYO / Hafta 5 Veri Tabanı İşlemleri

PostgreSQL ve PL/pgSQL

Kullanıldığı Başlıca Siteler

Devrim Gündüz. Onur Yalazı İstanbul PGCluster ile etkin kümeleme

NoSql ve MongoDB. Saygın Topatan

Oracle da kullanılan veri tipleri:

BÖLÜM -7: TABLOLARI OLUŞTURMA VE YÖNETME

Microsoft SQL Server 2008 Oracle Mysql (Ücretsiz) (Uygulamalarımızda bunu kullanacağız) Access

NFS (Network File System) & NIS (Network Information System) H. Coşkun Gündüz cgunduz@cs.bilgi.edu.tr

SQL Komutları (2) Uzm. Murat YAZICI

5 SQL- Yapısal Sorgulama Dili. Veritabanı 1

Ortamınızda A.D. veya LDAP sistemi var ise aşağıdaki linkten KoruMail LDAP-AD isimli dokümanı inceleyebilirsiniz.

KASPERSKY ENDPOINT SECURITY FOR BUSINESS

Copyright 2012 EMC Corporation. All rights reserved.

VIEW LERDE SQL HINT KULLANIMI

Turquaz. Açık kodlu muhasebe yazılımı Turquaz Proje Grubu

Kurulum Dökümanı. v

Temel Linux Sunucusu Kurulumu

İNTERNET EXPLORER AYARLARI 1. Başlat-Ayarlar-Denetim Masası menüsünden "İnternet Özellikleri" (Seçenekleri)'ni seçiniz. Resim. 1

TÜSE BİLGİ BANKASI KULLANIM KILAVUZU. Hazırlayan: Derya Kaya Kurumsal İletişim Asistanı Türkiye Üçüncü Sektör Vakfı (TÜSEV) Mart 2009, İstanbul

Veri Tabanı Yönetim Sistemleri Bölüm - 3

Ders Tanıtım Sunumu. Database Managegement II. Elbistan Meslek Yüksek Okulu Güz Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU

WAL Hakkında Bilmek İstediğiniz (Hemen Hemen) Herşey

Veritabanına Giriş. Oğuzhan Ceylan. 19 Eylül 2011

Bilgi ve Olay Yönetim Sistemi

I. Oturum: GNU/LINUX A GİRİŞ

Her bölüm için kısa bazı girişler yapılacak ve bölüm içerisinde anlatılacak olan konuların genel başlıkları belirtilecektir.

Php Programlama Dili MySQL Uygulamaları

SQL e Giriş. Uzm. Murat YAZICI

Program Kurulum. Turquaz Muhasebe. İçindekiler

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

T.C. MARDİN ARTUKLU ÜNİVERSİTESİ Uzaktan Öğretim Uygulama ve Araştırma Merkezi Müdürlüğü

UZAKTAN EĞİTİM MERKEZİ

Veritabanı Yönetim Sistemleri (Başarım Eniyileme Performance Tuning)

Hybrid Software Veritabanı ve Sistem 7x24 Destek &Danışmanlık Hizmetleri Veritabanı ve Sistem 7x24 Destek & Danışmanlık Hizmetleri

Sistem Nasıl Çalışıyor: Araç İzleme ve Filo Yönetim Sistemi

VERĐTABANI YÖNETĐM SĐSTEMLERĐ

Maltepe Üniversitesi Endüstri Mühendisliği Bölümü Veri Tabanı Yönetimi (END 210)

Presentation Name. IBM PureData for Analytics. Name Surname. Title. Ayhan Önder Netezza Teknik Uzmanı IBM Corpora.on

1 ORACLE 11G DATABASE SERVER LE

KONUMSAL VERİNİN ELDE EDİLMESİNDE MOBİL CBS OLANAKLARI: GELENEKSEL YÖNTEMLERLE KARŞILAŞTIRMA. Fatih DÖNER

PostgreSQL ile NoSQL. Gereksinimlerinizi Karşılamak

Sunum Planı. Django Nedir? Django projesi oluşturmak Basit bir blog uygulaması. Şablon Kullanımı Diğer özellikleri

1. BULUT BİLİŞİMDE VERİTABANI

Gönderilen uygulama incelendiğinde, belirtilen gerekliliklerin bir kısmının karşılandığı görülmüştür.

İlk Konsol Uygulamamız 2 İlk Windows Uygulamamız 9.Net Framework Yapısı 18 Neler Öğrendik 19. Veri Tipleri 24 Tanımlı Veri Tipleri 27 Basit Tipler 28

İyi Girişimler ve Uygulamalar II. Ulusal Açık Erişim Çalıştayı Ekim 2013, İzmir Yüksek Teknoloji Enstitüsü, Urla, İzmir

8 Oracle da tablo yapısı içinde otomatik artan kolon yoktur. (identity kolon

Ders Kodu Yarıyıl T+U Saat Kredi AKTS. Programlama Dilleri

SQL Server 2008 kurulum için Microsoft Windows Installer 4.5 ve üzeri bileşenin bilgisayarınızda kurulu olması gerekir. İndirmek için tıklayın

TESİ. indeks. söylenebilir?? bir ilişkidir d) Hiçbiri. veya somutlaştırılmış. düzeyidir? sağlayabilir? sına. d) Hepsi. olabilir? c) Verilerin d) Hepsi

VT Sistem Gerçeklemesi. Ders Notları- #8

Kurulum Dökümanı * v * Bu döküman FortiLogger versiyonu için hazırlanmıştır.

Aşağıdaki şemaya dikkat edin. Sorgulamalarımızı genellikle bu şemaya göre yapacağız.

Tansel ZENGİNLER IBM Veri Yönetimi Çözüm Mimarı Telefon: E-posta:

ELIF KIOTZEOGLOU RESUL MURAD MERT PACOLARI

Bölüm 4: DDL Veri Tanımlama Dili

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

Disk Alanı 100 Mb Mb Mb Mb Mb Mb. Aylık Trafik (Bandwidth) 1 Gb 5 Gb 10 Gb 15 Gb 25 Gb 35 Gb

İş Zekası için Dört-Katmanlı Veri Modellemesi Gerçekleştirimi. Harun Gökçe EG Yazılım, TOBB ETÜ

ÖĞRENME-ÖĞRETME YÖNTEM VE TEKNİKLERİ. gösterip yaptırma, uygulamalı çalışma. Anlatım, soru-cevap, gösterip yaptırma, uygulamalı çalışma.

Linux İşletim Sistemi Tanıtımı

DĐNAMĐK ve STATĐK SQL KULLANMANIN PERFORMANSA ETKĐSĐ

Transkript:

PostgreSQL Veritabanı Sunucusu Başarım Arttırma Yöntemleri Devrim GÜNDÜZ PostgreSQL Geliştiricisi Command Prompt, Inc. devrim@commandprompt.com devrim@postgresql.org[.tr]

LKD Seminerleri Linux Kullanıcıları Derneği'nin seminerleri hakkında ayrıntılı bilgi için: http://seminer.linux.org.tr/

Giriş Bu sunuda aşağıdaki konular anlatılacaktır: 1. PostgreSQL nedir? 2. PostgreSQL'in başarım anahtarları 3. Yapılması ve yapılmaması gerekenler

Ana kural Yanılgı: Tamam süper ayarladım abi veritabanını, şimdi bu alet süper kaçar, seni uzun süre götürür bakımsız. Hayat biter, optimizasyon bitmez.

Teşekkürler Seminer bu kadar!

PostgreSQL Nedir? İlişkisel model SQL dili İyi performanslı Güvenli Geniş özellikli (Gerçek) Çoklu platform desteği Ücretsiz Açık Kaynak Kodlu

PostgreSQL 8.1 ile Gelen Yenilikler 2PC (Two Phase Commit) Bitmap Taramaları (Bitmap Scans) autovacuum bütünleştirmesi Aggregate'ler Üzerindeki İyileştirmeler Tablo Bölümleme

8.1 ile Gelen Yenilikler Bitmap Taramaları (Bitmap Scans) Elimizde var olan INDEX kayıtları: A: CREATE INDEX t0_col0_idx ON t0 (col0); B: CREATE INDEX t0_col1_idx ON t0 (col1); INDEX'leri tarayacak örnek sorgu tümcesi: SELECT... FROM t0 WHERE col0 = val0 AND col1 = val1; Sorgu için gerekli INDEX: C: CREATE INDEX t0_idx ON to (col0, col1); Bitmap taramaları bize ne kazandırdı: Otomatik olarak A + B = C oluşturuluyor.

8.1 ile Gelen Yenilikler autovacuum Entegrasyonu Veritabanı üzerinde neden vacuum gerekli? autovacuum ile gelen yararlar

8.1 ile Gelen Yenilikler Aggragate'ler Üzerindeki İyileştirmeler Önceki duruma basit bir örnek: SELECT max(col0) FROM t0; SELECT col0 FROM t0 ORDER BY col0 LIMIT 1; Uç değerler üzerinde istatistik sağlayan INDEX kayıtları kullanılarak aggragate'lerde başarım artışı. count() problemi ve durumun bu aggragate açısından değerlendirilmesi.

8.1 ile Gelen Yenilikler Tablo Bölümleme Tablo bölümleme ve kullanım alanları. Ana tabloya yapılacak girişlerde kontrollerin gerçekleştirilmesi için girilecek RULE'lar. constraint_exclusion ve parçalı tablolar üzerinde yapılacak sorgulamalarda başarım ölçütleri. constraint_exclusion seçeneği kapalı iken sakınılması gereken durumlar: CHECK (col0 = 1) CHECK (col0 = 1::bigint)

Gerekli donanım bileşenleri Kritik 3 donanım bileşeni: Disk, disk, disk :-) Bellek İşlemci Daha fazla yatırım -> disk Peki nasıl bir disk? Nasıl bir bellek ayarı?

WAL pg_xlog nereye konulmalıdır? wal_buffers 64 256 256+ beklenilen artışı sağlamaz.

ANALYZE İstatistiklerinizi güncelleyin! Daha iyi bir sorgu planı Bellek kullanımını daha iyi düzenleme imkanı

EXPLAIN Explain kullanın! startup cost, execution cost Güncel istatistiklerin önemi

Index Index kullanın! Sorguların gözlenmesi, doğru indexlerin seçilmesi

İç tablolar / viewlar pg_stat_activity pg_stat_database pg_stats_all_indexes(,tables) pg_statio_all(,sys,user)_indexes, tables, sequences postgresql.conf dosyasındaki ayarlar!

pg_stat_database xact_commit xact_rollback blks_read blks_hit

postgresql.conf ayarları max_connections, max_superuser_connections max_fsm_pages, Doğru ayarlanırsa : Daha hızlı VACUUM ve VACUUM FULL'a duyulan gereksinimin azaltılması fsync effective_cache_size

postgresql.conf ayarları shared_buffers Kernel tuning work_mem Sort, aggregate, vs. İşlem başına ayrılan bellek Çalışma anında değiştirilebiliyor.i

postgresql.conf ayarları maintenance_work_mem REINDEX, CREATE INDEX, ANALYZE, VACUUM, FOREIGN KEY işlemlerinde kullanılır. İşlem başına ayarlanabilir. Uygun ayar (tablo büyüklüğüne göre değişir)

postgresql.conf ayarları checkpoint_segment Yüksek sayıda transaction içeren veritabanları için önemli bir ayar Loglar takip edilir, uygun ayar belirlenir. Diskte kaplanan yere dikkat! (cs*2+1)*16 MB vacuum_cost_delay

pgpool Connection pooling Yoğun sistemler için çok uygun

Replikasyon Replikasyon kullanın! Raporlama işlemlerini slave sunucudan yapabilirsiniz. Slony-I, Mammoth Replicator

PostgreSQL Türkiye Hakkında PostgreSQL Türkiye Internet sitesi: http://www.postgresql.org.tr/ E-posta listesi: http://archives.postgresql.org/pgsql-tr-genel/ Latin-N türevi ve UTF8 karakter setlerinde yaşanan sorunlar.

Nereden İndirebilirsiniz? http://www.postgresql.org/ftp ftp://ftp.postgresql.org/ Türkiye yansısı: ftp://ftp6.tr.postgresql.org/ Bittorrent: bt.postgresql.org

Kaynaklar http://www.postgresql.org/ http://www.postgresql.org.tr/ http://www.postgresql.org/docs http://developer.postgresql.org/ http://www.pgfoundry.org/

Seminerin Güncel Hali http://www.gunduz.org/seminer/pg http://www.postgresql.org.tr/

PostgreSQL Veritabanı Sunucusu Başarım Arttırma Yöntemleri Devrim GÜNDÜZ PostgreSQL Geliştiricisi Command Prompt, Inc. devrim@commandprompt.com devrim@postgresql.org[.tr]