HW nároky malých aplikací

L.

Re:HW nároky malých aplikací
« Odpověď #45 kdy: 03. 03. 2017, 00:13:40 »
Další skvělej nápad je: Budeme ty dokumenty ukládat do BLOBu v databázi. ??? Cože? Bavíme se o stovkách GB ročně!!!

Tak jestli se bojíš pitomých pár stovek GB ročně, tak to nech pořádným chlapům a dál si hraj jen s hračkama pro děti z mateřský školky.

Ale to se tak normálně dělá... Cože? A nešlo by je uložit na úložiště pod nějakým vygenerovaným jménem a do DB uložit jen původní název, vygenerovaný jméno a klidně nějaký další metadata? Ehmmm... eeeerrr.... noooo.... ale jooo... šlo by to... ale víte... hmmmm... máme to napsaný jinak... eeeee... ono by to bylo strašně drahý...

Pravděpodobně říkali věci jako "A kdo ty soubory smaže při rollbacku transakce?", ale ty evidentně netušíš, která bije.


Přidám ještě jednu ukázku z praxe, tentokrát z druhé strany:

D: Jak to, že nejsou logy na vývojovém serveru?
A: No, my jsme je smazali.
D: A proč jste je smazali? My je potřebujeme na zkoumání chyb.
A: No, ono tam došlo místo.
D: Jak to, vždyť mají jen pár desítek giga?
A: No, on ten server běží ve virtuálu a na tom fyzickém stroji je jich víc a tak vychází na jeden virtuál málo místa.
D: Hele, vedle je Alza, já tam skočím a koupím tam za svoje nějaký 3TB disk, ten bude stačit na devel logy za celý rok.
A: No to nejde, to musí být super speciální extra hyper cool serverový disk.
D: Super serverový disk? Na logy z vývojového serveru????
A: No...


Tuxik

  • *****
  • 1 473
    • Zobrazit profil
    • E-mail
Re:HW nároky malých aplikací
« Odpověď #46 kdy: 03. 03. 2017, 06:05:46 »
Tak jestli se bojíš pitomých pár stovek GB ročně, tak to nech pořádným chlapům a dál si hraj jen s hračkama pro děti z mateřský školky.
Ne, nebojím se pár set giga ročně, ale...
https://www.root.cz/zpravicky/naucte-se-adminovat-databazi-oracle-skoleni/
tam ti jistě rádi vysvětlí, jak fajnovej nápad je zasvinit si tím databázi, jaké to má khůůůůl výhody a proč to přesně tak udělat.
A až se vrátíš domů, opiš 1000x "Už nejsem vůl a už nikdy nebudu cpát zbytečný bloby do databáze".

Janci

Re:HW nároky malých aplikací
« Odpověď #47 kdy: 03. 03. 2017, 08:52:23 »
Kam na to chodíte, že klient si objedná železo za milión?

Typický prípad: my máme vlastný server, nemôžete to dať tam? 10 rokov nám beží bez problémov!

Antispam otázka "Ve kterém měsíci proběhla sametová revoluce?" by mohla brať november ako správnu odpoveď. Človek musí googliť...

Lojza

  • *****
  • 672
    • Zobrazit profil
    • E-mail
Re:HW nároky malých aplikací
« Odpověď #48 kdy: 03. 03. 2017, 10:16:56 »
Tak jestli se bojíš pitomých pár stovek GB ročně, tak to nech pořádným chlapům a dál si hraj jen s hračkama pro děti z mateřský školky.
Ne, nebojím se pár set giga ročně, ale...
https://www.root.cz/zpravicky/naucte-se-adminovat-databazi-oracle-skoleni/
tam ti jistě rádi vysvětlí, jak fajnovej nápad je zasvinit si tím databázi, jaké to má khůůůůl výhody a proč to přesně tak udělat.
A až se vrátíš domů, opiš 1000x "Už nejsem vůl a už nikdy nebudu cpát zbytečný bloby do databáze".

no napriklad justice pouziva ISAS - Informacni system pro administrativu soudu coz neni nic jineho nez graficka nadstavba nad oraclem v jave a tam se normalne ukladaji vsechny soubory napr. *.doc, *.pdf do databaze, je tam dokonce i featura ze by to umelo fulltextove prohledavat ale co pamatuju nebyla zapnuta coz bylo skoda kazdy znovuvynalezal kolo (kazdy okresni soud ma svuj ISAS  na jednom svym serveru v baraku soudu, jednotlive ISASy umoznuji dalkovy pristup pro moznost proverek atd.. pres noc se replikuji nekam dal kde ma nekdo k dispozici vsech 87 ISASu okresnich soudu, krajske vrchni nejvyssi, nejvyssi spravni a ustavni soud maji plus minus podobne systemy) akorat mene objemnou agendu tak asi maji nad tim zapnutej i ten fulltext

lopata

Re:HW nároky malých aplikací
« Odpověď #49 kdy: 03. 03. 2017, 10:48:47 »
A až se vrátíš domů, opiš 1000x "Už nejsem vůl a už nikdy nebudu cpát zbytečný bloby do databáze".

Problém je, že nevidíš důsledy rozdělení dat. Kdybys chtěl dát některá data mimo databázi, tak musíš navíc řešit:

  • Referenční integritu. Kdo zajistí, že se soubor mimo databázi smaže, pokud neprojde insert transakce? Kdo zajistí, že se soubor nesmaže, pokud neprojde delete transakce? Co dělat, když se to nepovede smazat?
  • Zálohování. Jak a kam se data mimo databázi budou zálohovat?
  • Replikaci. Jak to celé během provozu bezpečně zreplikuju na jiný server?
  • Upload. Jak ten soubor dostanu na filesystém? scp, ftp, něco jiného? Musím to implementovat a udržovat.

Stojí to za ty problémy? Mám to dělat, protože si admin myslí, jak je to skvělý nápad? Ne děkuji.


Tuxik

  • *****
  • 1 473
    • Zobrazit profil
    • E-mail
Re:HW nároky malých aplikací
« Odpověď #50 kdy: 03. 03. 2017, 10:50:30 »
Kam na to chodíte, že klient si objedná železo za milión?

Typický prípad: my máme vlastný server, nemôžete to dať tam? 10 rokov nám beží bez problémov!

Ale to potom není klient, ale problém. Rozumná firma by je měla poslat do řiti, nebo alespoň do čmoudu. Ale to nikdo neudělá, naslibuje se to, ideálně levně, vyúčtuje se 3x tolik za blbosti, trpí zákazník i dodavatel a nakonec se to ani neuvede do produkce, protože to prostě fungovat nebude. Ale pokud to za to spoustě "profesionálních top garážníků" stojí, tak OK.

Tuxik

  • *****
  • 1 473
    • Zobrazit profil
    • E-mail
Re:HW nároky malých aplikací
« Odpověď #51 kdy: 03. 03. 2017, 11:04:21 »
Stojí to za ty problémy? Mám to dělat, protože si admin myslí, jak je to skvělý nápad? Ne děkuji.
Neumíš si poradit se základními problémy vývoje? No tak asi nevyvíjej. Namalovat okýnko s tlačítkem umí každý dítě ze školky, na to tě nikdo reálně nepotřebuje. Ano, z pohledu vývoje je to cůůůl, žádná práce, pohoda klídek, všechny problémy se hodí na DB a je to cajk.
Ale jedna jediná reálná výhoda by byla full text prohledávání, ale na to jsou o několik řádů efektivnější nosql databáze, do kterých se obsah naindexuje.

Lojza

  • *****
  • 672
    • Zobrazit profil
    • E-mail
Re:HW nároky malých aplikací
« Odpověď #52 kdy: 03. 03. 2017, 11:07:07 »
A až se vrátíš domů, opiš 1000x "Už nejsem vůl a už nikdy nebudu cpát zbytečný bloby do databáze".

Problém je, že nevidíš důsledy rozdělení dat. Kdybys chtěl dát některá data mimo databázi, tak musíš navíc řešit:

  • Referenční integritu. Kdo zajistí, že se soubor mimo databázi smaže, pokud neprojde insert transakce? Kdo zajistí, že se soubor nesmaže, pokud neprojde delete transakce? Co dělat, když se to nepovede smazat?
  • Zálohování. Jak a kam se data mimo databázi budou zálohovat?
  • Replikaci. Jak to celé během provozu bezpečně zreplikuju na jiný server?
  • Upload. Jak ten soubor dostanu na filesystém? scp, ftp, něco jiného? Musím to implementovat a udržovat.

Stojí to za ty problémy? Mám to dělat, protože si admin myslí, jak je to skvělý nápad? Ne děkuji.

jeste si vzpominam ze sice v ISASu se "pripoji soubor do databaze" ale fyzicky nejde o pridani *.doc do databazoveho souboru oracle, jde vlastne jen o link na soubor na disku (kdyz v ISASu kliknu na Otevrit tak se soubor nacte z disku ne z databaze), samotne soubory ktere nalezi prislusnemu soudnimu spisu (elektronicky spis) jsou pod nazvem sp. zn. jako nazvem adresare normalne ulozeny na filesystemu - na disku v uvedene adresarove strukture rok/sp.zn/...

Tuxik

  • *****
  • 1 473
    • Zobrazit profil
    • E-mail
Re:HW nároky malých aplikací
« Odpověď #53 kdy: 03. 03. 2017, 11:15:51 »
jeste si vzpominam ze sice v ISASu se "pripoji soubor do databaze" ale fyzicky nejde o pridani *.doc do databazoveho souboru oracle, jde vlastne jen o link na soubor na disku (kdyz v ISASu kliknu na Otevrit tak se soubor nacte z disku ne z databaze), samotne soubory ktere nalezi prislusnemu soudnimu spisu (elektronicky spis) jsou pod nazvem sp. zn. jako nazvem adresare normalne ulozeny na filesystemu - na disku v uvedene adresarove strukture rok/sp.zn/...
Celkem nečekaně... on totiž každej, kdo měl někdy co do činění s několikaterovou databází, nejlíp padlou na hubu, tak si pro příště rozmyslí, co do ní cpe.

2Lojza: Jinak ti dám radu, commit pustíš, až je vše na svém místě, takže nejhorší varianta je, že se ti válí na disku soubor, kterej není v DB... no katastrofa... oprava řádově na minutu.

Re:HW nároky malých aplikací
« Odpověď #54 kdy: 03. 03. 2017, 11:16:56 »
Tak když už se bavíme o opravdu velkých blobech, tak na to jsou objektové databáze.

lopata

Re:HW nároky malých aplikací
« Odpověď #55 kdy: 03. 03. 2017, 11:20:48 »
jeste si vzpominam ze sice v ISASu se "pripoji soubor do databaze" ale fyzicky nejde o pridani *.doc do databazoveho souboru oracle, jde vlastne jen o link na soubor na disku (kdyz v ISASu kliknu na Otevrit tak se soubor nacte z disku ne z databaze), samotne soubory ktere nalezi prislusnemu soudnimu spisu (elektronicky spis) jsou pod nazvem sp. zn. jako nazvem adresare normalne ulozeny na filesystemu - na disku v uvedene adresarove strukture rok/sp.zn/...

To je škoda, že ten systém nenavrhoval někdo kompetentní, ale dělal to asi nějaký admin... Nicméně u státní správy se ani moc nedivím...

lopata

Re:HW nároky malých aplikací
« Odpověď #56 kdy: 03. 03. 2017, 11:31:58 »
Jinak ti dám radu, commit pustíš, až je vše na svém místě, takže nejhorší varianta je, že se ti válí na disku soubor, kterej není v DB... no katastrofa... oprava řádově na minutu.

Jak uděláš master-master replikaci dat na jiný server za provozu? Co když někdo vytvořil v jedné instanci novou verzi nějakého souboru? Ve druhé instanci máš nesmazanou starou verzi, co uděláš, kterou si vybereš? Syncneš nejdřív databázi a potom filesystém, nebo opačně? V prvním případě budeš mít v databázi záznamy, které ještě neexistují na disku. Ve druhém případě mažeš soubory z disku, na které ještě odkazují záznamy v databázi.Dovedeš si představit, jak složité a nespolehlivé řešení by to bylo?

Lojza

  • *****
  • 672
    • Zobrazit profil
    • E-mail
Re:HW nároky malých aplikací
« Odpověď #57 kdy: 03. 03. 2017, 11:35:06 »
ja databazim nerozumim tak nevim jestli je to navrzene dobre nebo spatne, jen popisuji co si pamatuju .. jinak prumerny okresni soud vygeneruje+prijme radove  stovky tisic *.doc *.pdf *.rtf.. rocne, vsechny rocniky jsou v jedne databazi, ISAS se zavadel cca v roce 2005 takze nyni uz ma 11 let v databazi takze u nekterych vetsich okresnich soudu  pocet dokumentu v databazi muze byt v radu jednotek milionu, nevim jestli je to velka nebo mala databaze, co pamatuju tak byla docela svizna a i vyhledavaci dotazy (jsou tam predpripravene v gui , zadne selecty joiny ...) byly docela svizne, nejdele jsem cekal u komplikovanych spojenych dotazu tak minutu

Lojza

  • *****
  • 672
    • Zobrazit profil
    • E-mail
Re:HW nároky malých aplikací
« Odpověď #58 kdy: 03. 03. 2017, 11:38:21 »
Jinak ti dám radu, commit pustíš, až je vše na svém místě, takže nejhorší varianta je, že se ti válí na disku soubor, kterej není v DB... no katastrofa... oprava řádově na minutu.

Jak uděláš master-master replikaci dat na jiný server za provozu? Co když někdo vytvořil v jedné instanci novou verzi nějakého souboru? Ve druhé instanci máš nesmazanou starou verzi, co uděláš, kterou si vybereš? Syncneš nejdřív databázi a potom filesystém, nebo opačně? V prvním případě budeš mít v databázi záznamy, které ještě neexistují na disku. Ve druhém případě mažeš soubory z disku, na které ještě odkazují záznamy v databázi.Dovedeš si představit, jak složité a nespolehlivé řešení by to bylo?

proto se ta replikace (+treba upgrade) delala pres noc, povinnosti bylo ze vsechny PC ukoncili praci v ISASu, vsichni lidi jiz odesli z budovy soudu

Tuxik

  • *****
  • 1 473
    • Zobrazit profil
    • E-mail
Re:HW nároky malých aplikací
« Odpověď #59 kdy: 03. 03. 2017, 12:11:57 »
Jinak ti dám radu, commit pustíš, až je vše na svém místě, takže nejhorší varianta je, že se ti válí na disku soubor, kterej není v DB... no katastrofa... oprava řádově na minutu.

Jak uděláš master-master replikaci dat na jiný server za provozu? Co když někdo vytvořil v jedné instanci novou verzi nějakého souboru? Ve druhé instanci máš nesmazanou starou verzi, co uděláš, kterou si vybereš? Syncneš nejdřív databázi a potom filesystém, nebo opačně? V prvním případě budeš mít v databázi záznamy, které ještě neexistují na disku. Ve druhém případě mažeš soubory z disku, na které ještě odkazují záznamy v databázi.Dovedeš si představit, jak složité a nespolehlivé řešení by to bylo?
Aha... a co když zárověň editují dva lidi jeden dokument? Kterou verzi si vybereš? Myslíš, že to nemusíš řešit kvůli všemocné DB? Máš to jednoduché, ale úplně stejně nespolehlivé.
Jinak... k záznamům v DB dáš revizi a strana s vyšší revizí má správné soubory. Hledáš raketovou vědu tam, kde není. K tomu musíš ošetřit zámky na soubory ( a to v jakémkoliv případě ) a i tak musíš pořešit, co dělat, když se stejně podaří dvěma lidem otevřít stejný soubor pro zápis. A to vše zcela nezávisle na tom, jestli se ti válí soubory na poli, v DB, v čmoudu, nebo zazipovaný na 5ti vadných disketách u někoho v šuplíku.