Hirdetés
- Luck Dragon: Asszociációs játék. :)
- koxx: A bajnokok egere? Lamzu Maya Champions Edition 8K gamer egér
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Real Racing 3 - Freemium csoda
- hcl: Amúgy mi a terv?
- GoodSpeed: Te hány éves vagy?
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- eBay-es kütyük kis pénzért
- arabus: Sokkal rosszabb mint gondoltam,készletes 256Gb memória ára az 10400euró jelenleg
-
LOGOUT

Új hozzászólás Aktív témák
-
inf3rno
nagyúr
válasz
#39560925
#8895
üzenetére
Nem csak noSQL létezik, van newSQL is, ami ugyanúgy SQL, csak nulláról írt adatbázis motorokkal, és azt mondják sebességben felveszi a versenyt a noSQL adatbázisokkal. Rengeteg van egyébként, olvastam egy könyvet polyglot persistence témában régebben, amiben felsoroltak legalább 10 divatosat, mint mongodb, neo4j, riak, stb... Mindegyiknél megvan az a feladat, amiben nagyon jó, meg persze az is, amiben nagyon rossz. Szóval lekérdezés alapján érdemes adatbázist választani. Kis alkalmazásoknál persze választasz egyet azt kalap. Nagy alkalmazásoknál meg jobb helyeken váltanak monolitról microservice-re egy méret felett, és minden microservice-nek egy vagy több adatbázist adnak, amelyek eltérő típusúak (is lehetnek). A típus attól függ, hogy az adott lekérdezés csomagra melyik adatbázis alkalmasabb a legjobban. Ezeket úgy frissítik, hogy csinálnak egy központi event storage-et, ami a teljes rendszer állapotát tárolja, aztán az abba bekerülő domain event-eket figyelik, és ha új event érkezik, akkor annak megfelelően frissítik a microservice-hez tartozó adatbázist. Nem kell multiphase commit, hogy szinkronban legyenek az adatbázisok, mert elég ha az event storage letárolja az event-et, a kis adatbázisok ha valami rosszul megy, akkor maximum eldobják a jelenlegi táblát, és nulláról újra lekérik az összes event-et, és végrehajtják magukon. Ez nagyon rugalmas rendszer így, mert egyedül az event storage lecserélése, ami problémás. A microservice-ekhez tartozó query database-eket bármikor tetszés szerint lehet cserélni, vagy akár még több különbözőt is lehet párhuzamosan futtatni, és A/B teszteket csinálni, és loggolni, hogy a kliens mennyi idő alatt kapott választ a lekérdezésre. A hátrány annyi, hogy legalább 2 helyen meglesz ugyanaz az adat, illetve, hogy visszamenőleg nehéz módosítani domain event-eket, mert akkor vagy belenyúlsz az event storage-be és módosítod a már letárolt event-ek adatait, hogy pl új tulajdonságok is kapjanak értéket, vagy mondjuk bevezetsz egy MyDomainEventV2 osztályt, ami már tartalmazza az új tulajdonságokat. Egyik sem tűnik valami jónak. Na asszem már túl sokat bloggoltam, mi is volt a kérdés?

-
válasz
#39560925
#8895
üzenetére
"Ennek tudtában azt csinálnám (csinálom a mostani verzióban is), hogy minden userhez tartozik egy max 1.000.000 millió méretű terület a táblában, tehát például az n-edik usernek [n x 1.000.000] és [(n-1) x 1.000.000] közé esnének az Exceptionjeinek az ID-jai."
Ejha, miert tennel ilyesmit? Arra spekulalsz, hogy ilyen modon gyorsabban tudsz majd lekerdezni? Ugy, hogy azt se tudod, hogy valojaban ez bottleneck lesz-e, ill. azt sem, hogy hany exception instance lesz userenkent?
Siman legyen autoincrementalt ID-je az exceptionoknek, es ha ugy latod, hogy tul sok a felhasznalo, akkor majd skalazol. Arra gondolj, hogy egy ilyen sor kb. 20 bajt, tehat ha van egymilliard exception, akkor az meg siman elfer a memoriaban (!) egy komolyabb szerveren.
Abszolut tulgondolod szerintem, ill. informacio nelkul hozol technologiai donteseket.

"Beszúrás már más kérdés, szerintem ha Java kódból EntityManageren keresztül nyomok egy persist-et, semmiképp se fogom tudni elkerülni, hogy lockolja az egész táblát, és a többi tranzakció ami közben olvasna belőle, ne blokkolódjon."
Ize, miert kene lockolni az egesz tablat, ha inzertalsz? Olvass utana az MVCC-nek
Szar lenne az elet, ha az egesz tablat zarolnank egy inserthez
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Apple iPhone 12 Pro Max 128GB, Kártyafüggetlen, 1 Év Garanciával
- ÚJ ASUS TUF AMD RYZEN 7 5700X GAMER MAX PC 16-32Gb RAM 512GB SSD EVGA RTX 3070 8GB 2ÉV GAR!
- Chieftec iArena GPC 600S 600W tápegység
- MSI B250M Gaming Pro alaplap
- CORE I5 14400F B760 GAMER ERŐMŰ PC 32GB DDR5 6000 RAM 1.0TB NVME SSD MSI RTX 5070 12GB DDR7 1ÉV GAR!
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- ÁRGARANCIA!Épített KomPhone i7 14700KF 32/64GB RAM RX 9070 16GB GAMER PC termékbeszámítással
- Minden szoftver mellé teljesen audit és NIS2 biztos, jogilag hiteles licencigazolást adunk át!
- ÁRGARANCIA! Épített KomPhone Ultra 7 265KF 32/64GB RAM RX 9070 XT 16GB GAMER PC termékbeszámítással
- Telefon felvásárlás!! iPhone 11/iPhone 11 Pro/iPhone 11 Pro Max
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest




