«index» etiketlenmiş sorular

Disk alanı ve daha yavaş ekler / güncelleştirmeler pahasına sorgu hızını artırabilecek bir veritabanı yapısı. Bir veya daha fazla sütunun bir kopyasını sıralanmış olarak depolar, ancak daha hızlı erişim sağlamak için verileri farklı şekilde yapılandırır.

2
Dizinim neden SELECT TOP içinde kullanılmıyor?
İşte halsiz: Bir seçme sorgusu yapıyorum. WHEREVe ORDER BYdeyimlerindeki her sütun IX_MachineryId_DateRecorded, anahtarın bir parçası olarak veya INCLUDEsütunlar olarak tek bir kümelenmemiş dizinde bulunur. Ben seçerek ediyorum bütün bu imi arama sonuçlanacaktır sütunlar, ama sadece alıyorum TOP (1), bu yüzden mutlaka sunucu araması yalnızca sonunda, bir kez yapılması gereken söyleyebilir. …


3
En verimli UUID sütun türü nedir
128 bit UUID'yi depolamak için birden fazla depolama seçeneği vardır: bir bayt [16] sütunu iki bigint / long (64 bit) sütun bir CHAR (36) sütunu - 32 onaltılık basamak + 4 tire. db destekliyorsa UUID veritabanına özgü bir sütun Endeksleme açısından bunlardan hangisi en verimli? Eğer db tahsis edilmiş bir …

2
Postgres'te hızlı çarpma mesafesi sorguları
Ben algısal görüntü karma içeren büyük bir veritabanı (16M satır) var. Makul bir zaman aralığında mesafeyi sıkıştırarak satırları arayabilmek istiyorum . Şu anda, sorunu doğru bir şekilde anladığım kadarıyla, buradaki en iyi seçeneğin bir BK Ağacı uygulayan özel bir SP-GiST uygulaması olacağını düşünüyorum , ancak bu çok fazla iş gibi …

3
MySQL neden bu sipariş için yürürlükte olsa bile endeksi görmezden geliyor?
Ben bir EXPLAIN: mysql> explain select last_name from employees order by last_name; +----+-------------+-----------+------+---------------+------+---------+------+-------+----------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+-----------+------+---------------+------+---------+------+-------+----------------+ | 1 | SIMPLE | employees | ALL | NULL | NULL | NULL | …


2
Postgres'de ertelenebilir benzersiz dizin
Değişiklik tablosu için postgres belgelerine bakıldığında , düzenli kısıtlamalar DEFERRABLE(daha somut olarak, INITIALLY DEFERREDilgilendiğim şey) olarak işaretlenebilir. Dizinler, şu sürece bir kısıtlamayla da ilişkilendirilebilir: Dizinde ifade sütunları veya kısmi dizin olamaz Bu da şu anda aşağıdaki gibi koşullara sahip benzersiz bir dizine sahip olmanın bir yolu olmadığına inanmamı sağlıyor: CREATE …

1
Sütunları endekslediğimde bu sqlite sorgusu neden daha yavaş?
(Sahte) isimleri içeren, her biri 50.000 satır ile iki tablo ile bir sqlite veritabanı var. Her iki tablo için ortak olan kaç ad (verilen ad, orta ad, soyadı) olduğunu bulmak için basit bir sorgu oluşturdum: select count(*) from fakenames_uk inner join fakenames_usa on fakenames_uk.givenname=fakenames_usa.givenname and fakenames_uk.surname=fakenames_usa.surname and fakenames_uk.middleinitial=fakenames_usa.middleinitial; Birincil anahtarlar …

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 nvarchar sütununun boyutunu değiştirirken, benzersiz dizini bırakmam gerekir mi? Dizini yeniden oluştururken tablo kilitlenecek mi?
Veritabanımızda az çok şuna benzeyen büyük bir tablo var: CREATE TABLE dbo.production_data ( pd_id BIGINT PRIMARY KEY, serial NVARCHAR(16) NOT NULL UNIQUE, ... ); ama şimdi seri alanın boyutu düştü, bu yüzden bunu 32 olarak değiştirmek istiyorum. Visual Studio şema karşılaştırma aracı bunu yapmanızı önerir: DROP INDEX ux_production_data_serial ON dbo.production_data; …

5
Sys.dm_db_index_physical_stats performansını iyileştirin
Bir bakım işi sırasında, parçalanmış dizinlerin bir listesini almaya çalışıyorum. Ancak, sorgu son derece yavaştır ve yürütülmesi 30 dakikadan fazla sürer . Bunun sys.dm_db_index_physical_stats üzerindeki uzaktan taramadan kaynaklandığını düşünüyorum. Aşağıdaki sorguyu hızlandırmanın bir yolu var mı: SELECT OBJECT_NAME(i.OBJECT_ID) AS TableName, i.name AS TableIndexName FROM sys.dm_db_index_physical_stats(DB_ID(), NULL, NULL, NULL, 'DETAILED') phystat …

3
Dizinlenmiş sütun içeren büyük bir tabloda ALTER TABLE
Bir VARCHAR (20) sütun ile büyük bir tablo var ve bir VARCHAR (50) sütun olmak için değiştirmek gerekir. Genellikle, bu özel tabloda bir ALTER TABLE (bir TINYINT ekleyerek) işleminin tamamlanması yaklaşık 90-120 dakika sürer, bu yüzden veritabanının kullanıcılarını etkilemekten kaçınmak için bunu sadece bir Cumartesi veya Pazar gecesi yapabilirim. Mümkünse …

5
Bu 20 milyon kayıt görünümünü daha hızlı nasıl sorgulayabilirim?
Bir arama işlevselliği için aramam gereken tüm tablolardan kayıtları olan bir görünüm kullanıyorum. Görüşte yaklaşık 20 milyon kayıt var. Bu görüşe yapılan aramalar çok fazla zaman alıyor. Bu görüşün performansını artırmak için nereye bakmalıyım? Görünümün kabaca tanımı aşağıdadır. On üç tablo ve yaklaşık otuz alan içerir. CREATE VIEW [dbo].[v_AllForSearch] AS …


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.