🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

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

#232434
From: Wojciech Bancer
Date: Wed, 24 Apr 2019 18:01
69 lines
3816 bytes
On 2019-04-24, Marek S <precz@spamowi.com> wrote:

[...]

> Tak, pamiętam Twoje słowa. Zamiast przyspieszyć 10x procesy w bazie, np. 
> poprzez dołożenie triggerów odciążających ORM, czy przebudowanie/dodanie 
> indeksów, wolisz postawić 10 serwerów.

Nie, nie, nie, nie. Nie zrozumiałeś. To co napisałem to:
Zamiast przyspieszyć _moze_ 2x procesy w bazie np. przez dołożenie trigerów,
wolę mieć opcję stabilnej obsługi zarówno 10, 100 jak i 1000+ userów "na raz")
bez straty wydajności, w zależności od potrzeb, przez auto-skalowalne rozwiązania.

> Ja preferuję inne podejście: 
> zoptymalizować bazę, a gdy już więcej się nie da - wtedy zająć się 
> infrastrukturą sprzętową. Tego nie zmienię w sobie.

No i właśnie. Projektujesz system który "ma ścianę" i to dość blisko.

>> Dać to się wszystko da, kwestia czasu i środków.
>> Ale jak dotychczas chyba nie było zapotrzebowania, bo nic tego typu
>> opensource nie powstało (albo nie zostało wystarczająco rozreklamowane).
>
> Zostało rozreklamowane nie jeden raz. Ostatnio rowery trójmiejskie 
> stanęły - to dobra reklama beztroskiego korzystania z wszelkich 
> udogodnień przez programistów, bez wnikania, co de facto będzie działo 
> się w tle.

Problem w tym, że na razie "beztroski" to wydajesz się Ty, w angażowaniu
ORMa bez zrozumienia idei za nim stojących.

> ORM ma to załatwić i już.

I nawet nie chciało Ci się zajrzeć do manuala tegoż ORMa, prawda?
Bo byś znalazł rozdziały dot. wydajności, batch processingu itp.

> A jak się coś sypnie, skończy się  jakaś sekwencja bo za krótka była 
> (ORM taką sobie wygenerował) etc... 

Znowu fałszujesz i nadinterpretowujesz sobie fakty ja Ci wygodnie.
ORM "sam" sobie nie generuje nic. Generuje to co mu każesz.

[...]

>> Da się i w doctrine, z użyciem query buildera.
>> https://stackoverflow.com/questions/15555042/doctrine-2-delete-with-query-builder (pierwsza odpowiedź)
>
> To ja wiem. To jest korzystanie z SQLa, do którego z awersją podchodzisz 
> r=traktując go jako raka w ORMie.

Gdzie Ty tam widzisz SQL? o.O
To jest wg Ciebie SQL?
---
$qb = $em->createQueryBuilder();
$qb->delete('Services', 's');
$qb->where('s.project = :project');
$qb->setParameter('project', $project);
---

Ciekawe. Jaki dialekt wiesz może?
Rozróżnij też DQL od SQLa.

To że Doctrine pracuje na obiektach oraz ich modelach i relacjach (patrz wyżej, masz 
referencję do obiektów, nie do nazw tabel), nie oznacza że każdy jedne wiersz i linijka
musi być hydrowana.

-- 
Wojciech Bańcer
wojciech.bancer@gmail.com
Technical Details
Message-ID: <slrnqc194m.2amm.wojciech.bancer@pl-test.org>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-01.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> <q9ngu2$rla$1@node2.news.atman.pl> <szccfmi95el5$.xlp4ie6tp398.dlg@40tude.net> <q9nrgf$d0c$1@node1.news.atman.pl> <slrnqbuueh.2ui0.wojciech.bancer@pl-test.org> <q9q6ee$a2s$1@node2.news.atman.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-01.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> <q9ngu2$rla$1@node2.news.atman.pl> <szccfmi95el5$.xlp4ie6tp398.dlg@40tude.net> <q9nrgf$d0c$1@node1.news.atman.pl> <slrnqbuueh.2ui0.wojciech.bancer@pl-test.org> <q9q6ee$a2s$1@node2.news.atman.pl>
Organization: None
Date: Wed, 24 Apr 2019 20:01:57 +0200
User-Agent: slrn/1.0.3 (Darwin)
Mime-Version: 1.0
Message-ID: <slrnqc194m.2amm.wojciech.bancer@pl-test.org>
Lines: 69
NNTP-Posting-Host: 46.227.242.29
X-Trace: 1556128918 unt-rea-a-01.news.neostrada.pl 479 46.227.242.29:51802
X-Complaints-To: abuse@news.neostrada.pl
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit