«postgresql-performance» etiketlenmiş sorular

PostgreSQL sorgularıyla ilgili performans sorunları


6
“En son karşılık gelen satır” ı nasıl verimli bir şekilde alabilirim?
Çok yaygın olması gereken bir sorgu şablonuna sahibim, ancak bunun için nasıl verimli bir sorgu yazacağımı bilmiyorum. Başka bir tablonun satırlarının "en sonra çıkmadığı son tarih" e karşılık gelen bir tablonun satırlarına bakmak istiyorum. inventoryBelirli bir günde sahip olduğum envanteri temsil eden bir masam var . date | good | …

2
WHERE cümleleri yazıldığı sırayla uygulanmış mı?
Büyük bir tabloya (37 milyon satır) bakan bir sorguyu optimize etmeye çalışıyorum ve işlemlerin bir sorguda hangi sırayla yürütüldüğü hakkında bir sorum var. select 1 from workdays day where day.date_day >= '2014-10-01' and day.date_day <= '2015-09-30' and day.offer_id in ( select offer.offer_day from offer inner join province on offer.id_province = …

2
Postgres sorgusunu büyük bir IN ile optimize etme
Bu sorgu, takip ettiğiniz kişilerin oluşturduğu yayınların bir listesini alır. Sınırsız sayıda kişiyi takip edebilirsiniz, ancak çoğu kişi <1000 kişiyi takip ediyor. Bu sorgu tarzıyla, bariz optimizasyon "Post"kimlikleri önbelleğe almak olacaktır , fakat ne yazık ki şu an bunun için zamanım yok. EXPLAIN ANALYZE SELECT "Post"."id", "Post"."actionId", "Post"."commentCount", ... FROM …

2
Aralık türünde tam eşitlikten kaynaklanan hatalı sorgu planı nasıl ele alınır?
Bir tstzrangedeğişkende tam bir eşitlik gerektiren bir güncelleme yapıyorum . ~ 1M satır değiştirilir ve sorgu ~ 13 dakika sürer. Bunun sonucu buradaEXPLAIN ANALYZE görülebilir ve gerçek sonuçlar, sorgu planlayıcısı tarafından tahmin edilenlerden oldukça farklıdır. Sorun şu ki, endeks taramasının açık kalması tek bir satırın dönmesini bekliyor.t_range Bu durum, aralık …


1
Tarihlerle endeks optimizasyonu
Bu soru, Veriyolu Yöneticileri Yığın Değişimi üzerinden yanıtlanabileceği için Yığın Taşması'ndan geçirilmiştir . 7 yıl önce göç etti . Eski bir alan için sorgulamak istediğim PostgreSQL 9.0.8'de büyük bir nesne tablosu (15M + satır) var. Ölçeklenebilirlik ve eşzamanlılık amacıyla sorguyu milyonlarca bölmek istiyorum ve birkaç gün önce bir tarih güncellendi_at …

1
İndeksler: düğüm sayısı aynı ise tamsayıya karşı dize performansı
Ruby on Rails'de PostgreSQL (9.4) veritabanı ile bir uygulama geliştiriyorum. Kullanım durumum için, uygulamanın bütün noktası bir model üzerinde çok özel özellikler ararken, tablolardaki sütunlar çok sık aranacaktır. Şu anda sütunlarda bir integertür kullanılıp kullanılmayacağına veya sütunlar için tipik bir dize türünün (örneğin character varying(255), Rails'teki varsayılan ) kullanılmasına karar …


1
VACUUM'u yalnızca INSERT alan bir tabloda çalıştırmaya değer mi?
2015 yılında yeniden icat konuşmasında, AWS vakumun sadece güncellemelerden veya sildikten sonra değil, aynı zamanda insertlerden sonra da çalıştırılması gerektiğini belirtti. İşte konuşmanın ilgili kısmı: http://www.youtube.com/watch?v=tZXp19q8RFo&t=16m2s Sözde, sadece kesici uçlar alsalar bile bloklar üzerinde yapılması gereken bir temizleme vardır ve bu temizleme, bir blok ilk seçildiğinde (okumaları yavaşlatma) veya vakum …

1
log_min_duration_statement ayarı yok sayıldı
Postgresql 9.1Ubuntu üzerinde koşuyorum . Tam Postgresql sürümü 9.1+129ubuntu1paket yöneticimin gösterdiği gibi. Aktif olarak kullanılan 2 veritabanım var ve bunlar uzak bir sunucudan kullanılıyor. Yürütme süresi uzun olan sorguları günlüğe kaydetmek istiyorum. Bu yüzden /etc/postgresql/9.1/main/postgresql.confdosyada aşağıdaki parametreleri ayarladım log_min_duration_statement = 10000 log_statement = 'mod' Postgresql, 10 saniyeden uzun süren sorguları …

1
Bu LEFT JOIN neden LEFT JOIN LATERAL'dan daha kötü performans gösteriyor?
(Sakila veritabanından alınan) aşağıdaki tabloları var: film: film_id pkey aktör: actor_id pkey film_actor: film_id ve actor_id, film / aktörün anahtarlarıdır Belirli bir film seçiyorum. Bu film için, o filme tüm aktörlerin de katılmasını istiyorum. Bunun için iki sorgu var: bir ile bir LEFT JOINve bir ile bir LEFT JOIN LATERAL. …


2
Büyük tabloda yavaş dizin taramaları
PostgreSQL 9.2 kullanarak, nispeten büyük bir tablo (200+ milyon satır) yavaş sorguları ile ilgili sorunlar var. Çılgınca bir şey denemiyorum, sadece tarihi değerler katıyorum. Sorgu ve sorgu planı çıktısı aşağıdadır. Tablo düzenim: Table "public.energy_energyentry" Column | Type | Modifiers -----------+--------------------------+----------------------------------------------------------------- id | integer | not null default nextval('energy_energyentry_id_seq'::regclass) prop_id | …

1
pgAdmin herhangi bir uzaktan çalıştırmada son derece yavaştır
Bu sorguyu geliştirici sunucumuza uzaktan bağlanan yerel pgAdmin'den çalıştırıyorum: select * from users order by random() limit 1; 17 saniye kilitleniyor ve gösteriyor Total query runtime: 148 ms. 1 row retrieved. ayrıca herhangi bir işlemde asılı kalır: bir masaya sağ tıklamak bile. Daha sonra RDP üzerinden bağlandığım ve aynı sorguyu …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.