Thread View: pl.comp.lang.php
17 messages
17 total messages
Started by niepełnosprawny intelektualnie '...
Thu, 19 Jan 2017 17:18
zawijanie logów
Author: niepełnosprawny intelektualnie '...
Date: Thu, 19 Jan 2017 17:18
Date: Thu, 19 Jan 2017 17:18
22 lines
1557 bytes
1557 bytes
jeśli dla uproszczenia przyjąć, że do bazy logujemy wszystkie wejścia na stronę to jak zrobić najlepiej zawijanie? czyli jak kasować najstarsze wpisy zostawiając N ostatnich? nie żebym z gębą na pączki... mój pomysł jest taki: ilczę conutem ilość wpisów sprawdzam czy kwalifikują się do kasowania odczcytuję 100 najstarszych wpisów poprzez select z sortowniem po dacie wyszukuję w nich największy ID kasuję wszystkie wpisy i id<ID... co Panowie na to? ogólnie to ja nawet nie jestem programistą, nie dopuścili mnie na politechnice warszawskiej, więc jakby Ktoś coś to z góry dzięki?
Re: zawijanie logów
Author: niepełnosprawny intelektualnie '...
Date: Thu, 19 Jan 2017 17:20
Date: Thu, 19 Jan 2017 17:20
2 lines
1045 bytes
1045 bytes
nie do końca ogarniam sortowanie, czy sortowanie odbywa sie po sprawdzeniu warunku czy przed?
Re: zawijanie logów
Author: Stokrotka
Date: Thu, 19 Jan 2017 17:37
Date: Thu, 19 Jan 2017 17:37
32 lines
1917 bytes
1917 bytes
> jeśli dla uproszczenia przyjąć, że do bazy logujemy wszystkie wejścia na > stronę to jak zrobić najlepiej zawijanie? > > czyli jak kasować najstarsze wpisy zostawiając N ostatnich? > > nie żebym z gębą na pączki... > > mój pomysł jest taki: > > ilczę conutem ilość wpisów > > sprawdzam czy kwalifikują się do kasowania > > odczcytuję 100 najstarszych wpisów poprzez select z sortowniem po dacie > > wyszukuję w nich największy ID > > kasuję wszystkie wpisy i id<ID... > > co Panowie na to? ogólnie to ja nawet nie jestem programistą, nie > dopuścili mnie na politechnice warszawskiej, więc jakby Ktoś coś to z góry > dzięki? Co znaczy "czy kwalifikują się do kasowania" I wydaje mi się, że poza ilością powinien być conajmniej drugi warunek na datę (ma być dość stara). -- (tekst bez: ó, ch, rz i -ii) Ortografia to NAWYK, często nielogiczny, ktury ludzie ociężali umysłowo, nażucają bezmyślnie następnym pokoleniom.
Re: zawijanie logów
Author: niepełnosprawny intelektualnie '...
Date: Thu, 19 Jan 2017 18:02
Date: Thu, 19 Jan 2017 18:02
5 lines
1092 bytes
1092 bytes
oj tam nie domyślasz się? jeśli count zwróci 100 mln to przy wpisie 100 mln + 100 kasuje...
Re: zawijanie logów
Author: Darek
Date: Thu, 19 Jan 2017 19:15
Date: Thu, 19 Jan 2017 19:15
47 lines
2543 bytes
2543 bytes
Użytkownik "Stokrotka" napisał w wiadomości grup dyskusyjnych:o5qtgf$8ps$1@usenet.news.interia.pl... > jeśli dla uproszczenia przyjąć, że do bazy logujemy wszystkie wejścia na > stronę to jak zrobić najlepiej zawijanie? > > czyli jak kasować najstarsze wpisy zostawiając N ostatnich? > > nie żebym z gębą na pączki... > > mój pomysł jest taki: > > ilczę conutem ilość wpisów > > sprawdzam czy kwalifikują się do kasowania > > odczcytuję 100 najstarszych wpisów poprzez select z sortowniem po dacie > > wyszukuję w nich największy ID > > kasuję wszystkie wpisy i id<ID... > > co Panowie na to? ogólnie to ja nawet nie jestem programistą, nie > dopuścili mnie na politechnice warszawskiej, więc jakby Ktoś coś to z góry > dzięki? Co znaczy "czy kwalifikują się do kasowania" I wydaje mi się, że poza ilością powinien być conajmniej drugi warunek na datę (ma być dość stara). -- (tekst bez: ó, ch, rz i -ii) Ortografia to NAWYK, często nielogiczny, ktury ludzie ociężali umysłowo, nażucają bezmyślnie następnym pokoleniom. Jak w piosence - Spotkali się (...) Miejscowa idiotka z tutejszym kretynem." :) --- Ta wiadomość została sprawdzona na obecność wirusów przez oprogramowanie antywirusowe Avast. https://www.avast.com/antivirus
Re: zawijanie logów
Author: Adam
Date: Thu, 19 Jan 2017 21:24
Date: Thu, 19 Jan 2017 21:24
29 lines
1547 bytes
1547 bytes
W dniu 2017-01-19 o 18:18, niepełnosprawny intelektualnie 'POPIS/EU pisze: > jeśli dla uproszczenia przyjąć, że do bazy logujemy wszystkie wejścia na > stronę to jak zrobić najlepiej zawijanie? > > czyli jak kasować najstarsze wpisy zostawiając N ostatnich? > > nie żebym z gębą na pączki... > > mój pomysł jest taki: > > ilczę conutem ilość wpisów > > sprawdzam czy kwalifikują się do kasowania > > odczcytuję 100 najstarszych wpisów poprzez select z sortowniem po dacie > > wyszukuję w nich największy ID > > kasuję wszystkie wpisy i id<ID... > A co w przypadku, gdy cały log będzie miał 80 rekordów? -- Pozdrawiam. Adam
Re: zawijanie logów
Author: niepełnosprawny intelektualnie '...
Date: Fri, 20 Jan 2017 16:17
Date: Fri, 20 Jan 2017 16:17
5 lines
1140 bytes
1140 bytes
> A co w przypadku, gdy cały log będzie miał 80 rekordów? no to wtedy ktoś dostaje grant i problemu nie ma... NA TEMAT proszę!
Re: zawijanie logów
Author: Rafal Podsiadly
Date: Sat, 21 Jan 2017 07:30
Date: Sat, 21 Jan 2017 07:30
30 lines
3087 bytes
3087 bytes
Trochę teorii. 1. Zbierając logi w jednej tabeli dochodzisz do pewnego ograniczenia. (Jedna tabela jest jednym plikiem w systemie bazodanowym). Z czasem pojawia się problem miejsca i szybkość z jaką otwiera system bazodanywy pliki. Pytanie do ilu rekordów maksymalnie jesteś w stanie sobie pozwolić. 100 rekordów to znacznie za mało by mieć dobrą analizę błędów logów. Możesz taką ilość osiągnąć w kilka sekund. PS: Dopiero fragmentacja tabeli powoduje fizyczne usunięcie z niej miejsca. Wyjściem z rozwiązania jest budowanie Tabel które przechowują archiwum w okresach miesięcznych. arch_xxxx_xx usuwanie danych ograniczało by się do usunięciu tabeli. Rozpiszmy to na zbiory danych 1. jedna tabela -> dane_insert(id, data, dane) - odpalamy crone który cyklicznie uruchamiamy 1 dziennie. Sprawdza ilość rekordów usuń wszystko z warunkiem id < (count(archiwum) - 100) - (max_id) Trochę kombinowania... PS: dellete wykonuje następujące operacje. Odszukuje rekord o danym id następnie sprawdza czy rekord jest używany, zablokowany i dokonuje próbę zmiany statusu rekordu na usunięty aby można było w przyszłości przy fragmentacji zwolnić miejsce. Efekt dość spora ilość operacji wykonywana przez silnik bazy danych. 2. Rozwiązanie (tabela archiwum odpowiadająca archiwum) Odczyt danych przez widok, zapisywanie danych przez procedurę. Usuwanie danych przez trunce -> delette table. Na przykład zamiast przechowywać dane rekordy w ilości 100. Przechowujemy x miesięcy. Efekt usuwanie szybsze. Mniejsze tabele zapewniają lepszą elastyczność systemu. PS: jeśli danych masz mało to można rozdzielić to na lata.
Re: zawijanie logów
Author: Borys Pogoreło
Date: Sat, 21 Jan 2017 10:29
Date: Sat, 21 Jan 2017 10:29
14 lines
1481 bytes
1481 bytes
Dnia Fri, 20 Jan 2017 23:30:05 -0800 (PST), Rafal Podsiadly napisał(a): > Z czasem pojawia się problem miejsca i szybkość z jaką otwiera system > bazodanywy pliki. Pytanie do ilu rekordów maksymalnie jesteś w stanie > sobie pozwolić. W sensownej bazie z dobrze założonymi indeksami wielkość tabeli praktycznie nie ma znaczenia przy odczycie. Niepotrzebnie to komplikujesz, bardziej baza się spoci przy takim krojeniu na kawałki, niż przy dopisywaniu nowych rekordów i wyszukiwaniu. -- Borys Pogoreło borys(#)leszno,edu,pl
Re: zawijanie logów
Author: Rafal Podsiadly
Date: Sat, 21 Jan 2017 12:13
Date: Sat, 21 Jan 2017 12:13
1 lines
1410 bytes
1410 bytes
Wrzuć do mysql 1TB danych.
Re: zawijanie logów
Author: w systemie siła 'PO/EU
Date: Sat, 21 Jan 2017 15:05
Date: Sat, 21 Jan 2017 15:05
6 lines
1328 bytes
1328 bytes
po roku zbierania logów (w sumie praktycznie same przeglądarki) mam tak http://zsyp.eu/smieci/baza-index.JPG nie wiem czy to normalne, czy index jest za duży?
Re: zawijanie logów
Author: Darek
Date: Sat, 21 Jan 2017 18:17
Date: Sat, 21 Jan 2017 18:17
15 lines
1839 bytes
1839 bytes
Witam tutejszego kretyna :) A gdzie miejscowa idiotka ? Użytkownik "niepełnosprawny intelektualnie 'POPIS/EU" napisał w wiadomości grup dyskusyjnych:o5td6b$vp0$2@node1.news.atman.pl... > A co w przypadku, gdy cały log będzie miał 80 rekordów? no to wtedy ktoś dostaje grant i problemu nie ma... NA TEMAT proszę! --- Ta wiadomość została sprawdzona na obecność wirusów przez oprogramowanie antywirusowe Avast. https://www.avast.com/antivirus
Re: zawijanie logów
Author: w systemie siła 'PO/EU
Date: Sat, 21 Jan 2017 18:21
Date: Sat, 21 Jan 2017 18:21
1 lines
1107 bytes
1107 bytes
ooo, zdecydowany grantobiorca, cześć kurwo...
Re: zawijanie logów
Author: Roman Tyczka
Date: Sat, 21 Jan 2017 22:47
Date: Sat, 21 Jan 2017 22:47
9 lines
1201 bytes
1201 bytes
On Sat, 21 Jan 2017 04:13:56 -0800 (PST), Rafal Podsiadly wrote: > Wrzuć do mysql 1TB danych. Użyj postgressa, mysql to zabawka a nie "sensowna baza danych". -- pozdrawiam Roman Tyczka
Re: zawijanie logów
Author: Rafal Podsiadly
Date: Sun, 22 Jan 2017 17:27
Date: Sun, 22 Jan 2017 17:27
4 lines
1572 bytes
1572 bytes
Przy tak małych wynikach po co je usuwać po 100 wynikach. A tak zapytam czy zrzucasz informacje o momencie zapisu rekordu NOW(), usunięcie wszystkich danych starszych niż rok było by lepsze. A najlepsze Dump + gzip tabeli(by mieć archiwum a tak na wszelki wypadek) -> i zresetowanie jej (truncate). Od razu masz fragmentacje tabeli.
Re: zawijanie logów
Author: Borys Pogoreło
Date: Sun, 22 Jan 2017 20:34
Date: Sun, 22 Jan 2017 20:34
13 lines
1519 bytes
1519 bytes
Dnia Sat, 21 Jan 2017 04:13:56 -0800 (PST), Rafal Podsiadly napisał(a): > Wrzuć do mysql 1TB danych. I w czym widzisz problem w tym przypadku, bo nie rozumiem? Logi to głównie dopisywanie nowych rekordów, z rzadkim wyszukaniem po dacie, czasem po innym kryterium. Jeśli będziesz na tym 1TB robić jakieś większe operacje, to bez odpowiedniego zaprojektowania tabeli wszystko siądzie, ale to dotyczy praktycznie każdej bazy. -- Borys Pogoreło borys(#)leszno,edu,pl
Re: zawijanie logów
Author: Borys Pogoreło
Date: Sun, 22 Jan 2017 20:34
Date: Sun, 22 Jan 2017 20:34
15 lines
1541 bytes
1541 bytes
Dnia Sat, 21 Jan 2017 23:47:09 +0100, Roman Tyczka napisał(a): >> Wrzuć do mysql 1TB danych. > > Użyj postgressa, mysql to zabawka a nie "sensowna baza danych". Zależy do czego, replikację i skalowanie mają rozwiązane bardzo dobrze. Przykładowo UBER się zwinął z Postgresa, bo baza u nich nie dała rady od pewnej skali: https://eng.uber.com/mysql-migration/ Facebook też ma sporo rozwiązań oparte o MySQL. -- Borys Pogoreło borys(#)leszno,edu,pl
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads