>
>
> Exact. Doar am crescut în indiferență zeci de ani. ++
>
> Tibi
>
>
Hai ca deja discutia atinge aspecte dramatice, si pentru ca "frec" bazele
astea de date de mult prea mult timp ("zeci de ani"= douazeci si) in diverse
forme si arome (acu vreo 20 de ani - DBIII& FoxBase,  acu vreo 15 - Oracle 7
si SQLServer, si de vreo 12 ani MySQL, PostgreSQL &
FirebirdSQL, PervasiveSQL, Informix, DB2 s.a.m.d) imi permit sa imi dau si
eu cu parerea (clasicul 0.02 USD) cu privire la Oracle Corporation si MySQL.
Disclaimer: am folosit denumirea de Oracle corporation pentru a nu face
confuzie intre entitatea juridica si produs; pe de alta parte am si o adresa
de mail cu oracle dot com in coada, deci sunt salariat al mentionatei
entitati - cu alte cuvinte parerea mea poate fi subiectiva. In orice caz
randurile urmatoare reprezinta opinia PERSONALA si nu a Oracle Corporation.
Cine spune ca MySQL este competitor pentru Oracle are o
parere...hmm..interesanta: e ca si cum ai compara Bugatti Veyron / Ferrari
Enzo / o masina de formula 1 cu..nici nu stiu ce sa zic sa fie comparatia
adecvata.... Tata Nano?
Sa compari dpdv features / performante / stabilitate baza de date care e
optiunea numarul 1 a bancilor , organizatiilor financiare, organizatiilor
din sectoarele publice s.a.m.d. cu "optiunea nr 1" a webmasterilor pentru
forumuri..da e posibil...pot sa aiba cam acelasi "market share" in
segmentele lor...dar e comparatia adecvata? Locul lui MySQL nu a fost si
nici nu va fi niciodata in segmentul enterprise. Si banii, sa fim seriosi,
de aici vin, si nu de la "forumisti".
Daca luam codul MySQL si il analizam dpdv features (si nu codul 3rd party
sau engine-urile plug-in)  vedem ca rezultatul (care mai mult sau mai putin
e echivalent cu forkul MariaDB) sta cam slabut de tot: e netranzactional si
daca il iei la analizat bine o sa ai surpriza sa vezi ca nici 100%
relational nu e (referential integrity constraints???). MariaDB e cam tot ce
i-a ramas lui Monty in batatura dupa ce a vindut MySQL AB catre Sun pe o
suma frumusica. E "superb" dpdv features, e GPL V2 (asta pare a fi o
problema dupa Monty, ca nu aduce bani, si cica el investeste cam 100k pe
luna in dezvoltarea lui..parerea mea e ca are de unde si modelul asta de
business e sustenabil pe inca vreo 10 ani..dar acum sunt rau..hai sa revin
la argumente).. dar nu e lumea interesata de el/ea. Eu personal nici nu
auzisem de el pina nu s-au facut ceva valuri pe liste cu Oracle/MySQL .
Dar sa vedem cum /cu ce se lauda MySQL ca e "enterprise ready", ca
versiunile 5.x  parca mai stiu ceve- ceva din zona asta (tranzactii,
proceduri stocate, triggere, constringeri si alte asemenea fineturi dar de
mare trebuinta la aplicatii). Simplu: toate erau third-party plug-ins. Ca
MySQL are posibilitatea sa utilizeze diverse "motoare"...sunt cam multe asa
ca mai bine pun un citat:
<quote>
Multiple storage engines, allowing one to choose the one that is most
effective for each table in the application (in MySQL 5.0, storage engines
must be compiled in; in MySQL 5.1, storage engines can be dynamically loaded
at run time <http://en.wikipedia.org/wiki/Run_time_(computing)>):
Native storage engines (MyISAM <http://en.wikipedia.org/wiki/MyISAM>,
Falcon<http://en.wikipedia.org/wiki/Falcon_(storage_engine)>,
Merge, Memory (heap), Federated<http://en.wikipedia.org/wiki/MySQL_Federated>
, Archive <http://en.wikipedia.org/wiki/MySQL_Archive>,
CSV<http://en.wikipedia.org/wiki/Comma-separated_values>,
Blackhole, Cluster <http://en.wikipedia.org/wiki/MySQL_Cluster>,
Berkeley DB<http://en.wikipedia.org/wiki/Berkeley_DB>,
EXAMPLE, and Maria <http://en.wikipedia.org/wiki/Maria_(storage_engine)>)
Partner-developed storage engines (InnoDB<http://en.wikipedia.org/wiki/InnoDB>
, solidDB <http://en.wikipedia.org/wiki/SolidDB>, NitroEDB,
Infobright<http://en.wikipedia.org/wiki/Infobright> (formerly
Brighthouse), Kickfire <http://en.wikipedia.org/wiki/Kickfire>,
XtraDB<http://en.wikipedia.org/w/index.php?title=XtraDB&action=edit&redlink=1>
)
Community-developed storage engines
(memcache_engine<http://en.wikipedia.org/w/index.php?title=Memcache_engine&action=edit&redlink=1>
, httpd <http://en.wikipedia.org/wiki/Web_server>, PBXT, Revision
Engine<http://en.wikipedia.org/w/index.php?title=Revision_Engine&action=edit&redlink=1>
)
Custom storage engines</quote>
Rezumam: native (MyISAM, Falcon, BerkeleyDB si Maria, samd) si
Partner-developed (innoDB).
Cat de importante sunt cele "partenere" aflam daca citim printre randuri la
"features":
<quote> <http://en.wikipedia.org/wiki/X/Open_XA>
X/Open XA <http://en.wikipedia.org/wiki/X/Open_XA> distributed transaction
processing <http://en.wikipedia.org/wiki/Distributed_transaction_processing>
(DTP)
support; two phase
commit<http://en.wikipedia.org/wiki/Two-phase-commit_protocol> as
part of this, using Oracle's InnoDB <http://en.wikipedia.org/wiki/InnoDB>
 engine
Independent storage engines <http://en.wikipedia.org/wiki/Storage_engine> (
MyISAM <http://en.wikipedia.org/wiki/MyISAM> for read speed, InnoDB for
transactions and referential
integrity<http://en.wikipedia.org/wiki/Referential_integrity>
, MySQL Archive <http://en.wikipedia.org/wiki/MySQL_Archive> for storing
historical data in little space)
Transactions with the InnoDB, BDB and Cluster storage engines; savepoints
with InnoDB
Full-text indexing <http://en.wikipedia.org/wiki/Indexing> and searching
using MyISAM engine
Partial Unicode <http://en.wikipedia.org/wiki/Unicode> support
(UTF-8<http://en.wikipedia.org/wiki/UTF-8>
 and UCS-2 <http://en.wikipedia.org/wiki/UTF-16/UCS-2> encoded strings are
limited to the BMP <http://en.wikipedia.org/wiki/Basic_Multilingual_Plane>)
Partial ACID <http://en.wikipedia.org/wiki/ACID> compliance (full compliance
only when using the non-default storage engines InnoDB,
BDB<http://en.wikipedia.org/wiki/Berkeley_DB> and
Cluster)
</quote>
Cu alte cuvinte, fara InnoDB MySQL nu prea are features: InoDB e ceea ce il
face tranzactional, cu integritate referentiala si ACID compliant. Mda, si
InnoDB e de fapt Oracle InnoDB de cativa ani buni, si MySQL  a avut o
relatie de  partener cu Oracle care a functionat  bine-mersi (chiar daca
erau "competitori" directi) si a "incetat" brusc sa functioneze cand Oracle
a cumparat Sun (care Sun cumparase mai inainte MySQL AB). Eu cred ca MySQL o
duce bine-mersi si o va duce la fel si in viitor (nci InnoDB si nici
BerkeleyDB nu au avut de suferit dupa ce au fost cumparate de Oracle,
dimpotriva). Cred ca adevarata problema e MariaDB, care e cam saracuta in
features si n-o sa ajunga sa obtina prea repede statusul de
"enterprise-ready" prin cod original. Cateva argumente in randurile de mai
jos.
Cei care au fost atenti pina aici si nu au adormit poate au remarcat ca am
mentionat si un alt engine (Falcon) care are o istorie interesanta.
IMHO the best kept secret in RDBMs e de fapt FirebirdSQL, fork-ul
open-source de la Interbase. Cei mai batrini poate is amintesc - baza de
date care venea cu Delphi / C++ Builder. E open-source de vreo 10 ani, si de
atunci avea tot ceea ce ii lipseste lui MySQL. Si, daca e sa ne luam dupa
ceva benchmarks, nu sta rau nici la viteza, e cam la nivelul lui MySQL sau
chiar mai rapid ( http://benchw.sourceforge.net/benchw_results_open3.html).
Dintre cele 3 baze de date open-source (PostgreSQL / MySQL / FirebirdSQL)
Firebird e de departa preferata mea. Multiplatforma, usor de administrat,
usor de tunat, cu o arhitectura robusta. Iar arhitectul ei (inca inainte de
a se numi Interbase) e Jim Starkey...care a fost "angajat" de MySQL prin
2006 (MySQL a cumparat Netfrastruscture, compania lui Jim).  Iar motorul
produs de Jim Starkey e Falcon. Din pacate Jim a plecat de la MySQL/Sun
 prin vara lui 2008, la vreo 5-6 luni dupa ce Sun a achizitionat MySQL.  Si
tot din pacate (pentru Monty) Falcon (care trebuia sa fie engine-ul de baza
in MySQL 6.0) a cam ramas in ograda Sun, si deci la Oracle.
Dar, de fapt, petitia asta e pentru "salvat" MySQL. Si cum problema centrala
a acestei petitii o reprezinta "drepturile de proprietate intelectuala" si
faptul ca aceasta comunitate ar trebui sa ia "atitutdine" pentru apararea
lor imi exprim pe aceasta cale opinia personala (nu de angajat Oracle):
- ii doresc pe  aceasta cale succese in munca lui Monty la dezvoltarea
MariaDB, pentru a face un engine de baze de date foarte bun
- cred ca are resursele financiare necesare pentru acest lucru...pentru inca
vreo 10 ani de acum incolo, avand in vedere cat a incasat pentru BRANDUL
MySQL (ca tot am ajuns la capitolul asta, cred ca pagina de web favorita a
lui widenius este
http://dev.mysql.com/common/logos/mysql-sun-brand-usage-guidelines.pdf )
- are destule proiecte open-source ca model de inspiratie (PostgreSQL si de
ce nu FirebirdSQL)
- daca cineva are o problema etica in utilizarea MySQL pe viitor pentru
simplul motiv ca de fapt e Oracle MySQL il incurajez sa foloseasca cu
incredere MariaDB; daca nu are totusi caracterisiticile dorite poate sa
revina la Oracle MySQL featuring Oracle InnoDB, dar este rugat sa acorde mai
multa atentie pe viitor la folosirea corespunzatoare a trademarkurilor :)
- sincer cred ca exista o gramada de proiecte open-source care puteau
beneficia de energia investita in "Salvati  MySQL din ghearele rapace ale
Oracle"; e cam din categoria "Mult zgomot pentru nimic" si cam tarziu:
acordul de principiu a fost dat cam pe la jumatatea lui decembrie si formal
nu se mai asteapta decat actele luna asta (in viitoarele 2-3 saptamini).

ender
_______________________________________________
RLUG mailing list
[email protected]
http://lists.lug.ro/mailman/listinfo/rlug

Raspunde prin e-mail lui