Struktura bazy danych, która może poprawić szybkość zapytań kosztem miejsca na dysku oraz wolniejsze wstawianie / aktualizacje. Przechowuje kopię jednej lub więcej posortowanych kolumn, ale dane są uporządkowane inaczej, aby umożliwić szybszy dostęp.
Słyszałem dziś tylko o Robercie Martinie i wygląda na to, że jest znaczącą postacią w świecie oprogramowania, więc nie mam na myśli, że mój tytuł wygląda tak, jakby to była przynęta na kliknięcie lub wkładam słowa do jego ust, ale to po prostu jak interpretowałem to, co od niego usłyszałem, …
Posiadamy hurtownię danych z dość dużą liczbą rekordów (10-20 milionów wierszy) i często uruchamiamy zapytania, które zliczają rekordy między określonymi datami lub liczą rekordy z określonymi flagami, np. SELECT f.IsFoo, COUNT(*) AS WidgetCount FROM Widgets AS w JOIN Flags AS f ON f.FlagId = w.FlagId WHERE w.Date >= @startDate GROUP …
Właśnie natknąłem się na dziwny problem, w którym w zależności od sposobu utworzenia indeksu wymagana jest nazwa indeksu. http://dev.mysql.com/doc/refman/5.5/en/create-index.html http://dev.mysql.com/doc/refman/5.5/en/alter-table.html CREATE INDEX `random_name` ON `my_table` (`my_column`); # Requires an index name ALTER TABLE `my_table` ADD INDEX (`my_column`); # Does not require an index name Wydaje mi się, że wywołanie CREATE …
Próbuję dowiedzieć się więcej na temat operatora planu zapytań „sprawdzanie referencji klucza obcego” wprowadzonego w SQL Server 2016. Nie ma na ten temat zbyt wielu informacji. Microsoft ogłosił to tutaj, a ja blogowałem o tym tutaj . Nowego operatora można zobaczyć, usuwając wiersz z tabeli nadrzędnej z 254 lub więcej …
To pytanie zostało przeniesione z przepełnienia stosu, ponieważ można na nie odpowiedzieć w programie Exchange Exchange Administrators Database Administrator. Migrował 7 lat temu . Mam dużą tabelę obiektów (15M + wiersz) w PostgreSQL 9.0.8, dla których chcę zapytać o nieaktualne pole. Chcę podzielić zapytanie na miliony, dla celów skalowalności i …
Jestem nowy w PostgreSQL i trochę nowy w bazach danych w ogóle. Czy istnieje ustalony sposób indeksowania wartości UUID w Postgres? Jestem podzielony między używaniem mieszania i używania trie, chyba że jest już coś wbudowanego, z którego korzysta automatycznie. Cokolwiek użyję, będzie obsługiwać ogromne ilości danych. Rodzina operatorów SP-GiST „text_ops” …
Mam dwa stoliki @T1 TABLE ( Id INT, Date DATETIME ) @T2 TABLE ( Id INT, Date DATETIME ) Te tabele mają indeks nieklastrowany (Id, Data) I dołączam do tych tabel SELECT * FROM T1 AS t1 INNER JOIN T2 AS t2 ON t1.Id = t2.Id WHERE t1.Date <= GETDATE() …
Od czasu do czasu uruchamiając program Microsoft SQL Server Profiler, sugeruje mi kilka nowych indeksów i statystyk do stworzenia („... 97% szacowana poprawa ...”). Z mojego zrozumienia każdą dodaną indeks może dokonać SQL SELECTkwerendy szybciej, ale również UPDATElub INSERTzapytania wolniejsze od indeksy muszą być skorygowane. Zastanawiam się, kiedy mam „zbyt …
Tworzę aplikację w Ruby on Rails z bazą danych PostgreSQL (9.4). W moim przypadku użycia kolumny w tabelach będą bardzo często wyszukiwane, ponieważ cały punkt aplikacji szuka bardzo specyficznych atrybutów w modelu. Obecnie jestem podejmowaniu decyzji, czy użyć integertypu lub po prostu użyć typowy typu string (np character varying(255), który …
Mam interesujące pytanie dotyczące SARGability. W tym przypadku chodzi o użycie predykatu na podstawie różnicy między dwiema kolumnami dat. Oto konfiguracja: USE [tempdb] SET NOCOUNT ON IF OBJECT_ID('tempdb..#sargme') IS NOT NULL BEGIN DROP TABLE #sargme END SELECT TOP 1000 IDENTITY (BIGINT, 1,1) AS ID, CAST(DATEADD(DAY, [m].[severity] * -1, GETDATE()) AS …
Używam PostgresSQL 9.2 i mam relację 12 kolumn z około 6 700 000 wierszy. Zawiera węzły w przestrzeni 3D, z których każdy odnosi się do użytkownika (który go utworzył). Aby zapytać, który użytkownik utworzył, ile węzłów wykonuję:explain analyze aby uzyskać więcej informacji): EXPLAIN ANALYZE SELECT user_id, count(user_id) FROM treenode WHERE …
Jak utworzyć indeks do filtrowania określonego zakresu lub podzbioru tabeli w MySQL? AFAIK nie można utworzyć bezpośrednio, ale myślę, że można symulować tę funkcję. Przykład: Chcę utworzyć indeks dla NAMEkolumny tylko dla wierszy zSTATUS = 'ACTIVE' Ta funkcja nazywa się indeksem filtrowanym w programie SQL Server i indeksem częściowym w …
Często muszę uruchamiać zapytania względem dużych tabel, które nie mają właściwego indeksu. Dlatego proszę DBA o utworzenie takiego indeksu. Pierwszą rzeczą, którą robi, jest przeglądanie statystyk tabeli i sprawdzanie wielkości przestrzeni indeksu. Często kazał mi znaleźć alternatywne rozwiązanie, ponieważ „indeks jest już większy niż tabela”. Uważa, że indeks musi być …
Zastanawiamy się, czy użyć opcji SORT_IN_TEMPDB dla naszych tabel DW. Rozumiem, że przy tej opcji jest więcej zapisów, chociaż są one bardziej sekwencyjne. Mamy SAN (który czasami był bardzo wolny), więc w naszym przypadku chcemy ograniczyć liczbę zapisów tak bardzo, jak to możliwe. Wierzę, że tempdb znajduje się na osobnej …
To pytanie dotyczy mojego starego pytania . Wykonanie poniższego zapytania trwało od 10 do 15 sekund: SELECT [customer].[Customer name],[customer].[Sl_No],[customer].[Id] FROM [company].dbo.[customer] WHERE (Charindex('123456789',CAST([company].dbo.[customer].[Phone no] AS VARCHAR(MAX)))>0) W niektórych artykułach widziałem, że używanie CASTi CHARINDEXnie skorzysta z indeksowania. Istnieje również kilka artykułów, które mówią, że używanie LIKE '%abc%'nie skorzysta z indeksowania, …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.