Na tym etapie próbuję zdecydować o projekcie bazy danych, przy możliwie jak najmniejszej liczbie założeń (dotyczących tego, jak faktycznie rozwija się aplikacja internetowa). Pierwszym krokiem jest zrozumienie, że DOŁĄCZENIA są drogie, rozważam niewielką liczbę monolitycznych tabel w przeciwieństwie do dużej liczby znormalizowanych mniejszych tabel. Po drugie, jestem zdezorientowany między używaniem …
Używamy MongoDB od kilku tygodni, ogólny trend, który widzieliśmy, był taki, że mongodb zużywa zbyt dużo pamięci (znacznie więcej niż cały rozmiar zestawu danych + indeksy). Przeczytałem już to pytanie i to pytanie , ale wydaje się, że żadne nie odnosi się do problemu, z którym się spotkałem, w rzeczywistości …
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 …
Testuję usuwanie danych z klastrowego indeksu magazynu kolumn. Zauważyłem, że w planie wykonania jest duży chętny operator szpuli: Uzupełnia to następujące cechy: Usunięto 60 milionów wierszy Zastosowano 1.9 GiB TempDB 14 minutowy czas realizacji Plan szeregowy 1 ponowne wiązanie na szpuli Szacowany koszt skanowania: 364,821 Jeśli skłonię estymatora do niedoceniania, …
Powiedzmy, że mam zdefiniowaną tabelę Fooz kolumnami ID1, ID2i złożonym kluczem podstawowym ID2, ID1. (Obecnie pracuję z produktem System Center, który ma kilka tabel zdefiniowanych w ten sposób, a kolumny klucza podstawowego są wymienione w odwrotnej kolejności niż w definicji tabeli). CREATE TABLE dbo.Foo( ID1 int NOT NULL, ID2 int …
To pytanie zostało już zadane w przypadku przepełnienia stosu , ale tylko w przypadku MySQL. Używam PostgreSQL. Niestety (i zaskakująco) PostgreSQL nie wydaje się mieć czegoś takiego CHECKSUM table. Rozwiązanie PostgreSQL byłoby w porządku, ale ogólne byłoby lepsze. Znalazłem http://www.besttechtools.com/articles/article/sql-query-to-check-two-tables-have-identical-data , ale nie rozumiem zastosowanej logiki. Tło: Ponownie napisałem kod …
Uaktualniliśmy do MySQL 5.6 i zaczęliśmy zauważać znaczny wzrost obciążenia serwera db, i wreszcie dowiedzieliśmy się, że query_cache_typedomyślnie domyślnie ustawiony jest na start od 5.6. Włączyliśmy go ponownie i widzimy zmniejszenie ładowania, dlaczego ta wartość jest domyślnie wyłączona, zaczynamy od MySQL 5.6? Nie widzę problemu z włączoną obsługą.
Rozważ tabelę wartości i skrótów, takie jak: +------------+----------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------+----------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | val | char(9) | NO | | NULL | | | val_hashed | char(50) …
Mam tabelę z kolumną o nazwie article_title. Powiedzmy, że nazwa tabeli to articles. Muszę znaleźć rekordy, w których article_titledane są takie same w więcej niż jednym rekordzie. Oto co mam: select a.* from articles a where a.article_title = (select article_title from articles where article_title = a.article_title AND a.id <> articles.id)
Przeprowadzam aktualizację, w której wymagam dokładnej równości tstzrangezmiennej. ~ 1M wierszy jest modyfikowanych, a zapytanie zajmuje ~ 13 minut. Wynik EXPLAIN ANALYZEmożna zobaczyć tutaj , a rzeczywiste wyniki są bardzo różne od tych oszacowanych przez narzędzie do planowania zapytań. Problem polega na tym, że podczas skanowania indeksu t_rangeoczekuje się zwrócenia …
To może nie być całkowicie na temat, ale tutaj jest wolny dzień. Czy istnieje bardziej skuteczna metoda uzyskania listy liczb od 1 do 49 z kolumną zawierającą słowa FIZZ, w których liczbę można równomiernie podzielić przez 3, BUZZgdy liczbę można równomiernie podzielić przez 5, a FIZZBUZZliczbę można podzielić równo przez …
Używam PostgreSQL 9.1 i mam tabelę użytkowników z loginkolumną. W nazwach logowania rozróżniana jest wielkość liter, na przykład Bob, MikE, John. Chciałbym przekształcić wszystkie te rekordy w małe litery. Jak mogę to zrobić?
Podczas stosowania UNPIVOTfunkcji do danych, które nie są znormalizowane, SQL Server wymaga, aby typ danych i długość były takie same. Rozumiem, dlaczego typ danych musi być taki sam, ale dlaczego UNPIVOT wymaga, aby długość była taka sama? Powiedzmy, że mam następujące przykładowe dane, które muszę rozdzielić: CREATE TABLE People ( …
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.