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í
×
    včera 15:55 | Komunita

    O víkendu (15:00 až 23:00) probíha EmacsConf 2025, tj. online konference vývojářů a uživatelů editoru GNU Emacs. Sledovat ji lze na stránkách konference. Záznamy budou k dispozici přímo z programu.

    Ladislav Hagara | Komentářů: 0
    včera 15:44 | Komunita

    Provozovatel internetové encyklopedie Wikipedia jedná s velkými technologickými firmami o uzavření dohod podobných té, kterou má s Googlem. Snaží se tak zpeněžit rostoucí závislost firem zabývajících se umělou inteligencí (AI) na svém obsahu. Firmy využívají volně dostupná data z Wikipedie k trénování jazykových modelů, což zvyšuje náklady, které musí nezisková organizace provozující Wikipedii sama nést. Automatické programy

    … více »
    Ladislav Hagara | Komentářů: 15
    včera 15:22 | IT novinky

    Evropská komise obvinila síť 𝕏 z porušení unijních pravidel, konkrétně nařízení Evropské unie o digitálních službách (DSA). Vyměřila jí za to pokutu 120 milionů eur (2,9 miliardy Kč). Pokuta je podle názoru amerického ministra zahraničí útokem zahraničních vlád na americký lid. K pokutě se vyjádřil i americký viceprezident: „EU by měla podporovat svobodu projevu, a ne útočit na americké společnosti kvůli nesmyslům“.

    Ladislav Hagara | Komentářů: 10
    5.12. 17:11 | IT novinky

    Společnost Jolla spustila kampaň na podporu svého nového telefonu Jolla Phone se Sailfish OS. Dodání je plánováno na první polovinu příštího roku. Pokud bude alespoň 2 000 zájemců. Záloha na telefon je 99 €. Cena telefonu v rámci kampaně je 499 €.

    Ladislav Hagara | Komentářů: 28
    5.12. 15:11 | IT novinky

    Netflix kupuje Warner Bros. včetně jejích filmových a televizních studií HBO Max a HBO. Za 72 miliard dolarů (asi 1,5 bilionu korun).

    Ladislav Hagara | Komentářů: 2
    5.12. 14:11 | IT novinky

    V Las Vegas dnes končí pětidenní konference AWS re:Invent 2025. Společnost Amazon Web Services (AWS) na ní představila celou řadu novinek. Vypíchnout lze 192jádrový CPU Graviton5 nebo AI chip Trainium3.

    Ladislav Hagara | Komentářů: 0
    5.12. 00:33 | Nová verze

    Firma Proxmox vydala novou serverovou distribuci Datacenter Manager ve verzi 1.0 (poznámky k vydání). Podobně jako Virtual Environment, Mail Gateway či Backup Server je založená na Debianu, k němuž přidává integraci ZFS, webové administrační rozhraní a další. Datacenter Manager je určený ke správě instalací právě ostatních distribucí Proxmox.

    |🇵🇸 | Komentářů: 10
    4.12. 23:44 | Nová verze

    Byla vydána nová verze 2.4.66 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 5 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    4.12. 14:00 | IT novinky

    Programovací jazyk JavaScript (Wikipedie) dnes slaví 30 let od svého oficiálního představení 4. prosince 1995.

    Ladislav Hagara | Komentářů: 1
    4.12. 04:22 | Bezpečnostní upozornění

    Byly zveřejněny informace o kritické zranitelnosti CVE-2025-55182 s CVSS 10.0 v React Server Components. Zranitelnost je opravena v Reactu 19.0.1, 19.1.2 a 19.2.1.

    Ladislav Hagara | Komentářů: 3
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (48%)
     (19%)
     (17%)
     (22%)
     (15%)
     (24%)
     (16%)
     (18%)
    Celkem 435 hlasů
     Komentářů: 18, poslední 2.12. 18:34
    Rozcestník

    Dotaz: Protokol/formát pro přírůstkové aktualizace databází

    xkucf03 avatar 21.1.2014 12:58 xkucf03 | skóre: 49 | blog: xkucf03
    Protokol/formát pro přírůstkové aktualizace databází
    Přečteno: 797×

    Existuje nějaký protokol/formát pro přírůstkové aktualizace relačních databází?

    Dejme tomu, že mám nějaký veřejný registr a chci nabídnout přírůstkové aktualizace – aby si lidé nemusely stahovat pokaždé všechno znova.

    Teoreticky by jim šlo dát SQL skript, který bude obsahovat INSERTy, UPDATy a DELETy, ale to je jednak takové dost volné (klient musí dost věřit serveru, aby si spustil jeho SQL skript) a jednak je to platformě závislé (dialekt konkrétního DBMS a vlastně i závislost na relačním schématu jako takovém – teoreticky si klient může ukládat data jinak a SQL třeba vůbec nepoužívá – chce jen platformě nezávislý seznam změn záznamů).

    (k otázce mě inspiroval zápisek v blogu: Klient-server synchronizace – konečné řešení)

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes

    Odpovědi

    21.1.2014 13:28 logik
    Rozbalit Rozbalit vše Re: Protokol/formát pro přírůstkové aktualizace databází
    Multiplatformní neee :-( Různé databáze nabízejí různá více či méně fční proprietální řešení typu transakčních logů. Ale tato řešení jsou zpravidla stejně bezpečné, jako vykonávání SQL skriptu, či spíše ještě nebezpečnější.

    Nechápu, co je nebezpečné na SQL skriptu - pro jeho vykonání lze udělat uživatele, který bude moci jen tam, kam zas z principu musí.

    xkucf03 avatar 21.1.2014 13:56 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Protokol/formát pro přírůstkové aktualizace databází

    S tou bezpečností máš asi pravdu, možná je to zbytečná paranoia… jen je mi trochu proti srsti, aby někdo do mého systému cpal rovnou SQL. Ale ono stačí, když mu necháš třeba přístup k information_schema a on ti tam pustí SELECT s kartézským součinem přes několik tabulek.

    Jde mi o formát/protokol, který by byl vhodný i pro to veřejné nasazení a umožňoval jen to nutné minimum – přidávat záznamy, aktualizovat a mazat. A ve „WHERE“ podmínce by mohl být jen primární klíč, ne nějaké vnořené SELECTy atd., stejně tak ve „VALUES“ – tam by taky měly být jen prosté hodnoty.

    Na druhou stranu, čím mocnější ten nástroj bude, tím efektivnější/stručnější inkrementy se dají napsat – např.

    UPDATE tabulka SET sloupec_1 = sloupec_2 + 100 WHERE id IN (SELECT …)

    Místo aby se vyjmenovával záznam po záznamu a jejich hodnoty… ale zase o to víc se to dá zneužít. A o to méně je to platformě nezávislé – když už to bude SQL, tak na straně klienta potřebuji minimálně nějaký parser SQL, abych si z toho vytahal ty hodnoty a aktualizoval si svoji lokální databázi (která třeba ani nemusí být relační).

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    21.1.2014 16:29 logik
    Rozbalit Rozbalit vše Re: Protokol/formát pro přírůstkové aktualizace databází
    No nějaký parser potřebuješ vždy. Akorát že k některým jazykům parsery již existují, k některým si ho musíš napsat sám.

    Obecný formát pro úpravu obecných dat neexistuje. To si holt budeš muset napsat sám, udělat logovací tabulky na ně navěsit triggery a pak je v nějakém formátu vypisovat.
    9.3.2014 23:19 ebik
    Rozbalit Rozbalit vše Re: Protokol/formát pro přírůstkové aktualizace databází
    Tak si to nespustis nad produkcni databazi. Pokud je nejaka databaze prilis cenna na to, abys do ni poustel neoverenou aktualizaci v jakemkoliv formatu, tak ji nejprve pustis (klidne automaticky) nad oddelenou databazi, a pokud se to nerozbije (a je zas na tobe co vsechno nechas zkontrolovat), tak ji prelejes do te produkcni...
    24.1.2014 19:12 Ivan
    Rozbalit Rozbalit vše Re: Protokol/formát pro přírůstkové aktualizace databází
    Chces to psat sam? Anebo ti staci to koupit? Kdysi exitovala firma GoldenGate, ktera nabizala takovy produkt - dneska ji vlastni Oracle. Predtim Oracle obsahoval technologii Streams resp XStream. Dale nabizi neco podobneho Sybase - nevim presne jak se ten jejich replakacni server jmenuje.

    Takovy replikacni server bud chroupe binarni redo-logy DB serveru anebo si nad tabulkami vytvori vlastni replikacni triggery. Data pak posila na aplikacni server. Tam se data filtruji podle pravidel, anebo je zpracovavaji uzivatelske pluginy.

    Vsechna tahle intergraci reseni maji vlastni ad-hoc pristup ke kazde z velkych DBMS.
    xkucf03 avatar 24.1.2014 19:28 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Protokol/formát pro přírůstkové aktualizace databází

    Určitě by to měl být otevřený software nebo alespoň otevřený standard – jde o to, aby na straně příjmu těch dat mohl být kdokoli – veřejnost – a aby si to mohl napasovat na nějaké svoje řešení. Co nejjednodušší – tzn. během dne si přečtu specifikaci a napíšu parser, nebo použiji hotovou knihovnu a už můžu přijímat aktualizace dat.

    Na straně zdroje ani není potřeba nějak duplikovat data do logů – klidně může být u každého záznamu číslo verze – rostoucí ID napříč celou databází – a klient si pak vyžádá všechny záznamy novější než určité ID (tzn. než určitý časový okamžik).

    Není to žádná velká věda. On by to mohl být i třeba CSV soubor (soubory) nebo nějaký jednoduchý binární formát. Jen mi šlo o to, zda nevymýšlím něco, co už tu dávno je.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    28.1.2014 13:55 kapo | skóre: 16 | blog: runtime
    Rozbalit Rozbalit vše Re: Protokol/formát pro přírůstkové aktualizace databází
    No, když to může být třeba i CSV soubor, tak by to rovnou mohl být GIT repozitář nad skupinou CSV souborů. Klient si vždy stáhne jen rozdíl (efektivní přenos dat) a načte jen ty záznamy, které jsou novější, než ty, co má.
    Why make things difficult, when it is possible to make them cryptic... - Aksel Peter Jorgensen
    Josef Kufner avatar 28.1.2014 14:45 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Protokol/formát pro přírůstkové aktualizace databází
    U takových řešení je pak jen dobré se zamyslet nad vhodným formátem dat, aby byl dostatečně diff-friendly, a možná i merge-friendly. Jinak to na mnoho aplikací může být velmi dobré řešení.
    Hello world ! Segmentation fault (core dumped)
    xkucf03 avatar 28.1.2014 15:00 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Protokol/formát pro přírůstkové aktualizace databází

    Ono hlavně ta druhá strana si bude chtít aktualizovat svoji databázi – tzn. udělat změny, ne všechno smazat a všechno znova nahrát. Takže ono to sice vypadá skvěle, že se použije Git jako hotový software, ale samo o sobě to nestačí, protože on dejme tomu zajistí přenos těch změn po síti, ale pak si stejně musím udělat diff a z něj pomocí nějakého nástroje (ten je potřeba napsat) zjistit, do jaké tabulky mají změny přijít, zda se má přidávat, mazat, aktualizovat, a když, tak co tzn. vydolovat z toho primární klíče, abychom věděli, co smazat/aktualizovat a vyrobit výsledné SQL (případně jiné příkazy). To je ten nejpracnější úkol a verzovací systém s ním nepomůže, leda ho může ještě zkomplikovat.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    Josef Kufner avatar 28.1.2014 15:19 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Protokol/formát pro přírůstkové aktualizace databází
    Pokud jako databázi používáš ty textové soubory, tak ti to pomůže hodně. Pak třeba jen necháš přegenerovat index a máš hotovo. Pokud druhá strana například jen zobrazuje připravená data, může takový přístup být velice efektivní, zejména pokud není potřeba SQL databáze.
    Hello world ! Segmentation fault (core dumped)
    28.1.2014 21:29 Filip Jirsák
    Rozbalit Rozbalit vše Re: Protokol/formát pro přírůstkové aktualizace databází
    Pro použití např. ve veřejném sektoru by se mi na použití Gitu nelíbilo to, že by byl určen program, ne formát. To už tu mnohokrát bylo, a nikdy to nebylo dobré.

    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.