«optimization» etiketlenmiş sorular

Bir veritabanı bağlamında, optimizasyon, etkin bir fiziksel yürütme planının seçildiği sorgu iyileştirici sürecini ifade eder.

2
Eksik tarihleri ​​grup için önceki doldurulmuş tarihten veri değeriyle doldurun
Bölümler arasında aktarılan resim yardım masası biletleri. Biletin açık olduğu her gün için her bir bilet için günün sonunda bölümün ne olduğunu bilmek istiyoruz. Tabloda, açık olduğu her gün için her bir biletin son bölümü, bölümde bir değişiklik olduğu (biletin ilk açıldığı tarih ve kapatıldığı tarih için bir satır dahil) …

5
SentryOne Plan Explorer çalışıyor mu?
SentryOne Plan Explorer reklamı yapılan gibi mi çalışıyor ve yasal mı? Endişelenecek bir şey var mı? Öyle görünüyor ki, SSMS'nin tahmini yürütme planı için bir kabusa benzeyen renkteki sıcak yolu gösteriyor. Endişelerim - herhangi bir veriyi kötü amaçlı veya başka bir şekilde değiştiriyor mu? edit : Ben sadece duymuştum ve …

1
Günlüğe Kaydedilmeyen Yavaş Sorgular
Optimizasyon kullanabilen sorguları tanımlamak için sunucumuzda yavaş sorgu günlüğünü etkinleştirmeye çalışıyorum. Kulağa yeterince basit geliyor, ancak dosyama yazılmıyor. Hiçbir hata ya da benzeri bir şey olsun, sadece yavaş sorguları günlüğü gibi görünmüyor. Benim yapılandırma değiştikten sonra mysql yeniden başlatmayı hatırladım. MySQL Ver 5.1.61 kullanıyorum. İşte my.cnf içinde ne var: slow-query-log=1 …

1
Bu benzer sorgular neden farklı optimizasyon aşamaları kullanıyor (işlem işleme ile hızlı plan arasında)?
Bu bağlantı öğesindeki örnek kod Nerede bir hata gösterir SELECT COUNT(*) FROM dbo.my_splitter_1('2') L1 INNER JOIN dbo.my_splitter_1('') L2 ON L1.csv_item = L2.csv_item Doğru sonuçları verir. Ancak aşağıdakiler yanlış sonuçlar döndürür (2014'te yeni Kardinalite Tahmincisi'ni kullanarak) SELECT (SELECT COUNT(*) FROM dbo.my_splitter_1('2') L1 INNER JOIN dbo.my_splitter_1('') L2 ON L1.csv_item = L2.csv_item) L2 …

2
WHERE sorgusu, daha zorlu karşılaştırmalar (yani varchar) çalıştırmadan önce daha basit karşılaştırmaları (yani bit) denetler mi?
Bileşik bir WHEREcümle içeren bir sorgu yazarsanız , örneğin: SELECT * FROM MyTable WHERE BitField = 1 AND VarcharField = 'asdf' ve bu bitkarşılaştırmanın dahil edilmesi, karşılaştırmanın hariç varchartutacağı alanları hariç tutar; bu bitalan karşılaştırmasının varlığı bana bir performans artışı sağlayacak mı?

2
Bu sorgu neden kümelenmemiş dizinimi kullanmıyor ve bunu nasıl yapabilirim?
Sorgu performansını artırmayla ilgili bu soruyu takip ederken , dizinimi varsayılan olarak kullanmanın bir yolu olup olmadığını bilmek istiyorum. Bu sorgu yaklaşık 2,5 saniye içinde çalışır: SELECT TOP 1000 * FROM [CIA_WIZ].[dbo].[Heartbeats] WHERE [DateEntered] BETWEEN '2011-08-30' and '2011-08-31'; Bu yaklaşık 33 ms içinde çalışır: SELECT TOP 1000 * FROM [CIA_WIZ].[dbo].[Heartbeats] …


2
Dizinlerle ilişkili DEĞİL mantığı kullanımı
Microsoft'un veritabanı geliştirme kitabına göre Sınav 70-433: Microsoft SQL Server 2008 Veritabanı Geliştirme : Mantık DEĞİL olmayan önde gelen joker karakterler , sorgu optimize edicinin aramayı optimize etmek için dizinler kullanmasına izin vermez. En iyi performans için NOT anahtar sözcüğünü ve önde gelen joker karakter sembollerini kullanmaktan kaçınmalısınız . Bu …


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
CTE neden satır içi alt sorgulardan daha kötü?
Im daha iyi sorgu planlayıcısı postgresql içinde nasıl çalıştığını anlamaya çalışıyorum. Bu sorguyu var: select id from users where id <> 2 and gender = (select gender from users where id = 2) order by latest_location::geometry <-> (select latest_location from users where id = 2) ASC limit 50 Kullanıcı tablosunda …

2
MAXDOP = 1, Paralellik İçin Sorgu İpuçları ve Maliyet Eşiği
Bir örnek MAXDOP1 olarak ayarlandıysa ve belirli sorguların paralel gitmesine izin vermek için sorgu ipuçları kullanılıyorsa, gerçekte paralel olup olmayacağına karar vermek için SQL tarafından hala Paralellik için Maliyet Eşiği kullanılıyor mu? Her ne kadar bu bağlantı 1 ise CTFP'nin yok sayıldığını düşündürse de bu özel bilgiyi kazamamıştım MAXDOP. Bu, …

2
Dökülmelerin tempdb'ye düşme şansını azaltmak için satır tahminleri nasıl geliştirilebilir?
Tempdb olayları (yavaş sorgulara neden) dökülme olduğunda genellikle satır tahminleri belirli bir katılmak için yol olduğunu fark ettim. Dökülme olaylarının birleştirme ve karma birleştirmelerle gerçekleştiğini gördüm ve genellikle çalışma süresini 3x ila 10x artırdılar. Bu soru, dökülme olayları olasılığını azaltacağı varsayımı altında satır tahminlerinin nasıl iyileştirileceği ile ilgilidir. Gerçek Sıra …

1
Postgres: count (*) - count (id)
Ben gördüğüm belgelere arasındaki farkı count(*)ve count(pk). Ben kullanarak olmuştu count(pk)(burada pkbir olduğunu SERIAL PRIMARY KEYvarlığı hakkında bilmeden) değil count(*). Sorum Postgres'in dahili optimizasyonları hakkında. SERIAL PRIMARY KEYHer satırda a'nın var olacağını ve asla yanlış olmayacağını ve sadece satırları sayacağını alacak kadar akıllı mı yoksa her satır için fazladan yüklem …


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.