» Poradna » Programy

Databáze

Odpovědět  |  Zobrazit bez stromu  |  Upozornit redakci  |  nových odpovědí: 19/19
 |   |  Microsoft Windows 7 Chrome 25.0.1364.172  |  [88.100.224.---]

Ahoj. Mám takový obecnejší dotaz.Už víc než rok mám doma poloprofi meteostanici, kterou sleduju počasí. Zatím používám ke zpracování dat MS Excel, ale postupem času jsem zjistil, že to není ideální ze dvou důvodů. Za prvé množství dat neustále narůstá a za druhé, je to dost nepraktické, například grafy, musím vždy při přidání nových dat měnit rozsahy buněk atd. a celkově prostě tohle už neni ideální pro Excel. Problém ale je, že vlastně jsem nevěděl co použít k těm účelům, které potřebuji. Takže napřed stručně napíšu co bych rád a pak ukážu i jeden příklad co jsem našel na internetu. Protože nemám pořád zapnutý počítač nefunguje to v real-time. Stanice měří cca 10 parametrů, které si ukládá do vnitřní paměti. Loguje se každých 5 minut a paměť vystačí cca na 2 týdny takže to prostě jednou za týden-10 dní USBčkem přetáhnu do počítače a přidám k původním datům.Výsledkem je tedy textový soubor, kde jsou na jednotlivých řádcích hodnoty vždy na začátku datum, pak čas a pak jednotlivé parametry, vše oddělené středníkem - klasický výstup databáze. Zatím jsem to dělal tak, že jsem to pak importoval jako CSV do Excelu a pak s tím pracoval. A teď k tomu co bych vlastně chtěl. Chtěl bych nějaký program, kde bych si mohl zobrazovat data pro jednotlivé mnou zvolená období. S možností zobrazit buď přímo hodnot, například formou tabulky hodnoty teploty od data X do Y, nebo možnost třeba vypočtených statistik - průměrná teplota za jednotlivé měsíce od ledna X do prosince Y apod. No a pak samozřejmě možnost grafického zobrazení - např. množství srážek za posledních 6 měsíců, průměrný tlak za jednotlivé dny od února 2012 do března 2013 apod. Nebo srování teplot února v letech 2012 a 2013 apod. Těch možností je samozřejmě mnoho.Dospěl jsem k názoru, že by to třeba šlo nějak vyřešit pomocí databáze a přes MySQL nebo něco podobného. Umím s javascriptem takže bych si byl schopný napsat ty výpočty jednotlivých statistik atd. Dál jsem trochu pátral na internetu a našel vynikající open-source javascript grafy HighCharts, které umí zobrazovat velmi pěkně hodnoty. No a pak jsem dokonce našel přímo stránku, která funguje velmi podobně jak bych chtěl aby fungovala ta moje - zde je odkaz:Třeba tady jsou přesně typ grafů jaké bych chtěl: http://weather.wilmslowastro.com/highcharts/historicGraphs... http://weather.wilmslowastro.com/datasummary.phpatd.Na této stránce ten autor dokonce používá přesně ten stejný software, kterým stahuje data z meteostanice, jediný rozdíl je ale ten, že on to právě má v real-time, tzn. meteostanice si sama přidává nonstop data přímo na server. Mně by to stačilo vždy jednou za těch cca 10 dní bych prostě dávkově přidal data do databáze.No a teď k samotnému dotazu.... pochopil jsem to správně, že tohle všechno by bylo možné třeba pomocí MySQL? Bylo by to možné udělat i tak aby to nebylo takto v real-time? Bylo by možné provádět to co jsem psal - tzn. například automaticky počítat ty průměry atd. možnost zobrazovat různá období, grafy atd.? Nechci samozřejmě aby tady někdo za mě tohle dělal... je to asi práce na celkem dlouho, sám bych se zkusil seznámit s MySQL a jak to funguje, ale asi by to i pro mě bylo relativně časově náročné a nechtěl bych se to dlouze učit abych pak vlastně zjistil, že to není to co potřebuju. A v takovém případě, jsem samozřejmě otevřený návrhům jaké jiné možnosti bych mohl pro své účely použít.Díky moc

Odpovědi na otázku

 |   |  Microsoft Windows 7 Chrome 25.0.1364.172

To vše je samozřejmě možný.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Linux Chrome 25.0.1364.160  |  [212.4.155.---]

Ty jsi to četl? Máš můj obdiv a aspiruješ na altruistu roku.PrasatkoPee

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Chrome 25.0.1364.172

No abych to shrnul, tak se v podstatě ptá, jestli je databáze vhodný prostředek k ukládání dat.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Linux Firefox 19.0  |  [212.79.110.---]

Asi všichni tušíme, že tohle asi bude marné...Ale jak již padlo, databáze je opravdu vymyšlená na práci s rozsáhlými daty.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Firefox 14.0.1

Naopak si dovoluji nesouhlasit.Tazatel chce detailně popsat problém.A v takovém případě je lépe více než méně. Toto je běžná praxe.Jednodušší osobnosti nebo samozvaní "hardweráři" se mnou souhlasit nebudou.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Linux Firefox 19.0  |  [212.79.110.---]

http://www.junext.net/mysql/Dokonce i v dobách, kdy nešlo o IT bulvár: http://www.zive.cz/clanky/zaciname-s-mysql-1... ...

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Chrome 25.0.1364.172  |  [88.100.224.---]

Však já vím že to nebude hned ani jsem nechtěl konkrétně psát nějaké skripty apod.... jen si třeba nedokážu představit jednu věc. Když budu mít řekněme tu databázi MySQL se všemi daty. Díval jsem se už tak letmo jak se pak tahaji data. Tak jasně, když třeba dám aby mi vytáhl teploty z března 2012, dám něco jako vybrat data s měsíc=3 a rok=2012, jenže to jsou konkrétní příkazy, přesně jak jsem to doteď řešil v Excelu. Jak to ale pak bude fungovat když řekněme přidám data z dalších měsíců. Tak abych nemusel všude dopisovat že teď má tahat už i 3 2013, 4 2013 atd atd... to byl přesně ten problém v excelu. Měl jsem kontingenční tabulky atd. ale při každém přidání nových hodnot jsem musel měnit vzorečky, rozsahy buněk atd.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Chrome 25.0.1364.172

Prostě v dotazu nastavíš přesně takový rozsah datumů, jaký tě zajímá.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Linux Chrome 25.0.1364.172  |  [212.4.155.---]

No tak tam místo hodnoty dáš hvězdičku. Nauč se základy sql příkazů, je to jednoduchý.PrasatkoPee

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Opera 9.80  |  [92.61.92.---]

v sql se hvezdicka nepouziva jako wildcard.vypis aktualniho data: select sysdate from dual

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Firefox 19.0  |  [89.190.71.---]

Ale tohle všechno jde i v Excelu, jen to musíš šikovně napsat! Měnění vzorečků a rozsahů buněk není třeba. Jinak v databázi to samozřejmě půjde také. Databáze + program na prezentaci může umět víc než Excel (pokud si to naprogramuješ), ale bude to určitě o dost pracnější.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Linux Mozilla 18.0  |  [178.77.233.---]

LOL - opravdu si myslíte, že opravovat auto cihlou je jednodušší než když použijete sadu nářadí pro to určenou?

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Firefox 19.0

Souhlasím s Pepou. Pokud jde jen o to zobrazit pár grafů, je zde MySQL v roli kanónu braného na lov vrabců. Doporučil bych vylepšit Excel tak, aby se do něj přidávalo snadněji. Například mít data na jiném listě než grafy s vyhodhocením a nová data vkládat vždy na konec nebo začátek v jednom velkém bloku. (Středníky se v Poznámkovém bloku, nebo Word Padu dají nahradít tabulátorem a to se vloží do Excelu).Pokud by se Jáchym chtěl pustit do programování, odrazovat ho samozřejmě nebudu, ale bude potřeba kromě SQL zvládnout i nějaký jiný programovací jazyk, například PHP. To by pak mohl využít i při tvorbě webů, což je z mého pohledu zábavné. Učebnice PHP například zde (seznam kapitol dole)http://www.linuxsoft.cz/article.phpKdyby vyhrálo programování, bude největší problém s těma grafama. Na to by se musel sehnat nějaký napsaný program. Tužím, že v úvodním příspěvku byla zmínka o JavaScriptovém prográmku, co to umí. Ale to by tazatel musel ovládnout navíc JavaScript a pravděpodobně i HTML.Relizovat lze vše samozřejmě i jiným jazykem, třeba VB.NET, C#, Java, ale to už v dnešní době asi nebude tak poulární, jako weby. Plus je možné, že na toto téma jž existuje nějaký zdarma dostupný program, nebo webová služba. Zkusil bych zagooglit a poptat se kolegů co se zabývají počasím.Shrnuto a podtrženě, zatím bych zůstal u Excelu a prostě ho maličko poštěrchal.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Chrome 25.0.1364.172

Pokud by stačily tazateli, výsledky ve formátu csv, tak by bylo řešení přes sqlite, kde si si uděláš databázi s jednu tabulkou . http://www.sqlite.org/Naimportuješ si data z csv do sqlite zpracuješ dotaz a vyexportuješ zpět do csv. Lze to udělat dávkovým příkazem s příponou bat. Vytvoříš si soubor s názvem např. zpracovani_dat.batDo něj napíšeš.sqlite3.exe "pocasi.db" ".read prenos_pocasi.txt"pausepak vytvoříš soubor prenos_pocasi.txtDo něj napíšešCREATE TABLE [pocasi] ( [datum] CHAR, [teplota] CHAR, [misto] CHAR);.separator '#'.import pocasi_data.csv pocasi.mode list.separator '#'.output pocasi_filt.csvselect * from pocasi where substr(datum,4,2)='04';drop table pocasi;.exitVšechny soubory musí být ve stejném adresáři včetně sqlite3.exe a sqlite3.dll.Spustíš zpracovani_dat.bat a vše se samo udělá.Při zakládáni tabulky jsem schválně použil char a datum je napsáno ve formátu dd.mm.rr mm.hhTím pádem můžeš využít funkci substr a já v příkladu zvolil duben hledat od čtvrtého znaku v délce dvou znaků.Separátor je oddělovač při ukládání v csv doporučuji znak #.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Chrome 25.0.1364.172

Doporučuji http://www.602.cz/602sql_server/download. Je tam velice dobře udělaná nápověda. Je to zdarma , ale musíš se zaregistrovat a ani ti obratem aktivační klíč. Sice vývoj tohoto produktu byl ukončen, ale je to opravdu kvalitní databázový soft.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Firefox 19.0

602SQL kvalitní česká databáze. Můžete exportovat csv soubor do tabulky. Pak můžete jednotlivé hodnoty v pohledu nebo v dotazu průměrovat. Lze udělat i grafy hodnot.Video návody k programu 602sql 8.1:http://www.youtube.com/watchhttp://www.youtube.com/watchhttp://www.youtube.com/watchhttp://www.youtube.com/watchhttp://www.youtube.com/watch

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Firefox 19.0

Nejnovější verzi programu 602SQL 8.1 najdete zde:http://www.602.cz/winbase/wb81/index.html

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Chrome 25.0.1364.172

Opravdu velká škoda , že 602 ukončila vývoj těchto produktů. Používám už cca 12 let, sice versi 7, ale opravdu kvalita. Dobrý je i 602 sql openserver 11, ale ten by již tazateli nevyhovoval, nemá klientské rozhraní. Dá se na něj připojit přes ODBC.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Linux Mozilla 18.0  |  [178.77.233.---]

vzpomněl jsem si na jednu hooodně otřepanou prupovídku: "nasadíme petrolejky, louče čadí"

Souhlasím  |  Nesouhlasím  |  Odpovědět

Související témata: Open source, Real-time, Období, Textový soubor, Průměrná teplota, Jediný rozdíl, Open-source, Tlak



Určitě si přečtěte