🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.php
Article #232413

Re: Symfony 4 - jak projektować bazę danych pod Doctrine?

#232413
From: Wojciech Bancer
Date: Sat, 27 Apr 2019 11:58
124 lines
7016 bytes
On 2019-04-27, Kviat <Kviat> wrote:

[...]

>>>> Czyż nie jest wydajniej mieć monolityczny
>>>> serwer z triggerami i wszystko "w jednej maszynie"?
>>>
>>> Dla google pewnie nie jest wydajniej.
>> 
>> Ale Ty powiedziałeś, że trigger jest wydajniejszym rozwiązaniem,
>> bo jest bliżej danych. No to jest, czy nie jest?
>
> "Architektura oparta o ORM (i zdarzenia),
> może i jest jednostkowo wolniejsza,
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> ale w razie potrzeby w łatwy sposób zostać rozbudowana "w bok","
>
> Od dłuższego czasu próbuję Ci wytłumaczyć, że jest wydajniejszym 
> rozwiązaniem dla kogoś,

Czy to w jakiś sposób unieważnia moje stwierdzenie (które podkreśliłeś)? 
Nie. Przyjąłem twój argument do wiadomości, ale pokazuję jakie są obecnie
*trendy* które przemawiają za tym by być ostrożnym z takim pewnym siebie
szafowaniem "nie potrzebuję <tup>!".

> kto nie ma potrzeby skalowalności "w bok".
> A Ty mnie próbujesz przekonać, że wszyscy mają taką potrzebę i już.

Nie. Próbuję powiedzieć, że *mogą* i należy projektować rozsądnie,
a nie tam "gdzie najprościej" i po najmniejszej linii oporu. I chcę
Ci pokazać, że rynek bardzo dynamicznie idzie w tą stronę. A Ty
się niepotrzebnie wyzłośliwiasz.

Ludzie też mogą pisać w php korzystając ze "spaghetti code" i pisząc
w noatniku. Ale to nie znaczy że takie coś jest właściwe, biorąc pod
uwagę istniejące trendy i przewidywalną przyszłość.

[...]

> Poważnie uważasz, że franczyzobiorca Żabki będzie miał w przyszłości 
> potrzebę na "dane o pozycji klienta z telefonem w czasie rzeczywistym 
> poprzez urządzenia IoT, by serwować mu dopasowany content w sklepie"?
> Sklep ma 6x10m...

No właśnie tak. Bo to zmierza do całkowitej automatyzacji sprzedaży
i pozbycia się potrzeby posiadania kasjerów. O proszę, masz tu:

https://gloswielkopolski.pl/bio-family-poznan-pierwszy-bezobslugowy-supermarket-w-polsce-bedzie-czynny-w-kazda-niedziele/ar/13563136
https://epoznan.pl/news-news-91804-Zabka_chce_otwierac_automatyczne_sklepy_bez_tradycyjnych_kas

To jest coś co się *już* dzieje, ale nie na masową skalę, bo właśnie
trzeba systemy dopasować do takiej wydajności.

>>>> Oczywiście że ma i będzie (bo apetyt na dane rośnie). Zobacz sobei IoT,
>>>> ML, segmenty Big Data.
>>>
>>> 3 mln jednoosobowych działalności gospodarczych to faktycznie spory
>>> segment zainteresowany Big Data.
>> 
>> https://sjp.pwn.pl/sjp/przyklad;2512135.html
>
> ?

Podałem Ci _przykłady_ technologii które generują zapotrzebowanie na dane,
a ty mi walisz zgryźliwym komentarzem, że 3 mln jednoosobowych działalności
nie znajdzie tego zastosowania.

Więc po pierwsze podałem _przykład_, po drugie te 3 miliony _już korzysta_.
I im więcej usług będzie "migrowało" do chmury, tym bardziej architektura
będzie zmierzała w stronę działania na infrastrukturze wirtualnej i w modelu
który opisałem.

Takie usługi jak "cloud function" już teraz pozwalają Ci trzymać dużej
wielkości site dla małej firmy (np. coś w stylu: https://acloud.guru/ 
z możliwością skalowania na poziomie milionów i rocznymi kosztami użycia 
na poziomie kilku dolarów.

I nie trzeba mieć firmy z Top 10 aby taką architekturę wdrożyć, tylko
architektra który rozumie co te technologie oferują.

>> Ale tak, nawet te małe firmy korzystają z big data, jak angażują się w reklamy
>> Ad Sense, czy na Facebooku.
>
> Że co?
> Żeby wrzucić reklamę na fejsa muszę mieć "skalowalny wszerz" serwer?

Tak. Nie "osobiście", ale owszem, do tego to zmierza (facebook musi mieć,
a jak nie facebook to taka platforma która umożliwi Ci analizę i obróbkę
danych które potem do tego facebooka wpuścisz).

Rynek zmierza do tego że możesz mieć stronę, aplikację i możliwości analityczne
*bez* inwestowania w serwery *o ile* potrafisz dopasować do tego architekturę.
I nagle jako mały przedsiębiorca nie musisz mieć serwera SQL, który kosztuje
X miesięcznie. Ani nawet serwera WWW, który kosztuje drugie tyle. Do swojej
strony możesz budować rozpoznawanie mowy, syntezator mowy, czy rozpoznawanie
obrazów bez inwestowania w farmę SQL, tylko poprzez wpięcie się do usługi.
Po API, a nie po bazie. Cloud otwiera się też na małe firmy, ale niesie 
za sobą wymagania architektoniczne.

Oczywiście możesz się uprzeć i np. integrować "część rzeczy" na API,
część rzeczy "na triggerach" (wszystko wolno), ale to jest zwyczajnie
zły model projektowania (logika biznesowa rozproszona do tego stopnia,
że w końcu nie będzie wiaodomo jaki komponent odpowiada za co).

>>> Firmy które zatrudniają po kilka, kilkadziesiąt osób też pewnie dostają wypieki
>>> na twarzy na hasło Big Data i na możliwość korzystania z pierdyliarda skalowalnych
>>> w szerz baz danych w chmurze.
>> 
>> Jasne. W końcu żadna z firm nie korzysta z Google Analytics, czy Google Maps,
>> Gmaila.
>
> I dlatego każda z tych firm, żeby skorzystać z Google Maps albo wysłać 
> maila przez Gmaila musi mieć "skalowalny wszerz" serwer.

Widzę, że kompletnie nie rozumiesz o czym piszę.

To zmierza do tego by firma nie musiała mieć serwera.
Pod warunkiem, że masz odpowiednią architekture.

[...]

-- 
Wojciech Bańcer
wojciech.bancer@gmail.com
Technical Details
Message-ID: <slrnqc8gus.1i19.wojciech.bancer@pl-test.org>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!wsisiz.edu.pl!goblin2!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
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> <5cc34968$0$523$65785112@news.neostrada.pl> <slrnqc6qbq.2tg1.wojciech.bancer@pl-test.org> <5cc4127b$0$493$65785112@news.neostrada.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!wsisiz.edu.pl!goblin2!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
Newsgroups: pl.comp.lang.php
From: Wojciech Bancer <wojciech.bancer@gmail.com>
Subject: Re: Symfony 4 - jak projektować bazę danych
 pod Doctrine?
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> <5cc34968$0$523$65785112@news.neostrada.pl> <slrnqc6qbq.2tg1.wojciech.bancer@pl-test.org> <5cc4127b$0$493$65785112@news.neostrada.pl>
Organization: None
Date: Sat, 27 Apr 2019 13:58:16 +0200
User-Agent: slrn/1.0.3 (Darwin)
Mime-Version: 1.0
Message-ID: <slrnqc8gus.1i19.wojciech.bancer@pl-test.org>
Lines: 124
NNTP-Posting-Host: 46.227.242.29
X-Trace: 1556366300 unt-rea-a-01.news.neostrada.pl 487 46.227.242.29:62350
X-Complaints-To: abuse@news.neostrada.pl
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit