LINUXSOFT.cz Přeskoč levou lištu
Uživatel: Heslo:  
   CZUKPL

> Diskuze: blog Jak ušetřit místo na disku v MySQL databázi

Prečo len InnoDB?
(link)
30.9.2012 16:42
msx.

Prečo konfiguráciou vynucovať InnoDB? Osobne používam InnoDB, ak potrebujem transakcie a ostatné mám na MyISAM. Výhoda je tá, že ak vložím počas transakcie záznam do MyISAM tabuľky, tak sa uloží bez ohľadu na výsledok transakcie. To je vhodné pri logovaní zložitejších transakcií. Možno sú aj lepšie spôsoby logovania, ale toto je povedzme, že najjednoduchší.

Samozrejme som si vedomý, že MyISAM podporuje transakcie od verzie MySQL 5.6, takže tam by sa to muselo riešiť inak, ale kým sa 5.6 bude používať, tak to ešte chvíľu potrvá.

Re: Prečo len InnoDB?
(link)
1.10.2012 14:06
Miloslav Ponkrác

Vynucení InnoDb jsem dal jako jednu z možností. Protože optimální práce MyISAM vyžaduje mít nastavenu řadu bufferů na správné velikosti a to zbytečně bere paměť i prostředky. Kromě toho MyISAM hůře zamyká a případné problémy se řeší hůře. Není vůbec problém zablokovat server a přetížit ho SQL dotazem na MyISAM tabulku.

Jednoduše, na MyISAM se kašle při vývoji. To tam zůstává spíše jako startovací engine, ze kterého si MySQL přečte práva. Ale vývoj jede na InnoDb.

Spoléhat na to, že nějaké tabulky jsou mimo transakce – to není čisté řešení a může se časem vymstít. Jako čistější a v zásadě jednodušší a přitom zaručené a čisté řešení mi přijde otevřít si dvě konekce k databázi. Na jedné provádět transakce a ve druhé konekci logovat s autocommitem, nebo ručním commitem. Máte tu samou funkčnost, ale čistě a bez problémů a závislosti na vnitřní implementaci a vlastnostech MyISAM engine, kde byste musel paranoicky číhat, jestli není změněna vnitřní implementace MySQL.

Miloslav Ponkrác

Re: Prečo len InnoDB?
(link)
4.10.2012 18:05
MaReK Olšavský
Věk: ( ~44 let) , Pracovní pozice: ?? Asi "holka pro vše" , Praxe v IT let: ( ~ let) , Bydliště: Duchcov

MyISAM je už označený za deprecated, od MySQL 5.6 je InnoDB defaultní engine. Mimochodem jediné co zatím InnoDB úplně nemá je fulltextové vyhledávání, ale i to se do finálního vydání změní (viz. článek na The H). Pokud používáte jen základní SQL je Vám jedno který typ tabulek, ale Stored Procedury a transakce pojedou nejlépe v InnoDB.

S tím jak Oracle nenápadně ořezává OSS podporu bude dobré sledovat, jak si poradí vývojáři MariaDB, případně pořešit se svým webhosterem přechod na PgSQL (jakkoliv MySQL ji funkčně dorůstá).

Re: Prečo len InnoDB?
(link)
4.10.2012 22:13
Miloslav Ponkrác

Pokud někdy Oracle zruší závislost tabulek práv na MyISAM, pak není proč by tam MyISAM vůbec zůstalo.

InnoDB už fulltext umí v MySQL 5.6, mají to i v manuálu. (http://dev.mysql.com/doc/refman/5.6/en/mysql-nutshell.html) Kromě toho MySQL 5.6 udělala revoluci v datovém typu timestamp.

Oracle už útočí. Prostě postupně odstřihne MariaDB od informací. Ze zdrojových kódů postupně odstraní testové, benchmarkové a pomocné části, které nejsou potřeba ke zkompilování, ale ztíží testy kompatibility, nebo i samotné sestavení. Mohou také stopnout dokumentaci, která není pod GPL licencí.

Mimochodem, tento stav je způsoben právě autorem MariaDB, který odstraněním dokumentace z GPL licence chtěl mít kontrolu nad MySQL. Po prodeji MySQL, ze kterého měl autor MariaDB nemalé peníze teď začíná protestovat proti tomu co se s MySQL děje – ačkoli těžko říci, jak moc férové to je.

Featury bude Oracle přednostně uvádět do placeného produktu, zatímco do Community Edition, která je open source bude stagnovat.

Může také stopnout FOSS dodatek a tvrdě nařídit GPL pro všechny klienty.

Open source klienty stopne tak jako PHP. PHP napsalo mysqlnd klienta, který se ovšem není schopen připojit k mysql serveru, pokud jsou hesla vytvořená pomocí OLD_PASSWORD funkce. MySQL 5.6 má znovu změněnou funkci pro ukládání hesel – samozřejmě za silnější, ale hlavně nekompatibilní s PHP.

Pokud se nezmění strategie, tak Oracle dříve nebo později MySQL jako open verzi stopne. Možná ne přímo, ale nepřímo to znemožní nebo ztíží natolik, že to oficiálně bude open source, neoficiálně to bude jinak.

Je třeba se připravit, že s velkou pravděpodobností bude muset být udělán fork nebo hledat náhradu.

Nejsem si ovšem jist, zda je PostgreSQL ideální náhrada. Cílové použití u MySQL a PostgreSQL není úplně shodné. MySQL má embedded verzi a slouží (i jako neembedded verze) jako malá databáze do řady aplikací. MySQL je perfetkně portabilní na různé platformy, PostgreSQL stále nemá plnou funkčnost na neunixových platformách, protože s nimi nepočítalo, ba je někdy i nepokrytě nenávidělo. I když se situace hodně zlepšila.

Perfektní náhrada mohl být Firebird/Interbase, ale tam to zabili naprosto katastrofálním stavem dokumentace.

Re: Prečo len InnoDB?
(link)
5.10.2012 07:45
MaReK Olšavský
Věk: ( ~44 let) , Pracovní pozice: ?? Asi "holka pro vše" , Praxe v IT let: ( ~ let) , Bydliště: Duchcov

Chlape umíte psát stručně? :-D

MySQL 5.6 už je GA? Nebo je ještě stále Milestone/RC? Proto odmítám tvrzení „umí“, protože nějak nejsem vzít vlastnosti jako definitivní. Teprve po GA má význam řešit podporu connectorů, či považovat schopnosti za definitivní.

Podpora MyISAM jentak nezmizí, kvůli kompatibilitě se staršími databázemi. Byl bych zatraceně opatrný v tvrzení že to mohou udělat automaticky po otevření databáze v novém serveru, to nemusí projít.

FirebirdSQL (a už jsme jinde oba komentovali stav dokumentace) je skvělý server, ale s Vámi přesně popsanou slabinou. Jako bonus nefunguje embedded verze na síťovém disku. Trochu opruz je tvorba domén, na pozadí, i při používání základních datových typů. Já spíš jako embedku používám SQLite, či Apache Derby :-), ale ty funkčně nesahají FbSQL ani po kotníky.

Re: Prečo len InnoDB?
(link)
5.10.2012 21:37
Miloslav Ponkrác

Odpověď na první odstavec: Ano. :-)

Oracle vyvíjí vcelku seriózně a nedělá excesy. Pokud je něco release candidate, tak se vcelku dá spolehnout. Navíc ta verze 5.6.7 existuje, lze jí stáhnout, vyzkoušet, …

Vím, že podpora MyISAM nezmizí. Ani ne tak kvůli kompatibilitě se staršími databázemi, protože binární kompatibilita datových souborů není nutná feature. Spíše by byla velká práce odstranit MyISAM úplně, ale očekávám, že Oracle postupně míří směrem odstranit pojem „storage“ z MySQL zcela.

Jestli je Firebird skvělý server téměř nikdo netuší. Není-li dokumentace ani na úrovni, že si bez investice do komerčních knih nejste s to ani zjistit základní ucelenou informaci o datových typech, sql jazyce a základních tématech Firebirdu (a knihy jsou vždy pozadu za skutečností) – pak osobně se zříkám jakéhokoli hodnocení Firebirdu. Podle mého nelze databázi s takovým stavem dokumentace za skvělou vůbec prohlásit. Sám si vzpomínám na dobu, kdy jsem chtěl začít Firebird používat, ale s hrůzou jsem zjistil, že je třeba se ptát vývojářů i na to, jak se tam vlastně chová null a jaké jsou tam datové typy.

Sqlite jsem kdysi otestoval a už se ho neodvážím použít. Autor několikrát do roka významně přepíše jádro sqlite. Takže některé verze jsou super a jiné třeba ztrácí data. Takže při testu, zda použiji sqlite do jednoho projektu jsem stáhnul poslední stabilní verzi a hned na začátku testu jsem zjistil, že občas mizejí data uložená do sqlite tabulek. Když jsem se obrátil na fórum, dostal jsem vynadáno jak malý kluk, že mám přeci vědět, že některé verze – ač označené za stabilní – jsou prostě špatné a mám se na fóru ptát, kterou použít. Takže sqlite jsem se neodvážil použít.

Zkrátka MySQL má jednu věc – je spolehlivá, skutečně multiplatformní, dobře zdokumentovaná, dobře pracuje s thready, a na dbms malého typu je překvapivě vyspělá. A skutečná náhrada za ní v její nice a v její dotaženosti není.

DISKUZE

Prečo len InnoDB? 30.9.2012 16:42 msx.
  |- Re: Prečo len InnoDB? 1.10.2012 14:06 Miloslav Ponkrác
  L Re: Prečo len InnoDB? 4.10.2012 18:05 MaReK Olšavský
    L Re: Prečo len InnoDB? 4.10.2012 22:13 Miloslav Ponkrác
      L Re: Prečo len InnoDB? 5.10.2012 07:45 MaReK Olšavský
        L Re: Prečo len InnoDB? 5.10.2012 21:37 Miloslav Ponkrác




Příspívat do diskuze mohou pouze registrovaní uživatelé.
> Vyhledávání software
> Vyhledávání článků

28.11.2018 23:56 /František Kučera

Prosincový sraz spolku OpenAlt se koná ve středu 5.12.2018 od 16:00 na adrese Zikova 1903/4, Praha 6. Tentokrát navštívíme organizaci CESNET. Na programu jsou dvě přednášky: Distribuované úložiště Ceph (Michal Strnad) a Plně šifrovaný disk na moderním systému (Ondřej Caletka). Následně se přesuneme do některé z nedalekých restaurací, kde budeme pokračovat v diskusi.


Komentářů: 1

12.11.2018 21:28 /Redakce Linuxsoft.cz
22. listopadu 2018 se koná v Praze na Karlově náměstí již pátý ročník konference s tématem Datová centra pro business, která nabídne odpovědi na aktuální a často řešené otázky: Jaké jsou aktuální trendy v oblasti datových center a jak je optimálně využít pro vlastní prospěch? Jak si zajistit odpovídající služby datových center? Podle jakých kritérií vybírat dodavatele služeb? Jak volit vhodné součásti infrastruktury při budování či rozšiřování vlastního datového centra? Jak efektivně datové centrum spravovat? Jak co nejlépe eliminovat možná rizika? apod. Příznivci LinuxSoftu mohou při registraci uplatnit kód LIN350, který jim přinese zvýhodněné vstupné s 50% slevou.
Přidat komentář

6.11.2018 2:04 /František Kučera
Říjnový pražský sraz spolku OpenAlt se koná v listopadu – již tento čtvrtek – 8. 11. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma umění a technologie, IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář

4.10.2018 21:30 /Ondřej Čečák
LinuxDays 2018 již tento víkend, registrace je otevřená.
Přidat komentář

18.9.2018 23:30 /František Kučera
Zářijový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 20. 9. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář

9.9.2018 14:15 /Redakce Linuxsoft.cz
20.9.2018 proběhne v pražském Kongresovém centru Vavruška konference Mobilní řešení pro business. Návštěvníci si vyslechnou mimo jiné přednášky na témata: Nejdůležitější aktuální trendy v oblasti mobilních technologií, správa a zabezpečení mobilních zařízení ve firmách, jak mobilně přistupovat k informačnímu systému firmy, kdy se vyplatí používat odolná mobilní zařízení nebo jak zabezpečit mobilní komunikaci.
Přidat komentář

12.8.2018 16:58 /František Kučera
Srpnový pražský sraz spolku OpenAlt se koná ve čtvrtek – 16. 8. 2018 od 19:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát jsou tématem srazu databáze prezentaci svého projektu si pro nás připravil Standa Dzik. Dále bude prostor, abychom probrali nápady na využití IoT a sítě The Things Network, případně další témata.
Přidat komentář

16.7.2018 1:05 /František Kučera
Červencový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 19. 7. 2018 od 18:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát bude přednáška na téma: automatizační nástroj Ansible, kterou si připravil Martin Vicián.
Přidat komentář

   Více ...   Přidat zprávičku

> Poslední diskuze

2.12.2018 23:56 / František Kučera
Sraz

5.10.2018 17:12 / Jakub Kuljovsky
Re: Jaký kurz a software by jste doporučili pro začínajcího kodéra?

20.9.2018 10:04 / Jan Ober
Jaký kurz a software by jste doporučili pro začínajcího kodéra?

20.9.2018 10:00 / Jan Ober
Re: Gimp

20.2.2018 18:48 / Ivan Majer
portal

Více ...

ISSN 1801-3805 | Provozovatel: Pavel Kysilka, IČ: 72868490 (2003-2018) | mail at linuxsoft dot cz | Design: www.megadesign.cz | Textová verze