abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 16:00 | Nová verze

Byla vydána verze 0.98 svobodného nelineárního video editoru Pitivi. Z novinek lze zmínit například přizpůsobitelné klávesové zkratky. Videoukázka práce s nejnovější verzí Pitivi na YouTube.

Ladislav Hagara | Komentářů: 0
dnes 15:00 | Zajímavý software

Stop motion je technika animace, při níž je reálný objekt mezi jednotlivými snímky ručně upravován a posouván o malé úseky, tak aby po spojení vyvolala animace dojem spojitosti. Jaký software lze pro stop motion použít na Linuxu? Článek na OMG! Ubuntu! představuje Heron Animation. Ten bohužel podporuje pouze webové kamery. Podpora digitálních zrcadlovek je začleněna například v programu qStopMotion.

Ladislav Hagara | Komentářů: 1
včera 21:21 | Nová verze Ladislav Hagara | Komentářů: 0
včera 11:44 | Zajímavý projekt

Na Indiegogo byla spuštěna kampaň na podporu herní mini konzole a multimediálního centra RetroEngine Sigma od Doyodo. Předobjednat ji lze již od 49 dolarů. Požadovaná částka 20 000 dolarů byla překonána již 6 krát. Majitelé mini konzole si budou moci zahrát hry pro Atari VCS 2600, Sega Genesis nebo NES. Předinstalováno bude multimediální centrum Kodi.

Ladislav Hagara | Komentářů: 0
včera 00:10 | Nová verze

Byla vydána verze 4.7 redakčního systému WordPress. Kódové označením Vaughan bylo vybráno na počest americké jazzové zpěvačky Sarah "Sassy" Vaughan. Z novinek lze zmínit například novou výchozí šablonu Twenty Seventeen, náhledy pdf souborů nebo WordPress REST API.

Ladislav Hagara | Komentářů: 4
6.12. 12:00 | Zajímavý projekt

Projekt Termbox umožňuje vyzkoušet si linuxové distribuce Ubuntu, Debian, Fedora, CentOS a Arch Linux ve webovém prohlížeči. Řešení je postaveno na projektu HyperContainer. Podrobnosti v často kladených dotazech (FAQ). Zdrojové kódy jsou k dispozici na GitHubu [reddit].

Ladislav Hagara | Komentářů: 27
6.12. 11:00 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě CVE-2016-8655 v Linuxu zneužitelné k lokální eskalaci práv. Chyba se dostala do linuxového jádra v srpnu 2011. V upstreamu byla opravena minulý týden [Hacker News].

Ladislav Hagara | Komentářů: 2
5.12. 22:00 | Komunita

Přibližně před měsícem bylo oznámeno, že linuxová distribuce SUSE Linux Enterprise Server (SLES) běží nově také Raspberry Pi 3 (dokumentace). Obraz verze 12 SP2 pro Raspberry Pi 3 je ke stažení zdarma. Pro registrované jsou po dobu jednoho roku zdarma také aktualizace. Dnes bylo oznámeno, že pro Raspberry Pi 3 je k dispozici také nové openSUSE Leap 42.2 (zprávička). K dispozici je hned několik obrazů.

Ladislav Hagara | Komentářů: 6
5.12. 06:00 | Zajímavý software

OMG! Ubuntu! představuje emulátor terminálu Hyper (GitHub) postavený na webových technologiích (HTML, CSS a JavaScript). V diskusi k článku je zmíněn podobný emulátor terminálu Black Screen. Hyper i Black Screen používají framework Electron, stejně jako editor Atom nebo vývojové prostředí Visual Studio Code.

Ladislav Hagara | Komentářů: 50
5.12. 06:00 | Zajímavý článek

I letos vychází řada ajťáckých adventních kalendářů. QEMU Advent Calendar 2016 přináší každý den nový obraz disku pro QEMU. Programátoři se mohou potrápit při řešení úloh z kalendáře Advent of Code 2016. Kalendáře Perl Advent Calendar 2016 a Perl 6 Advent Calendar přinášejí každý den zajímavé informace o programovacím jazyce Perl. Stranou nezůstává ani programovací jazyk Go.

Ladislav Hagara | Komentářů: 10
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 795 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: synchronizacia databáz

1.1.2012 18:28 adrinko | skóre: 22
synchronizacia databáz
Přečteno: 499×
Zdravím všetkých a prajem krásny nový rok 2012! Ako tak nastúpil nový rok, mám jednu databázovú otázku (mysql, postgre...). Chcel by som mať v mojej db mysql na servri tie isté údaje, ako sú v inej db u klienta (len určité tabuľky a stĺpce). Vždy ma z klientovej db zaujíma len niekoľko tabuliek a určité stĺpce, ktoré by som potreboval mať vždy aktuálne aj u mňa na servri. Klientova db nie je voľne prístupná z webu, ale u klienta mi beží moja aplikácia, ktorá by mi mohla vyberať požadované stĺpce a poslať ku mne na server.

Problém je, že vždy potrebujem raz denne zaktualizovať z klientovej databázy (len tie určité dáta) cca 7000 riadkov a na mojom mysql ich porovnať v db a povedzme ak sa niečo zmenilo (dáta v stĺpcoch alebo pribudli riadky) tak by sa to malo v mojej mysql zaktualizovať. Otázkou zostáva, ak bude tých riadkov nie 7tisic ale povedzme 700tisíc, ako to spraviť tak, aby to bolo čo najšetrnejšie k výkonu oboch stojov? (a aby posielané dáta neboli veľmi veľké)

1. Mohol by som spraviť výber od klienta vo forme xml a potom toto xmlko spracoať u mňa a spraviť selecty (či existujúuž dané dáta), update poprípade inserty...ale neni to pri tak veľa dátach zdĺhavé/zbytočné/neefektívne?

2. ďalšia možnosť je nejaký dump, avšak tu by sa to asi skomplikovalo, pretože tie databázy nemajú uplne identickú štruktúru tabuliek (niekde je viac stĺpcov a niekde menej).

3. najlepšie by bolo, len inkrementárne zmeny získať, ale toto žiaľ neviem odsledovať, pretože na to by som musel mať aj časy jednotlivých zmien niekde evidované...no iná aplikácia, ktorá v klientovej db robí zmeny, nezapisuje a neloguje jednotlivé časy zmien, takže neviem selectnuť len tie, ktoré boli zmenené iba v určitom časovom období.

Poradíte mi prosím najvhodnejšiu a najefektívnejšiu cestu, ako dosiahnuť presne to čo potrebujem? veľká vďaka!

Odpovědi

1.1.2012 20:08 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: synchronizacia databáz
Nejjednodušší mi připadá přidat do zdrojových tabulek sloupec s datem a časem poslední změny a ten aktualizovat pomocí triggerů nebo podobného mechanismu. Pokud můžete do struktury těch tabulek zasáhnout.
1.1.2012 20:42 adrinko | skóre: 22
Rozbalit Rozbalit vše Re: synchronizacia databáz
áno, to by bolo úplne super, no práve toto nemôžem spraviť v tej pôvodnej databáze :/
pavlix avatar 1.1.2012 22:54 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: synchronizacia databáz
Tak udělat select podle času modifikace, pokud to jde... pokud to nejde, tak by mohlo jít spoléhat na rostoucí ID... pokud ani to ne, tak je jakákoli optimalizace problém.
GentooFedoraSCRAM – Jsem open source vývojář, nikoli markeťák ⇒ názory zde uvedené jsou jen mé vlastní.
2.1.2012 01:21 adrinko | skóre: 22
Rozbalit Rozbalit vše Re: synchronizacia databáz
vďaka - Tak udělat select podle času modifikace, pokud to jde - toto ma zaujíma - má napr. postgre, alebo fbd v sebe nejakú "feature" ako zistiť, kedy ktorý riadok bol modifikovaný? (alebo bola pôvodná myšlienka myslená len tak, že by bol nutný ďalší stĺpec, v ktorom by sa automaticky ukladal čas modifikácie?)

ad rastúce ID - to by šlo za predpokladu, že dáta len pribúdajú, no v mojom prípade môžu dáta nielen pribúdať, ale aj už pôvodné updatnúť (takže rastúce ID mi nenapovie, či už predtým dáta iných IDečiek neboli modifikované)

pavlix avatar 2.1.2012 01:39 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: synchronizacia databáz
Může se ti stát, že ta optimalizace fakt rozumně nepůjde.
GentooFedoraSCRAM – Jsem open source vývojář, nikoli markeťák ⇒ názory zde uvedené jsou jen mé vlastní.
2.1.2012 08:13 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: synchronizacia databáz
Pokud do zdrojové databáze nemůžete přidat ani žádný trigger, natož měnit strukturu, tak samozřejmě přenést jen rozdíly nepůjde. Moc ale nechápu, proč se tady ptáte na různé typy databází a zda nemají funkci ukládání data a času modifikace už vestavěnou. Pokud už máte nějakou databázi, do které nesmíte nijak zasahovat, je snad jasné, na jakém databázovém stroji to běží. A ukládání data a času modifikace asi nebude mít vestavěné žádná velká databáze, protože se to dá snadno realizovat pomocí triggerů, navíc si to každý může udělat podle svých potřeb.
Josef Kufner avatar 6.1.2012 11:54 Josef Kufner | skóre: 66
Rozbalit Rozbalit vše Re: synchronizacia databáz
Vždycky můžeš udělat lokálně dump databáze a pak pomocí rsyncu přenést ten. U sebe si ho naimportuješ do pomocné databáze (před importem vždy prázdné) a vytáhneš si data jak potřebuješ. Bude to výpočetně náročnější než dostávat z databáze jen změněná data, ale samotný přenos bude vcelku malý.
Hello world ! Segmentation fault (core dumped)
6.1.2012 12:05 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: synchronizacia databáz
To hodně záleží na tom, jak ten dump bude vypadat – dovedu si snadno představit případ, kdy rsync vůbec nepomůže. Určitě ten dump nemůže být komprimovaný, ale i pro textový dump může dojít k tomu, že společné části budou příliš krátké.
Josef Kufner avatar 6.1.2012 12:18 Josef Kufner | skóre: 66
Rozbalit Rozbalit vše Re: synchronizacia databáz
Předpokládám textový dump, který produkuje například mysqldump (create table + hromada insertů).

Stát se to může, ale pravděpodobně budou změny mezi synchronizacema omezeny jen na relativně malou část řádek a starší data budou nezměněna. A i kdyby ne, v nejhorším případě se to přenese celé tak jako tak. Pokud by to ale byl příliš častý případ, asi by neřešil inkrementální update.
Hello world ! Segmentation fault (core dumped)
6.1.2012 12:41 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: synchronizacia databáz
Záleží i na pořadí řádků v exportu – je v případě dumpu stabilní? V nejhorším případě se to přenese celé plus overhead rsyncu, takže by bylo lepší použít obyčejné scp.
Josef Kufner avatar 6.1.2012 13:23 Josef Kufner | skóre: 66
Rozbalit Rozbalit vše Re: synchronizacia databáz
Dump stabilní bude, protože se provádí pokaždé stejným způsobem. I když databáze nijak nebude garantovat pořadí záznamů a není nijak definované, pořád to pořadí bude pokaždé stejné (pokud data nebyla měněna), protože jinak by se databáze musela postarat o jejich zamíchání. Nové záznamy můžou být na místech po smazaných, databáze může občas udělat defragmentaci (optimize table), ale ve většině případů to bude v pohodě.
Hello world ! Segmentation fault (core dumped)
6.1.2012 13:40 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: synchronizacia databáz
Zamíchání může být vedlejším efektem třeba paralelního zpracování. Jinak podle mne je dost pravděpodobné, že pořadí v dumpu bude víceméně stabilní, spíš jenom upozorňuju na to, že to chce vyzkoušet a nespoléhat jen slepě na to, že „rsync to zařídí“.
12.1.2012 10:43 vratidlo007 | skóre: 20
Rozbalit Rozbalit vše Re: synchronizacia databáz
Co zkusit nejake ETL (CloverETL nebo Kettle)? Kettle treba umoznuje porovnani podle hodnot vybranych poli. Ale na rovinu musim dodat, ze se nejedna o nic jineho, nez ze to precte radek po radku ze zdrojove DB a porovna s cilovou. Ty ktere se shoduji preskoci, ktere jsou modifikovane updatuje a ostatni insertuje. Pokud tam jsou nejake tabulky, co se nemeni, ale jen v case do nich pribyvaji nove zaznamy, pak staci udelat insert ... where x > posledni_zaznam_v_cilove_db. Vyhoda je, ze se takhle daji sync jakekoliv DB, ktere maji JDBC driver.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.