[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