Article View: pl.comp.lang.php
Article #232408Re: Symfony 4 - jak projektować bazę danych pod Doctrine?
From: Borys Pogoreło
Date: Fri, 26 Apr 2019 18:04
Date: Fri, 26 Apr 2019 18:04
69 lines
4993 bytes
4993 bytes
Dnia Fri, 26 Apr 2019 17:18:19 +0200, Wojciech Bancer napisał(a): > Pierwsze sklepy już gdzieś tam się pojawiają. Co będzie za 5-10 lat? > A może chciałbyś mieć dane o pozycji klienta z telefonem w czasie > rzeczywistym poprzez urządzenia IoT, by serwować mu dopasowany content > w sklepie? Albo sterować urządzeniami domowymi/firmowymi w reakcji > na zdarzenia rzeczywiste? Ale to nie są zadania dla triggerów czy procedur, skoro już o tym mowa. > Ale dlaczego potrzebuje? Czyż nie jest wydajniej mieć monolityczny > serwer z triggerami i wszystko "w jednej maszynie"? Takie można odnieść > wrażenie po tym jak zachwalałeś triggery oraz ich optymalność. Zjedź z przykładami z top 10 światowego internetu, bo to trochę mało reprezentatywne. Inna skala, inne problemy. Choć może weźmy przykład takiego Instagrama, powinien pasować do załozonej przez Ciebie skali. Ich bazy korzystają z procedur PL/PGSQL do generowania unikalnych i bezkolizyjnych identyfikatorów. Bo tak było prościej, niż dopisywać i utrzymywać kolejną dedykowaną usługę. > Jeszcze. Ale odpowiedzialne projektowanie *aplikacji webowej* musi > przewidywać pewien rozwój sytuacji. Inaczej będziesz jak nasza klasa > i pan gąbka z błędem typu error 500. To jest przypadek skrajny, zupełnie oderwany od rzeczywistości. Ile znasz innych serwisów, które odniosły tak gwałtowny sukces (i jednocześnie tak bardzo położyły temat od strony technicznej)? > O ile *koszt* projektowania aplikacji w jeden i drugi sposób jest podobny, Co najwyżej w średnich i dużych firmach IT, w których siedzą ludzie znający się na wielu rzeczach, a cena dla klienta końcowego jest i tak za roboczogodzinę. A wydaje mi się, że cały czas piszesz z takiej właśnie perspektywy, firmy tworzącej rozwiązania dla dużych klientów, których stać na wdrożenie za kwoty sześciocyfrowe i większe. Pomijasz za to ogromną rzeszę mniejszych firm, których potrzeby są na tyle niskie, że "typowe" rozwiązania są dla nich wytarczające z dużym zapasem. Oni nie potrzebują automatycznego postawienia dodatkowych podów w trakcie Black Friday, bo nie wygenerują takiego obciążenia. A jeśli w perspektywie 5-10 lat powiększą swój biznes 10 razy, to rzeczona baza dalej nie będzie miała z tym problemu. I to też nie są klienci, którzy będą wdrażać ML / Big Data, bo ich na to zwyczajnie nie stać, tylko co najwyżej skorzystają z istniejącej usługi. > Mniejszy jest też koszt optymalizacji konkretnych bottlenecków "na aplikacji" > niż na bazie (bo masz mnóstwo alternatyw od zapewnienia cache w pamięci, > rozładowania ruchu poprzez load balancery, kontroli że np. pojedynczy > użytkownik nie może wykonać > 10 żądań na sekundę (throttling pattern), > tworzenia kolejek i priorytetów (a nie wyłącznie obsługi fifo). > > a to wszystko możesz stosować na różnych poziomach infrastruktury, > połączonej w logiczną strukturę z aplikacją (podejście IaaC) i zebrane > w jednym logicznym miejscu. Brzmi pięknie i zgodnie ze sztuką, ale dodaj jeszcze ile kostuje stworzenie takiej aplikacji i utrzymanie na takiej infrastrukturze. Ile jest firm, które tego potrzebują i za to zapłacą? > I już teraz te serwisy mają więcej możliwości niż desktopowe aplikacje > będą miały kiedykolwiek (dla tej grupy). (...) Co nie znaczy, że z tyłu nie stoi jakiś SQL napędzany procedurami. -- Borys Pogoreło borys(#)leszno,edu,pl
Technical Details
Message-ID:
<1p2fozk0p9uxv.z7c6igjhpdcq.dlg@40tude.net>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.promontel.net.pl!not-for-mailReferences:
<q9foak$p72$1@node2.news.atman.pl> <slrnqboo9s.e87.wojciech.bancer@pl-test.org> <5cbf10a8$0$482$65785112@news.neostrada.pl> <slrnqbuasg.28r5.wojciech.bancer@pl-test.org> <5cc00030$0$476$65785112@news.neostrada.pl> <slrnqc0o86.drp.wojciech.bancer@pl-test.org> <5cc08eba$0$523$65785112@news.neostrada.pl> <slrnqc1a43.2amm.wojciech.bancer@pl-test.org> <5cc0de68$0$539$65785112@news.neostrada.pl> <slrnqc42f0.2lii.wojciech.bancer@pl-test.org> <5cc24956$0$526$65785112@news.neostrada.pl> <slrnqc5fkk.27vm.wojciech.bancer@pl-test.org> <5cc2e453$0$522$65785112@news.neostrada.pl> <slrnqc689s.2i2i.wojciech.bancer@pl-test.org>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.promontel.net.pl!not-for-mail From: Borys Pogoreło <borys@pl.edu.leszno> Newsgroups: pl.comp.lang.php Subject: Re: Symfony 4 - jak projektować bazę danych pod Doctrine? Date: Fri, 26 Apr 2019 20:04:31 +0200 Organization: snafu Lines: 69 Message-ID: <1p2fozk0p9uxv.z7c6igjhpdcq.dlg@40tude.net> References: <q9foak$p72$1@node2.news.atman.pl> <slrnqboo9s.e87.wojciech.bancer@pl-test.org> <5cbf10a8$0$482$65785112@news.neostrada.pl> <slrnqbuasg.28r5.wojciech.bancer@pl-test.org> <5cc00030$0$476$65785112@news.neostrada.pl> <slrnqc0o86.drp.wojciech.bancer@pl-test.org> <5cc08eba$0$523$65785112@news.neostrada.pl> <slrnqc1a43.2amm.wojciech.bancer@pl-test.org> <5cc0de68$0$539$65785112@news.neostrada.pl> <slrnqc42f0.2lii.wojciech.bancer@pl-test.org> <5cc24956$0$526$65785112@news.neostrada.pl> <slrnqc5fkk.27vm.wojciech.bancer@pl-test.org> <5cc2e453$0$522$65785112@news.neostrada.pl> <slrnqc689s.2i2i.wojciech.bancer@pl-test.org> NNTP-Posting-Host: public-gprs212846.centertel.pl Mime-Version: 1.0 X-Trace: thunar.promontel.net.pl 1556301870 7938 46.134.170.175 (26 Apr 2019 18:04:30 GMT) X-Complaints-To: abuse@promontel.net.pl NNTP-Posting-Date: Fri, 26 Apr 2019 18:04:30 +0000 (UTC) User-Agent: 40tude_Dialog/2.0.14.1pl X-fnord: obey. Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit