Forum » Programiranje » [EXCEL] Ogromne količine podatkov
[EXCEL] Ogromne količine podatkov
avtek ::
Pozdravljeni!
Zanimajo me vaša mnenja glede brskanja po podatkih v Excelu, ki imajo cca 350k (350.000) vrstic in cca 45 stolpcev.
Zaenkrat so vsi stolpci še brez formul, jih bo pa nekaj potrebno dodati (združevanje, iskanje, left, right itd) in skopirati na nov list s samo "uporabnimi" stolpci. Tako, da bi končna tabela vsebovala cca 350.000 vrstic in 15 stolpcev.
Primer: Imel bom stolpec naziv, stolpec država ter stolpec cena. Najprej bom preko držav (recimo z INDEX-MATCH (ker naj bi bil hitrejši kot VLOOKUP??)), selekcioniral države in nato z vgnezdenim nazivom v državi poiskal ceno.
Zadevo bi rad čimbolj avtomatiziral (kolikor pač premorem znanja) in ne vem ali se naj te zadeve lotim v Excelu in če že ... index-match? Priporočate kaj drugega?
Ali naj Excel s toliko podatki uvozim v kakšno bazo? (Access? Kako bi potem rudaril oz brskal po teh podatkih?)
Nekako se 'moram' osredotočiti na Microsoftove izdelke.
Hvala, lp
Zanimajo me vaša mnenja glede brskanja po podatkih v Excelu, ki imajo cca 350k (350.000) vrstic in cca 45 stolpcev.
Zaenkrat so vsi stolpci še brez formul, jih bo pa nekaj potrebno dodati (združevanje, iskanje, left, right itd) in skopirati na nov list s samo "uporabnimi" stolpci. Tako, da bi končna tabela vsebovala cca 350.000 vrstic in 15 stolpcev.
Primer: Imel bom stolpec naziv, stolpec država ter stolpec cena. Najprej bom preko držav (recimo z INDEX-MATCH (ker naj bi bil hitrejši kot VLOOKUP??)), selekcioniral države in nato z vgnezdenim nazivom v državi poiskal ceno.
Zadevo bi rad čimbolj avtomatiziral (kolikor pač premorem znanja) in ne vem ali se naj te zadeve lotim v Excelu in če že ... index-match? Priporočate kaj drugega?
Ali naj Excel s toliko podatki uvozim v kakšno bazo? (Access? Kako bi potem rudaril oz brskal po teh podatkih?)
Nekako se 'moram' osredotočiti na Microsoftove izdelke.
Hvala, lp
krneki0001 ::
Iz excela brez problemov izvoziš v Access ali sql bazo. Tam je pa potem mnogo lažje premetavat zadeve. Čeprav na normalnem računalniku excel s 350.000 vrsticami ni nekaj obremenilnega. Jaz sem jih v excel 2013 vrtel 1.5 milijona na I7-4770, 32GB rama in SSD disku.
butec ::
moj PC (E8400 in 4 GB RAM)
Excel pri kombinaciji INDEX-MATCH (iskanje po dveh kriterijih) imel kar težave
20.000 vrstic 10 stolpcev
VLOOKUP se je pri meni izkazal za boljšo varianto
Excel pri kombinaciji INDEX-MATCH (iskanje po dveh kriterijih) imel kar težave
20.000 vrstic 10 stolpcev
VLOOKUP se je pri meni izkazal za boljšo varianto
mm&r ::
Excel 2013-2016 ima vgrajeno omejitev na malenkost čez miljon, ne vem kako ti je uspelo vrtet miljon pa pol.
Vir: MS
Predlagam uporabo Power query-ja for Excel
Ta naloži podatke v spomin pa so operacije nad podatki kar hitre.
1,048,576 rows by 16,384 columns
Vir: MS
Predlagam uporabo Power query-ja for Excel
Ta naloži podatke v spomin pa so operacije nad podatki kar hitre.
krneki0001 ::
Excel 2013-2016 ima vgrajeno omejitev na malenkost čez miljon, ne vem kako ti je uspelo vrtet miljon pa pol.
1,048,576 rows by 16,384 columns
With MS-Excel you can then create a data connection to the source (without actual loading the records in a worksheet) and create a connected pivot table. You then can have virtually unlimited number of lines in your table
Horejšio ::
Mal dvomim, ker fura večino spleta skupaj z apache
Zgodovina sprememb…
- spremenilo: Horejšio ()
krneki0001 ::
In človek rabi splet? Access kot celovita aplikacija je za desktop zadeve veliko boljši od SQL serverja (MySQL je sql server in ne desktop aplikacija).
In OP rabi desktop aplikacijo, poleg tega je tudi zapisal, da se "mora" osredotočiti na MS izdelke.
In OP rabi desktop aplikacijo, poleg tega je tudi zapisal, da se "mora" osredotočiti na MS izdelke.
MS Access database is more suitable for desktop use with a small number of users accessing it simultaneously. One reason you might choose to use Microsoft Access over SQL Server is for compatibility/sharing.
Zgodovina sprememb…
- spremenilo: krneki0001 ()
krneki0001 ::
Ja, večina www, OP pa potrebuje desktop zadeve, ne www. Access je desktop aplikacija, ne SQL server. Če bi že moral primerjat MySQL z nečim, bi moral biti to MS SQL server, ki pa MySQL povozi. Ta pa je trenutno že na tako visoki stopnji, da se postavlja ob bok oraclu in DB2.
Pa ni ti noben zbrisal. En post pred mojim je.
Pa ni ti noben zbrisal. En post pred mojim je.
Zgodovina sprememb…
- spremenilo: krneki0001 ()
WarpedGone ::
1. nared si prvo uslugo in se nauči SQL
2. nared si drugo uslugo in NE it v Access
3. nared si tretjo uslugo in NE it v raznorazne XyServer zadeve, ki so totalni overkil sestavljene iz kupa posušenih kravjekov
Za osnovno premetavanje in mučkanje podatkov:
- SQLite (inštalacija in konfiguracija zadeve obsega kopiranje enega DLLja na željeno mesto)
- kakšno adHoc orodje za poganjanje sqlov - priporočam SqLiteStudio (SqlLite že priložen)
Ampak si premal povedal o konkretnih zahtevah in željah in kaj naj bi iz tega nastalo čez 2 leti.
2. nared si drugo uslugo in NE it v Access
3. nared si tretjo uslugo in NE it v raznorazne XyServer zadeve, ki so totalni overkil sestavljene iz kupa posušenih kravjekov
Za osnovno premetavanje in mučkanje podatkov:
- SQLite (inštalacija in konfiguracija zadeve obsega kopiranje enega DLLja na željeno mesto)
- kakšno adHoc orodje za poganjanje sqlov - priporočam SqLiteStudio (SqlLite že priložen)
Ampak si premal povedal o konkretnih zahtevah in željah in kaj naj bi iz tega nastalo čez 2 leti.
Zbogom in hvala za vse ribe
krneki0001 ::
Nekako se 'moram' osredotočiti na Microsoftove izdelke.
Pa če že orodje za dostopat do različnih baz in pisanje sql stavkov, uporabi squirrel
http://squirrel-sql.sourceforge.net/
Resnično uporabna zadeva z dobro podporo.
Zgodovina sprememb…
- spremenilo: krneki0001 ()
Lonsarg ::
Jaz se tudi strinjam da v modernem svetu ni prostora za vmesne tehnologije. Imaš bodisi excel bodisi neko sql bazo. Če si IT ni dileme, ampak tudi kaki advanced userji se spodobi da znajo iz SQLa kaj dobit.
krneki0001 ::
Zakaj nebi?
Mislim eni pljuvate po produktih, ki jih niti poznate ne, ali pa ste celo delali enkrat v njih in jih niti približno ne poznate.
Zelo verjetno bi tudi v calcu od openoffica lahko 350k vrstic obdeloval normalno.
Mislim eni pljuvate po produktih, ki jih niti poznate ne, ali pa ste celo delali enkrat v njih in jih niti približno ne poznate.
Zelo verjetno bi tudi v calcu od openoffica lahko 350k vrstic obdeloval normalno.
avtek ::
Hvala za vse odgovore. Nisem se še povsem odločil kaj in kako bom zadevo speljal, saj v "igri" nisem samo jaz. Meni načeloma nebi predstavljal SQL nobenih težav (za rudarjenje podatkov), problemček pa nastane, ker imam okoli sebe tudi kakšnega laika, ki bi to zadevo uporabljal in se mi zaenkrat zdi najlažja opcija nek "search" znotraj Excela (bodisi VLOOKUP, še hitrejši pa je (kot kažejo razni testi) INDEX-MATCH).
@WarpedOne
Kaj bom s tem delal čez dve leti? Isto kot danes (oz. ko bom zadevo 'razvil') - mesečno se mi bodo podatki spreminjali (ne struktura, ampak vrednosti) in bo potrebno po teh podatkih na nek način rudariti. Kot sem že opisal, problem nastane pri kompleksnosti uporabe, ker v tem nisem sam.
@WarpedOne
Kaj bom s tem delal čez dve leti? Isto kot danes (oz. ko bom zadevo 'razvil') - mesečno se mi bodo podatki spreminjali (ne struktura, ampak vrednosti) in bo potrebno po teh podatkih na nek način rudariti. Kot sem že opisal, problem nastane pri kompleksnosti uporabe, ker v tem nisem sam.
krneki0001 ::
Če se misliš iti data mining, potem delaj z sql server Express + excel.
V sql serverju expres (ki je zastonj) narediš baze, importaš vse podatke v te baze, potem pa v excelu narediš data connection na to bazo in operiraš s podatki kolikor hočeš. Takrat namreč v excelu nisi limitiran na vrstice.
V sql serverju expres (ki je zastonj) narediš baze, importaš vse podatke v te baze, potem pa v excelu narediš data connection na to bazo in operiraš s podatki kolikor hočeš. Takrat namreč v excelu nisi limitiran na vrstice.
Zgodovina sprememb…
- spremenilo: krneki0001 ()
avtek ::
Sej do samih omejitev glede vrstic sigurno ne bom prišel, bolj me skrbi da ne bo za vsak 'search' (INDEX MATCH (verjetno po 2-3 kriteriji)) Excel preračunaval 5min.
Glede na to, da se nekatere zadeve delajo tudi lokalno (na stacionarnih računalnikih), bi moral to zadevo vzpostaviti na vseh sistemih ločeno, kajne?
Primer, sedaj je nek Excel (max 10.000 vrstic v vsakem dokumentu) naložen na skupno mapo, si jo vsak izmed uporabnikov prenese in poišče po določenih kriterijih in iz tega naredi poročilo v ločen Excel.
Cilj je, da bi zadevo bolj avtomatiziral in poenostavil, tudi pohitril (glede na to, da bo 350k vrstic)...vendar je problem, ker imam glede same izvedbe te zadeve zvezane roke - ne morem vseh zadev početi kot doma - primer.
Glede na to, da se nekatere zadeve delajo tudi lokalno (na stacionarnih računalnikih), bi moral to zadevo vzpostaviti na vseh sistemih ločeno, kajne?
Primer, sedaj je nek Excel (max 10.000 vrstic v vsakem dokumentu) naložen na skupno mapo, si jo vsak izmed uporabnikov prenese in poišče po določenih kriterijih in iz tega naredi poročilo v ločen Excel.
Cilj je, da bi zadevo bolj avtomatiziral in poenostavil, tudi pohitril (glede na to, da bo 350k vrstic)...vendar je problem, ker imam glede same izvedbe te zadeve zvezane roke - ne morem vseh zadev početi kot doma - primer.
krneki0001 ::
Ne rabiš delat lokalno. Lokalno ima vsak uporabnik na računalniku excel, link za podatke imajo pa na sql server expres, ki pa je lahko na tvojem računalniku, ali pa v kaki virtualki na nekem serverju.
Sedaj boš pa uvozil excel v bazo, potem si bo pa vsak iz baze k sebi potegnil podatke in delal poročila, kakršna mu paše. Al pa boš avtomatiziral, pa bo samo en sql zalaufal vsak mesec (kr makro narediš), pa bo ta uporabnik imel poročilo.
Primer, sedaj je nek Excel (max 10.000 vrstic v vsakem dokumentu) naložen na skupno mapo, si jo vsak izmed uporabnikov prenese in poišče po določenih kriterijih in iz tega naredi poročilo v ločen Excel.
Sedaj boš pa uvozil excel v bazo, potem si bo pa vsak iz baze k sebi potegnil podatke in delal poročila, kakršna mu paše. Al pa boš avtomatiziral, pa bo samo en sql zalaufal vsak mesec (kr makro narediš), pa bo ta uporabnik imel poročilo.
Zgodovina sprememb…
- spremenilo: krneki0001 ()
avtek ::
Hmmm, dobre ideje ja. Čeprov tisto z makrom sigurno ne bo šlo, ker so poročila ponavadi precej različna in a-tipična (glede na prejšnje poročilo ali drugo vrsto poročila).
Hvala zaenkrat! :)
Hvala zaenkrat! :)
ToniT ::
Jaz bi na nek strežnik naložil MS SQL express in uvozil tabelo tja.
Od tam pa lahko vsakdo dela po želji.
Access je super zadeva za hitre poizvedbe in hitro kreiranje poročil.
Od tam pa lahko vsakdo dela po želji.
Access je super zadeva za hitre poizvedbe in hitro kreiranje poročil.
Invictus ::
Nekdo mi je izbrisal del, kjer je omenjeno, da večina www deluje na MySql!
Pač zgodovinski razlogi, ker je bila Apache + MySQL kombinacija zastonj ...
Danes si nihče ne upa dregnit v to zmešnjavo, sploh pa ne zastonj. Denarja za nadgradnjo na nekaj drugega pač ni. Če potem tukaj še upoštevaš faktor nostalgije, prideš do stanja kjer si danes.
"Life is hard; it's even harder when you're stupid."
http://goo.gl/2YuS2x
http://goo.gl/2YuS2x
WarpedGone ::
Danes si nihče ne upa dregnit v to zmešnjavo
95% se sploh ne zaveda da gre za zmešnjavo, kjer se na koncu 95% časa ubadaš zakaj se server ne odziva.
Zbogom in hvala za vse ribe
Invictus ::
krneki0001 je izjavil:
Zelo verjetno bi tudi v calcu od openoffica lahko 350k vrstic obdeloval normalno.
Ne gre.
To sranje se naključno zacikla iz neznanih razlogov za neznano dolgo v naključnih intervalih.
Upam, da vam uspe z MS to lepo posortirat :)
Tako Access kot Excel podpirata SQL.
Kaj pa je narediti pol par poročil. Mačji kašelj...
"Life is hard; it's even harder when you're stupid."
http://goo.gl/2YuS2x
http://goo.gl/2YuS2x
Zgodovina sprememb…
- spremenil: Invictus ()
Isotropic ::
za desktop userja je access čist ok. še boljši od npr. sqlite, ker že out of the box podpira izdelavo poročil, ima GUI itd.
OP, poglej si še powerpivot.
accessove glavne omejitve so pri št. concurrent userjev afaik, kjer grejo performanse hitro v pm (vsaj včasih). zato si je pridobil tudi slab sloves proti mysql 10 let nazaj.
samo za desktop userja je še najbolj prijazna opcija.
OP, poglej si še powerpivot.
accessove glavne omejitve so pri št. concurrent userjev afaik, kjer grejo performanse hitro v pm (vsaj včasih). zato si je pridobil tudi slab sloves proti mysql 10 let nazaj.
samo za desktop userja je še najbolj prijazna opcija.
Zgodovina sprememb…
- spremenil: Isotropic ()
videc ::
Access bo povsem ok.
Če ostaneš v Excelu, poglej powerpivot, tako kot že predlagano prej.
Prav tako že predlagano tudi SQL Express, lahko si pogledaš še Firebird bazo (nekdanja Borlandova baza).
Če boš imel podatkov bazi, lahko do njih dostopaš iz vsake preglednice (Excel, OOCalc, ...) ali prog. jezika.
Če ostaneš v Excelu, poglej powerpivot, tako kot že predlagano prej.
Prav tako že predlagano tudi SQL Express, lahko si pogledaš še Firebird bazo (nekdanja Borlandova baza).
Če boš imel podatkov bazi, lahko do njih dostopaš iz vsake preglednice (Excel, OOCalc, ...) ali prog. jezika.
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Excel pomočOddelek: Programska oprema | 1804 (881) | P=LN |
» | Petina znanstvenih člankov iz genomike oporečnih zaradi ExcelaOddelek: Novice / Znanost in tehnologija | 9079 (5742) | filipk |
» | Program za uvoz velike količine podatkovOddelek: Programska oprema | 1156 (961) | brodul |
» | Kako oz. z čim izdelujete spletišča? (strani: 1 2 )Oddelek: Izdelava spletišč | 14003 (12419) | Goran's Blog |
» | MS Access (strani: 1 2 )Oddelek: Programiranje | 7431 (5489) | travica |