eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingOptymalizacjaRe: Optymalizacja
  • Data: 2011-05-15 09:22:02
    Temat: Re: Optymalizacja
    Od: Bolo <b...@o...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    >
    > Baza danych będzie prosta - rekord z 'nazwą' danej, jej wartością i
    > datą zapisania (każda dana to jeden rekord, danych będzie kilkanaście,
    > zapis co 10sek 24h/7/365. Źródeł tych danych będzie więcej, dla każdego
    > przewidziana jest osobna tabela, będzie tego nieokreślona liczba - na
    > pewno będą przybywać).

    Ja bym nie robil osobnej tabeli na kazda - mozesz wrzucic wszystko do
    jednej wyrozniajac np. IDTypu + tabelka IDTypu, Nazwa
    Mas jednolita obsluge KAZDEGO zrodla, bez wielkich kombinacji

    >
    > Pytanie jest takie: czy warto (a jeśli tak to w jakich okolicznościach)
    > 'upakowywać' dane składowane w bazie - na takiej zasadzie, że jeśli
    > dana się nie zmieniła to robimy update rekordu zmieniając datę na
    > aktualną (czyli w skrajnym wypadku w bazie będzie jeden rekord
    > dotyczący danej, która nigdy się nie zmieniła). Dane będą różne - ale
    > zawsze zdarzą się serie powtarzających się wartości.

    To zalezy co chcesz osiagnac. Jezeli chcesz miec pelne archiwum, czyli
    jak sie cos w czasie zmienialo, to nie update, tylko insert kazdej
    wartosci.


    >
    > Z danych tych będą sporządzane wykresy (raczej dla każdego źródła
    > osobno - czyli zapytania w obrębie jednej tabeli) - tutaj właśnie
    > powstała różnica zdań. Niektórzy boją się dużej liczby danych do
    > obrobienia (po kilku latach) i długiego czasu generowania wykresu.
    > Przeciwnicy twierdzą, że po to jest baza danych, żeby składować dane a
    > takie kombinacje w kodzie aplikacji zniweczą oszczędności. I w ogóle
    > pachnie to 'premature optimization'.

    Ale co znaczy "dlugiego czasu"? 15 sek? czy 20 godzin?
    Jezeli masz tak prosta baze to obojetnie ile tych danych bedzie, przy
    sensowanie zalozonych indeksach i sensownym zapytaniu - czasy beda w
    sekundach.

    >
    > Dodatkowe pytanie - czy język programowania lub silnik bazy danych może
    > mieć wpływ na odpowiedź na to pytanie (celowo nie wspomniałem w czym to
    > jest robione)?

    Jezyk mniej, silnik na pewno. Plus - sposob generowania wykresow i
    przygotowania danych.
    Jezeli zrzucisz robote przygotowujaca dane do wykresu na serwer to
    czas bedzie inny niz przegladniecie 3-4 milionow rekordow pozycja po
    pozycji w aplikacji.

    Za duzo mozliwosci, za malo informacji - takie teoretyzowanie :)
    Generalnie - ja bym zrobil jedna tabele, wrzucal wszystko co dostane a
    pozniej...proste/mniej proste selecty wyciagajace dane do wykresow.

    Pozdrawiam
    Bolo

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: