ďťż
 
duza baza - jaka ďťż
 
duza baza - jaka
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

duza baza - jaka



Trompele - 20-05-2006 00:05
duza baza - jaka
  Witam,
Mam za zadanie wybrac i ew wdrozyc system bazodanowy.
Wymagania:
1. Potrafiacy przeszukiwac spore ilosci danych
2. Bezpieczny (replikacje/clustering)
3. Skalowalny
4. W miare szybki

System mialby za zadanie przetrzymywac okolo 100 mln rekordow bez relacji (w
przyszlosci do 200 mln i wiecej)
Zapis do bazy danych odbywal by sie sporadnycznie, raz do roku kilkudniowe
ladowanie danych. Baza danych bedzie wykorzystywana przez kilka dziesiat osob
do wyszukiwania danych ktore sa w niej zawarte. Powiedzmy do 100 zapytan przez
jedna osobe w ciagu dnia, czyli maksymalnie 10 000 zapytan dziennie (zapewne
srednio bedzie kolo 1000).
Co wybrac ? Cos z opensource mysql/postgresql czy moze lepiej komercyjne
ms/oracle ? Jaki sprzet do tego bedzie potrzebny? czy baze ze 100 mln rekordow
mozemy nazwac duza ? Moze jakies inne rozwiazania ? Przetrzymywanie tego w
plikach tekstowych raczej nie wchodzi w rachube. Budzet jest ograniczony ale
powiedzmy ze firme stac na dedykowane serwery ktore beda ta bazke trzymaly.
Pozdrawiam i dzieki za jakiekolwiek informacje jak sie zabrac do oceny wymagan
takiej bazy.

T

--
Wysłano z serwisu OnetNiusy: http://niusy.onet.pl





Krzysztof Paz - 20-05-2006 00:05

  Na początek,
proponuję zerknąć na bezpłatną wersję IBM DB2 Express-C -
http://www-306.ibm.com/software/data...load.html#v824,
dostępną dla Linux i Windows.
Ma ograniczenie do 2 procesorów i 4GB RAM, ale za to nie ma limitu
uzytkowników czy rozmiaru bazy i nic nie kosztuje.
Zawiera pełne narzędzia (GUI i cmd) do administracji i zarządzania serwerem
oraz dobrą dokumentację.

Jak już kiedyś projekt przekroczy wydolność takiej maszyny, do na cztery
procki z 16GB RAM i także pod komeryjne UNIXy (AIX, Solaris, HP-UX), polecam
płatną edycję DB2 Workgroup -
http://www-306.ibm.com/software/data...tion-wsue.html

Jeśli trzeba będzie kiedykolwiek coś więcej - to bez żadnych ograniczeń
platformowo-sprzętowych warto rozważyć edycję DB2 Enterprise -
http://www-306.ibm.com/software/data...ition-ese.html

Do budowy klastra bezpieczeństwa warto rozważyć mechaniz DB2 HADR -
http://www-306.ibm.com/software/data/db2/udb/hadr.html

Pozdrawiam,
Krzysztof.




dap - 20-05-2006 00:05

  Trompele wrote:
> Witam,
> Mam za zadanie wybrac i ew wdrozyc system bazodanowy.
> Wymagania:
> 1. Potrafiacy przeszukiwac spore ilosci danych
-duzo ramu 16GB do 32 GB
> 2. Bezpieczny (replikacje/clustering)
-mysql (oracle i mssql za drogie)
> 3. Skalowalny
-mysql@amd - mozna dodac dodatkowe procesory, pamiec
> 4. W miare szybki
j.w.

> System mialby za zadanie przetrzymywac okolo 100 mln rekordow bez relacji (w
> przyszlosci do 200 mln i wiecej)
> Zapis do bazy danych odbywal by sie sporadnycznie, raz do roku kilkudniowe
> ladowanie danych. Baza danych bedzie wykorzystywana przez kilka dziesiat osob
> do wyszukiwania danych ktore sa w niej zawarte. Powiedzmy do 100 zapytan przez
> jedna osobe w ciagu dnia, czyli maksymalnie 10 000 zapytan dziennie (zapewne
> srednio bedzie kolo 1000).
> Co wybrac ? Cos z opensource mysql/postgresql czy moze lepiej komercyjne
> ms/oracle ? Jaki sprzet do tego bedzie potrzebny? czy baze ze 100 mln rekordow
> mozemy nazwac duza ? Moze jakies inne rozwiazania ? Przetrzymywanie tego w
> plikach tekstowych raczej nie wchodzi w rachube. Budzet jest ograniczony ale
> powiedzmy ze firme stac na dedykowane serwery ktore beda ta bazke trzymaly.
> Pozdrawiam i dzieki za jakiekolwiek informacje jak sie zabrac do oceny wymagan
> takiej bazy.

Zalezy ile w niej bedziesz mial danych ja bym tradycyjnie sprobowal od
mysql@linux na amd64@sun :) Sprzet moze byc tzw. firmowe noname, jako ze
wpisy beda raz na jakis czas to i backupy odpadaja.

Z lepszy to moze ten http://www.sun.com/servers/entry/x4200/

Jesli dostep bedzie tylko przez selecty to mozna pobawic sie z innymi
bazkami.

dap

--
,= ,-_-. =. gnu.org
((_/)o o(\_)) polanski.biz
`-'(. .)`-' xoops.pl
\_/




hubert depesz lubaczewski - 21-05-2006 00:23

  Trompele wrote:
> 1. Potrafiacy przeszukiwac spore ilosci danych

zalezy co to za przeszukwianie. inaczej bym stawial na pelnotesktowke, a
inaczej na przeszukwianie przy pomocy normalnych operatorów "=", ">", "<" i
pochodne.

> 2. Bezpieczny (replikacje/clustering)

to teraz ma praktycznie kazda baza.

> 3. Skalowalny

#define skalowalny

> 4. W miare szybki

a to jest bardzo wzgledne.

> System mialby za zadanie przetrzymywac okolo 100 mln rekordow bez relacji
> (w przyszlosci do 200 mln i wiecej)
> Zapis do bazy danych odbywal by sie sporadnycznie, raz do roku kilkudniowe
> ladowanie danych. Baza danych bedzie wykorzystywana przez kilka dziesiat
> osob do wyszukiwania danych ktore sa w niej zawarte. Powiedzmy do 100
> zapytan przez jedna osobe w ciagu dnia, czyli maksymalnie 10 000 zapytan
> dziennie (zapewne srednio bedzie kolo 1000).

tak na oko to bym zgadywał, że jest to system typu dss.
gdybym był na twoim miejscu to:
1. poszukałbym firmy która zanalizuje problem i przedstawi rozwiązania.
lub:
2. postawił postgresa na odpowiednio dużej maszynie. jeśli przestanie sie
wyrabiać, to z postgresa można trywialnie prosto przejść na bizgresmpp, a
ta baza bezstresowo sobie poradzi z danymi w takiej ilosci lub nawet sporo
wiekszymi.

> Co wybrac ? Cos z opensource mysql/postgresql czy moze lepiej komercyjne
> ms/oracle ? Jaki sprzet do tego bedzie potrzebny? czy baze ze 100 mln
> rekordow mozemy nazwac duza ? Moze jakies inne rozwiazania ?

100 milionów - raczej średnia. duża nie jest. choć to też zależy co to za
rekordy :)
na pewno mozna tym z miare normalnie operować. nie wiem jaki masz profil
zapytań. jakie zapytanie na takiej bazie będziesz wykonywał, jaki czas to
"długo", a jaki "krótko".

> Przetrzymywanie tego w plikach tekstowych raczej nie wchodzi w rachube.
> Budzet jest ograniczony ale powiedzmy ze firme stac na dedykowane serwery
> ktore beda ta bazke trzymaly. Pozdrawiam i dzieki za jakiekolwiek
> informacje jak sie zabrac do oceny wymagan takiej bazy.

oceń czego dokładnie oczekujesz od takiej bazy.
jeśli np. jest to baza z której będziesz robił raporty za każdym razem
używając 50% rekordów z bazy. i muszą być gotowe w np. 2 sekundy, to będzie
ci potrzebny inny sprzęt/software niż jeśli będziesz robił wyszukiwania
typu:
select * from tabela where pola=cośtam;
co zazwyczaj zwróci ci 0.001% rekordów.

anyway - ze swojej strony polecam postgresa, dedykowane *sensowne* serwery i
macierz. udźwignie raczej bez większych problemów - ale tak jak
powiedziałem - wszystko zależy od profilu użytkowania.

depesz

p.s. <reklama>firma gdzie pracuje robi konsulting w sprawach baz danych,
postgresa, instalacji, optymalizacji itd. jeśli cię interesuje, odezwij
się.</reklama>

--
http://www.depesz.com/ - nowy, lepszy depesz





genuine - 21-05-2006 00:23

 
> Witam,
> Mam za zadanie wybrac i ew wdrozyc system bazodanowy.
> Wymagania:
> 1. Potrafiacy przeszukiwac spore ilosci danych
> 2. Bezpieczny (replikacje/clustering)
> 3. Skalowalny
> 4. W miare szybki
>

z tym bezpieczenstwem to zabrzmialo jak z taniej ulotki marketingowej. :)
Ja jednak proponuje baze komercyjna nie musi byc oracle, ale m$ sql.
rozlożenie plików danych, prawdziwa strategia backupu, dts, no i szybkie
przywrocenie. a nie musisz kupować ms'a na wielu uzytkownikow - przeciez i
tak dostarczysz im jakis loyout do wprowadzania parametrów.




T - 21-05-2006 00:23

  hubert depesz lubaczewski wrote:

>> 1. Potrafiacy przeszukiwac spore ilosci danych
> zalezy co to za przeszukwianie. inaczej bym stawial na pelnotesktowke, a
> inaczej na przeszukwianie przy pomocy normalnych operatorów "=", ">", "<"
> i pochodne.

Przeszukiwanie bedzie odbywalo sie na stringach i jego czesciach.
Czyli mamy np tabele: imie, nazw, adresnr,adresulica,miasto,kodpocztowy
I wpisuje np: Roman Mazur,
Oczekuje ze wyswietli mi wszystkie rekordy ktore zawieraja i Roman i Mazur,

>> 2. Bezpieczny (replikacje/clustering)
> to teraz ma praktycznie kazda baza.
Chodzi mi o latwe tworzenie i przywracanie kopi zapasowej danych w razie
uszkodzenia dysku/dyskow/macierzy.

>> 3. Skalowalny
>
> #define skalowalny
W tym roku mam 100 mln danych w nastepnych 200 mln zeby sie nie okazalo ze
niestety baza obsluzy do 199 mln ;]

> tak na oko to bym zgadywa?, ?e jest to system typu dss.
> gdybym by? na twoim miejscu to:
> 1. poszuka?bym firmy która zanalizuje problem i przedstawi rozwi?zania.
> lub:
> 2. postawi? postgresa na odpowiednio du?ej maszynie. je?li przestanie sie
> wyrabia?, to z postgresa mo?na trywialnie prosto przej?? na bizgresmpp, a
> ta baza bezstresowo sobie poradzi z danymi w takiej ilosci lub nawet sporo
> wiekszymi.

Raczej wlasnie sie rozgladam, jezeli nie bede w stanie sam ocenic wymagan
napewno skorzytam z jakiejs firmy zew firmy , chociaz wolalbym tego
uniknac.

>> Co wybrac ? Cos z opensource mysql/postgresql czy moze lepiej komercyjne
>> ms/oracle ? Jaki sprzet do tego bedzie potrzebny? czy baze ze 100 mln
>> rekordow mozemy nazwac duza ? Moze jakies inne rozwiazania ?
>
> 100 milionów - raczej ?rednia. du?a nie jest. cho? to te? zale?y co to za
> rekordy :)
> na pewno mozna tym z miare normalnie operowa?. nie wiem jaki masz profil
> zapyta?. jakie zapytanie na takiej bazie b?dziesz wykonywa?, jaki czas to
> "d?ugo", a jaki "krótko".

Rekordami beda stringi skladowane w powiedzmy 15 kolumnach varchar. Wielkosc
jednego rekordu to gora 500 znakow

>> Przetrzymywanie tego w plikach tekstowych raczej nie wchodzi w rachube.
>> Budzet jest ograniczony ale powiedzmy ze firme stac na dedykowane serwery
>> ktore beda ta bazke trzymaly. Pozdrawiam i dzieki za jakiekolwiek
>> informacje jak sie zabrac do oceny wymagan takiej bazy.
>
> oce? czego dok?adnie oczekujesz od takiej bazy.
> je?li np. jest to baza z której b?dziesz robi? raporty za ka?dym razem
> u?ywaj?c 50% rekordów z bazy. i musz? by? gotowe w np. 2 sekundy, to
> b?dzie ci potrzebny inny sprz?t/software ni? je?li b?dziesz robi?
> wyszukiwania typu:
> select * from tabela where pola=co?tam;
> co zazwyczaj zwróci ci 0.001% rekordów.

Oczekuje odpowiedzi w powiedzmy czasie do minuty. Wynik bedzie zawieral do
100 rekordow najwiecej (ze wzgledu na to, ze czlowiek bedzie musial je
przejzec i wybrac najodpowiedniejsze - zatem bedzie musial ograniczac
wielkosc wyniku)
Zapytanie: select * from tabela where pola=co?tam; jak najbardziej pasuje do
tego w jaki sposob beda wyszukiwane dane.

> anyway - ze swojej strony polecam postgresa, dedykowane *sensowne* serwery
> i macierz. ud?wignie raczej bez wi?kszych problemów - ale tak jak
> powiedzia?em - wszystko zale?y od profilu u?ytkowania.

Wiec juz powiedzialem, czas odpowiedzi nie jest tutaj priorytetem,
wazniejsze sa funkcje ciaglej dostepnosci, bezawaryjnosci i skalowalnosci.
Ogolnie mowiac bardziej zalezy mi na przechowywaniu tych danych a potem
dopiero wygodzie uzytkownika (czas odpowiedzi itp).

> depesz

> p.s. <reklama>firma gdzie pracuje robi konsulting w sprawach baz danych,
> postgresa, instalacji, optymalizacji itd. je?li ci? interesuje, odezwij
> si?.</reklama>

Jesli kosulting moze odbyc sie w jezyku angielskim i firma nie stara sie na
sile "wcisnac" postgresa to prosze o namiary.

Pozdrawiam

T




hubert depesz lubaczewski - 21-05-2006 00:23

  T wrote:
> Wiec juz powiedzialem, czas odpowiedzi nie jest tutaj priorytetem,
> wazniejsze sa funkcje ciaglej dostepnosci, bezawaryjnosci i skalowalnosci.
> Ogolnie mowiac bardziej zalezy mi na przechowywaniu tych danych a potem
> dopiero wygodzie uzytkownika (czas odpowiedzi itp).

każd będzie ci polecał taką bazę jaką zna. ja/my znamy postgresa i jego
polecamy. potrafimy go skalować, potrafimy zapewnić ciągłą (oczywiście
kwestia ciągłości jest względna. cyz mówimy o 6 dni w tygodniu przez 8
godzin (ciągłość w/g niektórych) czy 99.9999% czasu (ciągłość w/g innych)).
backupy itd. są oczywiście proste i nie przeszkadzają w pracy.

>> p.s. <reklama>firma gdzie pracuje robi konsulting w sprawach baz danych,
>> postgresa, instalacji, optymalizacji itd. je?li ci? interesuje, odezwij
>> si?.</reklama>
> Jesli kosulting moze odbyc sie w jezyku angielskim i firma nie stara sie
> na
> sile "wcisnac" postgresa to prosze o namiary.

konsulting może się odbywać po angielsku. co do postgresa - jego znamy
bardzo dobrze. to może być minusem, bo w oczywisty sposób wpływa na nasze
propozycje. znamy jednak też jego wady i mówimy o tym otwarcie (aczkolwiek
żadna ze znanych wad postgresa nie wydaje mi się być istotna przy takim
projekcie).

depesz

--
http://www.depesz.com/ - nowy, lepszy depesz




dap - 21-05-2006 00:23

 
Pozwole się podłączyć...

>>>1. Potrafiacy przeszukiwac spore ilosci danych
>>
>>zalezy co to za przeszukwianie. inaczej bym stawial na pelnotesktowke, a
>>inaczej na przeszukwianie przy pomocy normalnych operatorów "=", ">", "<"
>>i pochodne.
>
>
> Przeszukiwanie bedzie odbywalo sie na stringach i jego czesciach.
> Czyli mamy np tabele: imie, nazw, adresnr,adresulica,miasto,kodpocztowy
> I wpisuje np: Roman Mazur,
> Oczekuje ze wyswietli mi wszystkie rekordy ktore zawieraja i Roman i Mazur,

Wyszukiwanie wg. pojedynczych wyrazów w jednej kolumnie nie jest żadnym
problemem dla chyba zadnej bazy danych. Problem jest gdy dana osoba
będzie miała dwa imiona, przedrostek przed nazwiskiem i tytul.
Dodatkowym problemem jeśli pozwoli się na wyszukiwanie przez wyrażenia
regularne z przodu np. *nna - może być i Hanna, i Anna, Zuzanna, itd...

>>>2. Bezpieczny (replikacje/clustering)
>>
>>to teraz ma praktycznie kazda baza.
>
> Chodzi mi o latwe tworzenie i przywracanie kopi zapasowej danych w razie
> uszkodzenia dysku/dyskow/macierzy.

Skoro dane są ładowne raz na kilka miesięcy to i kopia zapasowa będzie
robiona tylko w tym czasie. A że pewnie ładowanie danych będzie sie
wiazalo z wylaczeniem bazy danych to mozna rownoczesnie zrobic
cold-backup, polagajacy na przekopiowaniu odpowiednich plików.

Replikacja/Klastry zapewniaja przede wszystkim dostępność i skalowalność
bazy danych.

>>>3. Skalowalny
>>
>>#define skalowalny
>
> W tym roku mam 100 mln danych w nastepnych 200 mln zeby sie nie okazalo ze
> niestety baza obsluzy do 199 mln ;]

To ile wreszcia ich ma byc? 100mln co rok przez 10 lat?

> Rekordami beda stringi skladowane w powiedzmy 15 kolumnach varchar. Wielkosc
> jednego rekordu to gora 500 znakow

W najgorszym przypadku
15*500*100000000=750000000000/1024/1024/1024 = 698 GB (dane bez
indeksów) - chyba troche przesadzone

15*50*100000000=750000000000/1024/1024/1024 = 69 GB (dane bez indeksów)
-nie ma problemu :)

> Oczekuje odpowiedzi w powiedzmy czasie do minuty. Wynik bedzie zawieral do
> 100 rekordow najwiecej (ze wzgledu na to, ze czlowiek bedzie musial je
> przejzec i wybrac najodpowiedniejsze - zatem bedzie musial ograniczac
> wielkosc wyniku)

Ok - top 100 jak w google :)

> Zapytanie: select * from tabela where pola=co?tam; jak najbardziej pasuje do
> tego w jaki sposob beda wyszukiwane dane.

Być może będzie sensowne użycie wiekszej ilości tabeli np. z miastami,
imionami, kodami pocztowymi - aby uniknąć błędów przy wpisywaniu danych.
Prawdopodobnie partycjonowanie też będzie konieczne

>>anyway - ze swojej strony polecam postgresa, dedykowane *sensowne* serwery
>>i macierz. ud?wignie raczej bez wi?kszych problemów - ale tak jak
>>powiedzia?em - wszystko zale?y od profilu u?ytkowania.
>
>
> Wiec juz powiedzialem, czas odpowiedzi nie jest tutaj priorytetem,
> wazniejsze sa funkcje ciaglej dostepnosci, bezawaryjnosci i skalowalnosci.
> Ogolnie mowiac bardziej zalezy mi na przechowywaniu tych danych a potem
> dopiero wygodzie uzytkownika (czas odpowiedzi itp).

ciaglej - a dokladniej to 24/7/356 czy moze raczej 8/5/250?
bezawaryjność - to zalezy od sprzetu :)
skalowalnosc - ilość danych się zmieni czy tez moze ilość użytkowników?

Po tym liście skłaniem sie raczej w stron Oracle (choc mysql tez da z
tym rade), ale w wypadku rozwiazan komercyjnych przygotuj sie na duze
wydatki zwiazane z licencjami (szczegolnie M$).

dap

--
,= ,-_-. =. gnu.org
((_/)o o(\_)) polanski.biz
`-'(. .)`-' xoops.pl
\_/




=?ISO-8859-2?Q?Micha=B3?= Kuratczyk - 23-05-2006 00:24

  Trompele wrote:
> czy baze ze 100 mln rekordow mozemy nazwac duza ?
Można, tylko po co? ;->

SQL> select count(*) from user_tables where num_rows > 100000000;

COUNT(*)
----------
4

SQL> select sum(num_rows) from user_tables;

SUM(NUM_ROWS)
-------------
2141594484

--
Michał Kuratczyk




Grzesiek G. - 25-05-2006 00:50

  genuine napisał(a):
>>Witam,
[...]
> Ja jednak proponuje baze komercyjna nie musi byc oracle, ale m$ sql.
> rozlożenie plików danych, prawdziwa strategia backupu, dts, no i szybkie
> przywrocenie. a nie musisz kupować ms'a na wielu uzytkownikow - przeciez i
> tak dostarczysz im jakis loyout do wprowadzania parametrów.

Co nie zwalnia (prawnie, nie technicznie) z konieczności zakupu
odpowiedniej liczby licencji.

Pozdrawiam

--
Grzegorz Gruza
Odpowiadając usuń "spamerom_nie." z adresu!!!
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    Baza Accessa bez Accessa Zrywanie =?ISO-8859-2?Q?po=B3aczen_z_baza_danych_-_pos?==?ISO-8859-2?Q?tgresql_=3C-=3E_odbc?= =?iso-8859-2?q?co_wybra=E6_=3F=3F_Baza_Mysql_na_serwerze_gdzi e=B6_w_polsce_czy_......?= [oracle] Baza danych do kursy Introduction to Oracle9i:PL/SQL ? Skąd ją pobrać ? Problem z zapytaniem SQL - Excel i baza danych SQL Serwer 2000 Współużytkowanie jednej bazy poprzez 2 komputery (uzupełnianie) jak ? (Baza w MS acces97 na 1 komp.) =?ISO-8859-2?Q?Baza_danych_2_TB_-_uda_si=EA_w_PostgreSQL=3F?= Baza danych EnterpriseED - =?ISO-8859-2?Q?wra=BFenia/opinie=3F?= [MS SQL] program do zarządzania bazą coś innego niż Managment Studio katalog lost+found figuruje jako baza danych MySQL
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • bajkomoda.xlx.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com