Tematy na forum Pro mogą zakładać jedynie moderatorzy. W otwartych tematach może pisać każdy, kto ma coś fachowego do powiedzenia. Wszystkie posty nie wnoszące nic do tematu będą natychmiast usuwane, a ich autorzy dostaną ostrzeżenie.
Jeśli uważasz, że jakiś temat jest warty dyskusji na tym forum, zgłoś go w temacie Propozycje.
Post
#1
|
|
|
Admin Techniczny Grupa: Administratorzy Postów: 2 072 Pomógł: 93 Dołączył: 5.07.2005 Skąd: Olsztyn |
Temat założony na prośbę SHIPa oraz normanosa traktujący o rozkładaniu obciążenia na wiele maszyn
|
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 53 Pomógł: 0 Dołączył: 16.11.2004 Ostrzeżenie: (0%)
|
Rashid, porównujesz z MySQLem i słusznie zauważyłeś, że MySQL w wielu przypadkach najszybszy nie jest.
Jeśli masz wybór jedynie BDB vs MySQL, to faktycznie BDB może w wielu sytuacjach byc lepzym rozwiązaniem i tu się calkowicie zgadzam. Natomiast w poprzednich postach pisałem bardziej ogólnie, chodziło mi po prostu o RDBMS, jako taki, nie jakąś konkretną implementację, jak MySQL, który jest jedną z gorszych implementacji systemu relacyjnego na rynku. No, a skoro mówimy o load-balancingu, to rozumiem, że wchodzą w grę nie tlylko rozwiązania niskobudżetowe. Cytat - przetwarzanie SQL Realnie kosztuje 0, plany wykonania zapytań w dobrych RDBMSach są buforowane. A nawet jeśli nie są domyślnie, to są, gdy się użyje prepared statement. Cytat - zarzadzanie indeksami Utrzymania indeksów nie unikniesz też w BDB jeśli gdziekolwiek masz aktualizacje. Każdy hash w BDB jest indeksem. Cytat - zarzadzanie sesjami i transakcjami Nie ma żadnego powodu, aby transakcje w BDB kosztowały mniej niż w RDBMS. Można ręcznie określić poziom izolacyjności transakcji. Nie potrzebujesz, ustawiasz na "NONE" lub 0, narzut znika. Cytat - rozbudowane operacje w pamieci Ogólnik. Konkrety? Cytat - posrednia warstwa sieciowa Jaka warstwa sieciowa? Oracle Embedded, H2, JavaDB, SQLite nie potrzebują warstwy sieciowej. A nawet jeśli - od czego jest GigaBit Ethernet? Cytat - przenoszenie danych pomiedzy przestrzenia adresowa serwera bazy a programem przetwarzajacym dane W RDBMSach wbudowanych, podobnie jak punkt poprzedni - problem nie występuje. W rozwiązaniach klient-serwer, też rzadko jest to problemem. Tu są szybkości rzędu kilku, kilkunastu GB/s. No i jeszcze stosuje się buforowanie wyników zapytań po stronie klienta. |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 27 Pomógł: 0 Dołączył: 22.11.2003 Ostrzeżenie: (0%)
|
Realnie kosztuje 0, plany wykonania zapytań w dobrych RDBMSach są buforowane. A nawet jeśli nie są domyślnie, to są, gdy się użyje prepared statement. Nic w przetwarzaniu danych nie kosztuje 0. Zawsze bedzie odwolanie do managera zapytan, sprawdzenie czy prepared statement jest gotowy, wczytanie wewnetrznych instrukcji bazy dla danego zapytania, zaalokowanie pamieci na wynik itd. Google projektuje swoje bazy danych w taki sposob, zeby kolumny wczytywaly sie w pelni do pojedynczych rejestrow procesora albo w obrebie stron pamieci, a ty mowisz, ze przetwarzanie SQL nic nie kosztuje (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Kosztowac moze wzglednie malo w porownaniu z samym przetwarzaniem danych, ale darmowe nie jest. Utrzymania indeksów nie unikniesz też w BDB jeśli gdziekolwiek masz aktualizacje. Każdy hash w BDB jest indeksem. Tutaj trafiasz w sedno - hash (chyba najpopularniejsza struktura danych dla BDB) jest indeksem sam w sobie. Zlozonosc dostepu O(1). W RDBMS indeks moze byc przechowywany w BDB. Indeks - element, ktory ma przyspieszac wczytywanie danych z tabeli, moze byc przechowywany w BDB! Jesli BDB byloby wolniejsze od RDBMS to jaki sens mialoby uzywanie go do przyspieszania? Nie ma żadnego powodu, aby transakcje w BDB kosztowały mniej niż w RDBMS. Można ręcznie określić poziom izolacyjności transakcji. Nie potrzebujesz, ustawiasz na "NONE" lub 0, narzut znika. Zakladajac, ze mozna tez wlaczyc tryb jednouzytkownikowy, z pojedyncza sesja i bez sprawdzania uprawnien do tabel, to pewnie RDBMS zacznie sie zblizac wydajnosciowo do BDB. Ogólnik. Konkrety? (zarzadzanie pamiecia) Indeksy, uprawnienia, prepared statements. Sa tony rzeczy, ktore musisz powylaczac w RDBMS, zeby wyciagnac z niej maksimum wydajnosci. Zgadzam sie, ze to ogolnik, bo nie czuje sie na silach dyskutowac szczegolowo o technicznych aspektach Oracle. Opieram sie na pobieznym zapozaniu sie z architektura. Jaka warstwa sieciowa? Oracle Embedded, H2, JavaDB, SQLite nie potrzebują warstwy sieciowej. A nawet jeśli - od czego jest GigaBit Ethernet? W RDBMSach wbudowanych, podobnie jak punkt poprzedni - problem nie występuje. W rozwiązaniach klient-serwer, też rzadko jest to problemem. Tu są szybkości rzędu kilku, kilkunastu GB/s. No i jeszcze stosuje się buforowanie wyników zapytań po stronie klienta. Jasne, ze mozna RDBMS osadzic i powylaczac mu wszystkie funkcje, zeby wycisnac maksimum. Tylko po co, skoro BDB ma to od razu? Ciekawostka jest, ze jednym z elementow Oracle Embedded jest Oracle Berkeley DB - dlaczego skoro zwykly Oracle Embeddable powinien byc szybszy? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Mozemy sie spierac, ale najlepiej byloby to oczywiscie przetestowac. Ja ze swojej strony moge powiedziec, ze w jednym projekcie, ktory polozyl na lopatki MySQL ze wzgledu na duza ilosc insert'ow i delete'ow po przejsciu na BDB praktycznie nie odczuwamy istnienia bazy. Oczywiscie musze tu podkreslic, ze baza jest z gruntu nierelacyjna - taki urok przetwarzanych w niej danych. Chcialbym zauwazyc, ze troche mozemy miec rozne spojrzenie na ten watek. Wydaje mi sie, ze ty odnosisz sie do skalowalnosci ogolnie (co w zasadzie wynika z tematu watku), a ja do konkretnego problemu, ktory zostal w tym watku opisany. |
|
|
|
kwiateusz Duże aplikacje i load balancing 2.08.2008, 18:53:14
LBO Muskający powierzchnię tematu wpis na blogu Talena... 2.08.2008, 19:01:00
wrauk dzięki za link do mojego bloga, widzę, że temat os... 4.08.2008, 20:33:26
Kocurro No to Panowie zaczynajmy - może na początek odnosz... 5.08.2008, 11:02:55
wlamywacz A jest możliwość utworzenia dysku sieciowego i na ... 5.08.2008, 12:25:49
Kocurro Pomysł dość dobry ale wydaje mi się, że problemem ... 5.08.2008, 12:37:12
wrauk Soft do obsługiwania takich sesji już istnieje i n... 5.08.2008, 12:55:10 
Sedziwoj Cytat(wrauk @ 5.08.2008, 13:55:10 ) M... 5.08.2008, 13:41:27
wlamywacz CytatPomysł dość dobry ale wydaje mi się, że probl... 5.08.2008, 21:09:04 
mike Cytat(wlamywacz @ 5.08.2008, 22:09:04... 5.08.2008, 21:18:30 
wrauk Cytat(wlamywacz @ 5.08.2008, 22:09:04... 5.08.2008, 21:22:56
jarek_bolo Witam, specjalnie doświadczony nie jestem, ale tak... 5.08.2008, 22:08:59 
wrauk Cytat(jarek_bolo @ 5.08.2008, 23:08:5... 6.08.2008, 07:56:52 
jarek_bolo Cytat(wrauk @ 6.08.2008, 08:56:52 ) Z... 6.08.2008, 08:51:23 
wrauk Cytat(jarek_bolo @ 6.08.2008, 09:51:2... 6.08.2008, 09:45:00
Kocurro jarek_bolo: niestety Twój pomysł byłby o wiele mni... 6.08.2008, 09:18:14
wlamywacz A co z adresami typu www2.cos.pl ? 6.08.2008, 10:13:25
Kocurro Widziałem ale jeśli mam być szczery to to jest roz... 6.08.2008, 10:18:46
wlamywacz Ale jak działa to
www2.cos.pl itd. bo nawet nie wi... 6.08.2008, 11:38:17 
mike Cytat(wlamywacz @ 6.08.2008, 12:38:17... 6.08.2008, 11:47:12
Kocurro Normalnie Serwer ma taką nazwę, dns wskazuje na j... 6.08.2008, 11:41:48
normanos a mnie ciekawiły by rady w jakim kierunku iść kied... 6.08.2008, 13:48:56 
wrauk Cytat(normanos @ 6.08.2008, 14:48:56 ... 8.08.2008, 09:47:21 
normanos Cytat(wrauk @ 8.08.2008, 08:47:21 ) K... 8.08.2008, 09:57:13 
wrauk Cytat(normanos @ 8.08.2008, 10:57:13 ... 8.08.2008, 10:35:20
grzegory Przyłączam się do tematu.
Mój problem wygląda nas... 7.08.2008, 21:36:06
wlamywacz Kup serwer dedykowany, da radę bez problemu. Patrz... 7.08.2008, 21:50:20
Sedziwoj @grzegory
Zacznę od tego że to raczej nie jest tem... 7.08.2008, 21:56:20
Ace Od kilku miesięcy interesuje się tematyką wysokich... 12.08.2008, 11:03:43
rashid Pozwole sie wtracic, bo Panowie proboja rozwiazac ... 27.11.2008, 12:27:56 
enigma Cytat(rashid @ 27.11.2008, 13:27:56 )... 13.01.2009, 21:24:38 
rashid Cytat(enigma @ 13.01.2009, 21:24:38 )... 13.01.2009, 21:41:01
Krolik Jeśli baza danych się nie wyrabia i używamy MySQL/... 2.12.2008, 10:37:42 
rashid Cytat(Krolik @ 2.12.2008, 10:37:42 ) ... 11.12.2008, 11:10:50
klakson Witam serdecznie,
chcialbym wykonac aplikacje w p... 20.12.2008, 13:05:29 
rashid Cytat(klakson @ 20.12.2008, 13:05:29 ... 20.12.2008, 14:11:47
normanos piszesz, że będziesz mielił dane z dysku a potem w... 20.12.2008, 13:47:49
klakson Dzieki za pierwsze odpowiedzi, i juz uscislam, bo ... 20.12.2008, 16:37:27
Kocurro Wybaczcie offtopic ale nie mogę.
Kolega się z cho... 20.12.2008, 16:59:28
klakson No ok Kocurro,
ale moze po pierwsze, to przeczyta... 20.12.2008, 18:52:22
rashid Zalozenie, ze operujac na wlasnym formacie plikow ... 20.12.2008, 18:53:32 
Krolik Cytat(rashid @ 20.12.2008, 18:53:32 )... 2.01.2009, 12:18:16 
rashid Cytat(Krolik @ 2.01.2009, 12:18:16 ) ... 2.01.2009, 14:05:11
Kocurro Szanowny kolego klakson - proponuje najpierw zapoz... 20.12.2008, 19:40:32
erix CytatA przechodzac do sedna, w czym niby jest prob... 20.12.2008, 20:06:03
wlamywacz Założenia projektu sobie niezbyt realne. Kolega na... 25.12.2008, 10:52:03
djhors Witam Wszystkich.
Z braku czasu niezagladam tu za... 29.12.2008, 11:07:55
luinnar Tak sobie czytam ten wątek i zastanawiam się nad k... 1.01.2009, 10:23:55
fragles a ja mam pytanie podstawowe
- jak się to liczy to ... 7.01.2009, 10:33:20
Krolik Nie będę wchodził w szczególy, bo odeszliśmy od te... 7.01.2009, 13:06:25
enigma dziękuje wygląda ciekawie - na pewno przeczytam.
... 13.01.2009, 21:58:21 
rashid Cytat(enigma @ 13.01.2009, 21:58:21 )... 19.01.2009, 22:53:16
jmail Przepraszam, ze tego trupa odgrzebuję, ale miałbym... 10.08.2009, 22:32:15
Ormin Myślę, że wypadałoby odświeżyć temat. Przy okazji ... 16.05.2010, 22:19:23
BugsBunny Odgrzebie temat, bo mam trochę praktyki w tym tema... 15.09.2012, 22:20:20 ![]() ![]() |
|
Aktualny czas: 21.11.2025 - 05:47 |