DevProTalk

DevProTalk (http://www.devprotalk.com/index.php)
-   SQL baze podataka - Sponzor: Baze-Podataka.net (http://www.devprotalk.com/forumdisplay.php?f=10)
-   -   3k i vise entrija na ~ svaka 2 minuta (http://www.devprotalk.com/showthread.php?t=3899)

mangia 31. 10. 2007. 01:05

3k i vise entrija na ~ svaka 2 minuta
 
Jedno pitanjce...

Nisam neki extra programer i baze poznajem onoliko koliko mi je bilo potrebno. Sad cackam nesto ozbiljnije pa imam jednu nedoumicu...

Na svaka 2-3 minuta se generise fajl sa nekih 2-3k linija... ideja je da to trpam u bazu radi kasnijeg cackanja...

podaci u fajlu su tipa

IP adresa - IP adresa - broj (pri cemu je broj ne veci od x xxx xxx)

E sad ideja je da to jos malo pretresem ali kako bi se ponasao mysql sa ovako velikim tabelama... Ideja je takodje da se podaci ciste nakon 60 dana tj da se ostavi samo konacna suma u neku manju tabelicu....

Sve bi se vrtilo na malo jacem sistemu koji ne bi radio nista drugo osim toga...

skaarj 31. 10. 2007. 01:43

Ako sam dobro izracunao to bi u najgorem slucaju bilo oko 2M inserta tokom 24h. To nije jako strasno za MySQL na dobroj masini. Ono sto bih ti savetovao je da tabele delis na manje jer je muka raditi sa tabelama koje imaju 10 ili 20M slogova.

To bi znacilo da kreiras novu tabelu svakih nekoliko dana i onda polako kako neki interval istice brises stare tabele.

Dejan Topalovic 31. 10. 2007. 02:14

1. za tu svrhu mozes komotno koristiti LOAD naredbu (ukoliko format u datoteci nije neki nestandardan)
2. kreiraj jednu prihvatnu tabelu za te podatke iz fajlova
3. kreiraj jos jednu tabelu za summary podatke

Dovoljno informacija? :D

ivanhoe 31. 10. 2007. 02:18

^^ dobri saveti... i razmisli o tome da se digne replika koja ce se koristiti za obradu podataka, znaci u master upisujes, a na replici radis komplikovane upite za analizu koji zahtevaju vremena..

misk0 31. 10. 2007. 09:41

2-3 min - 2-3K linija... znaci prosjek 1min - 1k linija?
dnevno 1440min = 1.44M redova.. 60 dana - 86.4M redova.

mangia 31. 10. 2007. 13:29

Hvala svima na odovorima... Moja ideja je da se na nekih 10-ak minuta sirov sadrzaj trpa u jednu tabelu... Onda da se pokrece skripta koja ce sumirati podatke iz te tabele i na osnovu toga dodavati entrije u novu tabelu ...

Problem mi je sto se ovde radi o trenutnom stanju... Broj linija ce se povecavati a praviti nesto sto ce brzo udariti u plafon...

Sad se razmisljam o rrd-u ...

Nego vidim ovde dosta poznatih likova... A vi kako te... :)

misk0 31. 10. 2007. 13:33

u koji plafon?

mangia 31. 10. 2007. 14:03

Nebo :)

Salim se... Radi se o podacima za izlaznih rutera a kako raste broj korisnika tako raste i kolicina podataka koja se loguje... Ideja je da pored klasicnog accounting-a koji radi uredno, logujem i ove podatke... Kasnije mogu da radim neke specijalne stvari sa njima... tipa jedna tarifa za promet unutar odredjenih IP opsega, druga tarifa za druge IP opsege itd.

jablan 31. 10. 2007. 14:07

Pa jednom dnevno (ili na svaki sat recimo) možeš da pokrećeš skript koji će razvrstavati slogove i dodavati promet po kategorijama u neku sumarnu tabelu, posle možeš da obrišeš konkretne podatke.

ivanhoe 31. 10. 2007. 16:26

pa sve zavisi sta ti sve treba od podataka, i koliko komplikovanu obradu planiras kasnije... RRD radi posao za dosta toga... ako je saobracaj bas velik mozes da radis i obican dump u log fajl, i onda da imas proces (tipa: tail -f log | parse.pl ) koji naknadno parsira to u bazu, tako da ne mora insert u bazu da bude u real time-u..


Vreme je GMT +2. Trenutno vreme je 16:46.

Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.

Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.