«index-tuning» etiketlenmiş sorular

Hangi indekslerin yararlı ve hangilerinin yararlı olmadığını belirleme süreci.

3
EXISTS sorgum neden dizin araması yerine dizin taraması yapıyor?
Bazı sorguları optimize etmeye çalışıyorum. Aşağıdaki sorgu için, SET STATISTICS IO ON; DECLARE @OrderStartDate DATETIME2 = '27 feb 2016'; DECLARE @OrderEndDate DATETIME2 = '28 feb 2016'; SELECT o.strBxOrderNo , o.sintOrderStatusID , o.sintOrderChannelID , o.sintOrderTypeID , o.sdtmOrdCreated , o.sintMarketID , o.strOrderKey , o.strOfferCode , o.strCurrencyCode , o.decBCShipFullPrice , o.decBCShipFinal , o.decBCShipTax …

4
Büyük index INCLUDE alanları sistem performansını nasıl etkiler?
Bu soru, bir kaplama dizininde varchar(2000)bir ile SQL Server dizin performansı hakkındadır INCLUDE. Yavaş ve kararsız bir veritabanı uygulamasında performansı artırmaya çalışıyorum. Bazı durumlarda, veri gibi multple dize operasyonları gibi sorgu ile büyük varchar dizeleri üzerinden erişilen SUBSTRING(), SPACE()ve DATALENGTH(). İşte basitleştirilmiş erişim örneği; update fattable set col3 = SUBSTRING(col3,1,10) …

4
Endeks Benzersizliği Yükü
Ofisimdeki çeşitli geliştiricilerle bir endeksin maliyeti hakkında ve benzersizliğin yararlı mı yoksa maliyetli mi (muhtemelen her ikisi de) olup olmadığı konusunda sürekli bir tartışma yaşıyorum. Sorunun en önemli noktası rakip kaynaklarımızdır. Arka fon Daha önce Uniquebir Insertişlemin B ağacına sığdığı yeri dolaylı olarak kontrol ettiğinden ve benzersiz olmayan bir dizinde …

2
Hesaplanan Sütun Dizini Kullanılmıyor
İki sütun eşit olup olmadığına göre hızlı bir arama yapmak istiyorum. Bir dizin ile hesaplanan bir sütun kullanmaya çalıştım, ancak SQL Server kullanmak gibi görünmüyor. Ben sadece bir dizin ile statik olarak doldurulmuş bir bit sütunu kullanırsanız, beklenen dizin arama olsun. Görünüşe göre bunun gibi başka sorular var, ama hiçbiri …

1
Bir sorguyu `NEREDE alanı NULL`dir?
Ben alanlardan birini ( uploaded_at) ayarını ekler bir sürü ile bir tablo var NULL. Daha sonra periyodik bir görev tüm tuples'ları seçer WHERE uploaded_at IS NULL, bunları işler ve günceller, uploaded_atgüncel tarihe ayarlar . Tabloyu nasıl indekslemeliyim? Anlamak gibi kısmi bir dizin kullanmanız gerektiğini anlıyorum: CREATE INDEX foo ON table …

2
Büyük mysql tablolarına dizin ekleme
Masam var | base_schedule_line_items | CREATE TABLE base_schedule_line_items( idint (10) imzasız NOT NULL AUTO_INCREMENT, installmentint (10) imzasız NOT NULL, on_datetarih NULL DEĞİL, actual_datetarih DEFAULT NULL, payment_typeint (11) NULL DEĞİL, scheduled_principal_outstandingondalık (65,0) NULL DEĞİL, scheduled_principal_dueondalık (65,0) NULL DEĞİL, scheduled_interest_outstandingondalık (65,0) NULL DEĞİL, scheduled_interest_dueondalık (65,0) NULL DEĞİL, currencyint (11) NULL DEĞİL, updated_atdatetime …

1
Kullanılmayan NONCLUSTERED INDEX hala sorgu hızını artırabilir mi?
Bu garip bir durum, ama birinin cevap vermesini umuyorum. Bazı performans sorunlarını giderme sırasında, istendiği gibi tabloya NONCLUSTERED INDEX ekledik sp_BlitzIndex. Ertesi gün kullanımını kontrol ettik ve 0 okuma gösterdi ( 0 tarama / arama, 0 tekil arama ), bu yüzden devre dışı bıraktık. Önümüzdeki dakika, INDEX'i eklediğimizde ilk etapta …

3
SQL Server 2012'de bir PK GUID'in indekslenmesi
Geliştiricilerim, tablolarını hemen hemen tüm tabloları için GUID'leri PK olarak kullanacak şekilde ayarladılar ve SQL Server varsayılan olarak bu PK'larda kümelenmiş dizini kurdu. Sistem nispeten genç ve en büyük tablolarımız bir milyondan biraz fazla, ancak dizinlememize bir göz atıyoruz ve yakın gelecekte ihtiyaç duyulabileceği için hızlı bir şekilde ölçeklendirmek istiyoruz. …

1
Bu senaryoda hangi dizin kullanılacak?
SQL Server 2014 Standart Sürüm Belirli aylar için belirli şehirlere gidiş ve dönüş uçuş sayısını bulmam gerekiyor. Örneğin select count(*) from flights where flightTo_AirportCode = 'aaaa' and flightFrom_Airportcode = 'bbbb' and flightdate < '2016-04-01' and flightdate > '2016-02-28' ; Tablo şeması aşağıdadır. İndeks modelA veya dizin modelB (aşağıda) tercih edilebilir …


1
Farklı tablolardan ORDER BY ile TOP 1 seçildiğinde dizinlenmiş görünüm nasıl ayarlanır
Aşağıdaki sorgu iki kümelenmiş dizin taraması olmadan gerçekleştirir, böylece aşağıdaki senaryoda dizinli bir görünüm kurmak için mücadele ediyorum. Ne zaman bu sorgu için bir dizin görünümü oluşturmak ve sonra kullanmak, ben koymak herhangi bir dizin yoksay gibi görünüyor: -- +++ THE QUERY THAT I WANT TO IMPROVE PERFORMANCE-WISE +++ SELECT …

3
Bir dizin mi yoksa iki dizin mi?
Veritabanımdaki bir tabloda aşağıdaki dizin oluşturuldu: CREATE INDEX [idx_index1] on [table1] (col1, col2, col3) Sunucu aşağıdaki 'eksik' dizini öneriyor: CREATE INDEX [idx_index2] on [table1] (col1, col2) INCLUDE (col3, col4, col5, col6....) Korunması gereken yeni bir dizin oluşturmak yerine, mevcut dizin tanımını önerilen sütunları içerecek şekilde değiştirmek bana mantıklı geliyor. Col1 …

2
Kullanılmayan Dizinlere İlişkin En İyi Uygulamalar
Bu sorguya dayanarak, toplam okumaların düşük bir miktarını (0 veya 0, 1 veya 2 gibi çok yakın) ve yüksek veya orta miktarda kullanıcı güncellemelerini (bu sorgu ile ekler veya silmeyi bulamadım) görürsem büyük bir satır sayısı, teorik olarak dizin kaldırmak gerekir . SELECT DISTINCT OBJECT_NAME(s.[object_id]) AS ObjectName , p.rows TableRows …

1
2,135,044,521 satırlık tabloda dizini en iyileştirme
Büyük bir tablo ile bir G / Ç sorunum var. Genel istatistikler Tablo aşağıdaki ana özelliklere sahiptir: çevre: Azure SQL Veritabanı (katman P4 Premium (500 DTU)) satırlar: 2,135,044,521 1.275 bölümler kullanılmış kümelenmiş ve bölümlenmiş dizin model Bu tablo uygulamasıdır: CREATE TABLE [data].[DemoUnitData]( [UnitID] [bigint] NOT NULL, [Timestamp] [datetime] NOT NULL, …

3
PostgreSQL indekslerinde null değerlerini kullanabilir mi?
Bu kitabı okudum ki Veritabanı, Indexed_Col IS NOT NULL değerinin yararlı olmak için çok büyük bir aralığı kapsadığını varsayar, bu nedenle veritabanı bu koşuldan bir dizine gitmez. Kitabın 10 yaşından büyük olduğunu biliyorum, ancak zaten oldukça yararlı olduğunu kanıtladı - Sayfalarından toplanan talimatları kullanarak, on kat artarak bir sorgu hızlandırdım. …

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.