Zadejte hledaný výraz...

Jak prohledávat obrovské.csv

Jan Kuthan
verified
rating uzivatele
(48 hodnocení)
2. 4. 2014 16:31:48
Zdravím,
jedna technická. Mám soubor *.csv se skoro 10M řádek o 15 sloupcích. Potřebuji prakticky jen 4 sloupce, kde první obsahuje veškeré názvy "produktů", druhý obsahuje "barevné varianty" (pro každý produkt jiné!), třetí pak "velikost". (názvy jsou ilustrační, ale snad hodně blízké) a poslední id, které potřebuji získat selektováním.
Jde o to že v csv jsou řádky velice často prakticky stejné a liší se až v koncové "velikosti". Příjde mi brutální takovouto prakticky statickou věc (údaje se nebudou měnit často, ale např. 1x měsíčně i méně) cpát do mysql. Řešením by byl asi LDAP, ale s tím jsem se nepochopil :)
Napadá někoho nějaké řešení jak data efektivně procházet?
V ideálním stavu se budu ptát ajaxem:
1) dej mi produkty - vrátí produkty
2) dej mi barevné varianty k vybranému produktu
3) dej mi velikosti vybraného produktu o vybrané barvě
4) dej mi výsledné id
Díky za tipy a nápady. :)
2. 4. 2014 16:31:48
https://webtrh.cz/diskuse/jak-prohledavat-obrovske-csv#reply1011924
SQLite Home Page
2. 4. 2014 16:51:59
https://webtrh.cz/diskuse/jak-prohledavat-obrovske-csv#reply1011923
Milan Horník
verified
rating uzivatele
(8 hodnocení)
2. 4. 2014 16:53:07
normalne bych to nasypal do mysql, to bude pak mnohonasobne rychlejsi na prohledavnai nez to tahat primo z csv, (clovek si udela indexy tam kde potrebuje).
Primo z csv by to bylo myslim silene pomale.
2. 4. 2014 16:53:07
https://webtrh.cz/diskuse/jak-prohledavat-obrovske-csv#reply1011922
node
verified
rating uzivatele
(5 hodnocení)
2. 4. 2014 17:01:35
"10M řádek o 15 sloupcích" - prave pre toto boli vynajdene databazy omg.
2. 4. 2014 17:01:35
https://webtrh.cz/diskuse/jak-prohledavat-obrovske-csv#reply1011921
Luděk Novák
verified
rating uzivatele
2. 4. 2014 17:21:07
Přesně tak. Podle nadpisu jsem myslel, že to je nějaký import. Pokud nad tím chceš běžet web, proboha... jestli fakt nechceš databázi kvůli hostingu, tak aspoň nějakou inproc - na windozech třeba SQL CE.
LDAP na to určitě není.
2. 4. 2014 17:21:07
https://webtrh.cz/diskuse/jak-prohledavat-obrovske-csv#reply1011920
bof
verified
rating uzivatele
2. 4. 2014 18:46:46
Když z nejakých důvodů nechcete využít databázi využijte dávkové čtení takového souboru, lze pak výsledky ukládat do memcache, což značně urychlí celý proces vyhledávání.
Pro dávkové čtení můžete využit fopen s parametrem rb, následně funkce feof atd je potřeba nastudovat si použití, a ošetřit, to, že již máte načtený další řádek. Každopádně bych asi také doporučoval použití databáze, případně alespoň výsledky ukládat do cache.
2. 4. 2014 18:46:46
https://webtrh.cz/diskuse/jak-prohledavat-obrovske-csv#reply1011919
Jan Kuthan
verified
rating uzivatele
(48 hodnocení)
2. 4. 2014 20:10:46
Rozhodně to chci dát do db, asi jsem se špatně vyjádřil, jen mi příjde hodně těžkopádné to nasypat do mysql. Myslel jsem, že bude nějaké efektivnější řešení typu LDAP, ale ten mi bohužel příjde hrozně neohrabaný. :)
O hosting mi nejde, můžu to mít prakticky na čemkoliv, třebas VPS, ale data se z toho budou tahat opravdu často, naopak zapisovat velice málo.
2. 4. 2014 20:10:46
https://webtrh.cz/diskuse/jak-prohledavat-obrovske-csv#reply1011918
Pro odpověď se přihlašte.
Přihlásit