[python] praca s textom
Stepan
stepan.wagner na gmail.com
Pondělí Červen 23 10:20:34 CEST 2008
pro info: MySQL pouziva napriklad Facebook, Twitter, Yahoo!, Flickr coz dava
dohromady asi bazilion uzivatelu.
Tvrdit, ze MySQL neni profesionalni DB neni uz ani vtipne.
Omluv me, jdu si nasadit azbestovy oblek ;)
Stepan
-----Original Message-----
From: python-bounces na py.cz [mailto:python-bounces na py.cz] On Behalf Of
superman
Sent: Monday, June 23, 2008 3:01 AM
To: Konference PyCZ
Subject: Re: [python] praca s textom
Jasně, že nové mysqli rozhraní to umí, ale mysql ne a nikdy to neumělo.
Navíc prepared statement neuměla ani MySQL vůbec, to nebyl problém jenom
rozhraní. MySQL je v podstatě hloupoučká "databáze", na kterou v
poslední době bylo nalepeno zdání některých featur skutečné databáze, a
prepared statement je jedna z věcí, kterou MySQL moc dlouho nezná, ještě
se to se to na MySQL leskne novotou. Tudíž MySQL neměla pro prepared
statement ani API, ani s nimi server/client protokol nepočítal.
To co různá high level db API nabízela pro MySQL jako "prepared
statement" nebylo nic jiného, než že se počkalo na parametry, složil se
z SQL dosazením za otazníky parametry a do MySQL se poslal skutečný dotaz.
Vezměte laskavě v úvahu, že naprostou většinu své existence MySQL
neuměla ani prepared statement, ani transakce, ba ani referenční
integritu, nebo znakové sady řetězců. Všechno je to relativně záležitost
posledních let, a že to je spíše nalepovák, než integrální součást, to
si pište. A výkon tomuto nalepovacímu stylu přesně odpovídá.
Ale zpět: Nebál bych se toho, že by prepared statement zhoršoval výkon
databáze, to je naprostý nesmysl. A pokud ano, tak se jedná v nejhorším
katastrofickém případě asi tak o 0,0001% zpomalení, tudíž zcela
zanedbatelné a věnoval bych se jiným článkům řetězu v databázi, které
mají rozhodně významný vliv.
Jinak pro jistotu: Nemám nic proti MySQL (a pokud ano, tak pouze stran
její licence, a její předraženosti, který naprosto neodpovídá užitné
hodnotě poměru cena/kvalita). Má své místo, ale pro představu, nedávno
mě napadlo vytvořit identickou databázi s identickou datovou strukturou
nad MySQL a nad Sybase ASA. Sybase ASA, což je na rozdíl od MySQL
skutečná profesionální databáze zhruba se systémovými nároky a požadavky
rovnající se MySQL - byla běžně 10x rychlejší v databázových operacích,
než MySQL. A to ještě Sybase ASA není nic moc v databázovém světě.
Miloslav Ponkrác
Další informace o konferenci Python