Sok szamadat (billiardos nagysagrendu) bonyolult muveleteinek elvegzesere milyen programozasi nyelv a celszeru? Milyen fajlban celszeru tarolni az adatokat linuxon?
Akkor rekordokról beszélünk? A számítás folyamán biztosan muszáj tárolni minden részeredményt? Mi a művelet eredménye, mármint a célja? Még mindig túlságosan homályban tartod a feladatot, így nehéz lesz jó választ adni.
Ha rekordokat akarsz tárolni, akkor pl. a MySql alapból 2^32 rekordot tud tárolni, vagy 2^64-re feltornászható megfelelő fordítási paraméterekkel. (Billiárd: 10^15, ~ 2^50) De egyáltalán nem biztos, hogy neked ez kell.
"Informatikai ertelemben az ertekek nagysagrendje nem is jelent semmit, ha nem mondok hozza pontossagot."
Dehogynem, a nagyságrend az nagyságrend. Még a lebegőpontos értékeknek is van konkrét nagyságrendjük, pontosságtól függetlenül.
"Milyen fájlban célszerű tárolni?"
Általános adatbázisban semmiképp, tekintve, hogy még 1 byte/rekorddal számolva is petabyteos nagysagrendu adatrol beszélünk. Jó lenne tudni, hogy milyen számokról beszélünk, pl van-e gyakran sok ismetledo vagy kb véletlenszerűek.
Előbbi esetben lehet optimalizálni. Utóbbi esetben valószínűleg nem sokat tudsz ahhoz képest nyerni, mint ha csak simán kiirnad a számokat egy bináris fájlba.
Egyébként gondolom nem sima otthoni vasrol van szó, hisz még a legnagyobb hdd méretekkel is 100-as nagysagrendu diskre van szukseg.
Eléggé attól függ, hogy mit akarsz csinálni azokkal a számokkal. Lesz-e még valami a számokon kívül (pl táblázat)? Én itt a C-t, assemblyt nem erőltetném, vannak jól bejáratott rendszerek ekkora adatszettel történő műveletekre. Érdemes megnézni, hogy a spark (és a parquet formátum) megfelel-e a use case-nek.
De lehet, hogy egyszerűbb megoldás is működhet: az egyik 10^11-es méretű adatszettünket hdf5 file rendszerben tároljuk és python simán elboldogul vele a pytables segítségével. De itt nincs "bonyolult muvelet", csak filterelünk. Viszont egy másik rendszerünknél, ami kb. 10^13 rekordból áll, spark-ot használunk és az adatokat parquet formátumban tároljuk. Aggregációk, statisztikai számítások párhuzamosítva ésszerű időben lefutnak. Most kísérletezünk a clickhouse bevezetésével, ami nagyon ígéretesnek tűnik. De fontos különbség, hogy mi mindig táblázatokkal dolgozunk.
Sokminden múlik a te aktuális céljaidon, de az szinte biztos, hogy a C/C++/Assembly/MySQL nem jó út.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!