- A karmos/ujjbegyes fogásokkal nyomulók örömére megjött az Arye szénszálas egere
- ISA dokumentáció árulkodik az Intel közelgő magjairól
- TMR technológiás Keychron billentyűzet, ezúttal teljesen kerámiából
- Bemutatkoztak az NZXT legfrissebb, C Gold Core sorozatú tápjai
- Ha eGPU-ról van szó, akkor az OCuLink a teljesítménybajnok
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Milyen TV-t vegyek?
- Milyen billentyűzetet vegyek?
- OLED monitor topic
- Gyorsan cáfolta az Xbox hardverek lelövéséről szóló pletykákat a Microsoft
- Milyen belső merevlemezt vegyek?
- Amazon Kindle
- Milyen videókártyát?
- Azonnali notebookos kérdések órája
- Milyen SSD-t vegyek?
-
PROHARDVER!
Ú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!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest