Mikä on MySQL?
MYSQL on suosittu ja laajalti käytetty DBMS-järjestelmä. Nimi on otettu tytön nimestä My, joka on perustaja Michael Wideniuksen tytär. MYSQL: n lähdekoodi on saatavana GNU GPL: ltä. Projektin omistaa ja ylläpitää Oracle Corporation.
Se on RDBMS (Relational Database Management System) ja toimii ensisijaisesti relaatiotietokantamallilla. Se tekee tietokannan hallinnasta helpompaa ja joustavampaa.
Mikä on PostgreSQL?
Postgre on objektisuhteellinen tietokannan hallintajärjestelmä (ORDBMS). Se kehitettiin Kalifornian yliopiston tietojenkäsittelytieteen osastolla. Postgres oli edelläkävijä monille käsitteille.
Postgre on Enterprise-luokan relaatiotietokantajärjestelmä. Se on helppo asentaa ja asentaa. Se tarjoaa tukea SQL: lle ja NoSQL: lle. Sillä on loistava yhteisö, joka palvelee mielellään sinua, kun kohtaat ongelmia käyttäessäsi PostgreSQL: ää.
Tässä opetusohjelmassa opit lisää -
- MySQL: n historia
- PostgreSQL: n historia
- Miksi käyttää MySQL: ää?
- Miksi käyttää PostgreSQL: ää?
- MySQL: n ominaisuudet
- PostgreSQL: n ominaisuudet
- Tärkeimmät erot MySQL: n ja PostgreSQL: n välillä
- MySQL: n käytön haitat
- PostgreSQL: n käytön haitat
- Mikä on parempi?
MySQL: n historia
- MySQL: n loi ruotsalainen yritys nimeltä MySQL AB 1995
- Sun osti MySQL AB: n miljardilla dollarilla vuonna 2008
- Oracle osti Sunin vuonna 2010 ja hankki siten MySQL: n
- Vuonna 2012 perustaja Michael Widenius haaroitti MySQL: n MariaDB: ksi Monty Program Ab -yhtiön alaisuudessa
- MariaDB korvaa MySQL: n useimmissa jakeluissa vuonna 2013
- Monty Program Ab sulautui SkySQL-2013: een
- SkySQL Ab nimettiin uudelleen nimellä MariaDB Corporation- 2014
PostgreSQL: n historia
- INGRES kehitettiin-1977
- Michael Stonebraker ja hänen kollegansa kehittivät Postgres-1986
- Todellisen ACID- ja PL / pgSQL-tuki - 1990
- Julkaistu nimellä Postgres95 vuosina -1995
- Julkaistu uudelleen Postgres95 nimellä PostgreSQL 6.0 - 1996
- Lisätty MVCC, GUC, Join syntaksiohjaimet ja menettelykielen latauslaite - 1998-2001
- Versiot 7.2 - 8.2: Mukana olevat ominaisuudet, kuten Schema-tuki, Nonblocking VACUUM, Roles and dblink - 2002-2006
- PostgreSQL 8.4 julkaistu vuonna 2009
- PostgreSQL 9.0 julkaistu vuonna 2010
- NYCPUG (New York City PostgreSQL User Group) liittyy PgUS: iin (Yhdysvallat PostgreSQL -yhdistys) - 2013
- PGconf järjesti-2014
Tärkeimmät erot:
- PostgreSQL on Object Relational Database Management System (ORDBMS), kun taas MySQL on yhteisövetoinen DBMS-järjestelmä.
- PostgreSQL tukee nykyaikaisia sovelluksia, kuten JSON, XML jne., Kun taas MySQL tukee vain JSONia.
- PostgreSQL toimii hyvin monimutkaisia kyselyitä suoritettaessa, kun taas MySQL toimii hyvin OLAP- ja OLTP-järjestelmissä.
- PostgreSQL on täydellinen ACID-yhteensopiva, kun taas MySQL on ACID-yhteensopiva vain käytettäessä InnoDB: tä ja NDB: tä.
- PostgreSQL tukee toteutuneita näkymiä, kun taas MySQL ei tue toteutuneita näkymiä.
Miksi käyttää MySQL: ää?
Tässä on joitain tärkeitä syitä MYSQL: n käyttöön:
- Tukee ominaisuuksia, kuten Master-Slave-replikointi, Scale-Out
- Se tukee latausraportointia, maantieteellisten tietojen jakelua jne.
- Erittäin matala yleiskustannus MyISAM-tallennusmoottorilla, kun sitä käytetään enimmäkseen luettaviin sovelluksiin
- Tuki muistin tallennusmoottorille usein käytetyille pöydille
- Kyselyvälimuisti toistuvasti käytetyille lausekkeille
- Voit oppia ja vianmäärittää MySQL: n helposti eri lähteistä, kuten blogeista, julkaisuista ja kirjoista
Miksi käyttää PostgreSQL: ää?
Tärkeimmät syyt PostgreSQL: n käyttöön ovat:
- Tarjoaa hyödyllisiä ominaisuuksia, kuten taulukon osiointi, Point in Time Recovery, Transactional DDL jne.
- Mahdollisuus käyttää kolmannen osapuolen avainliikkeitä täydessä PKI-infrastruktuurissa
- Kehittäjät voivat muokata avointa lähdekoodia, koska se on lisensoitu BSD: llä ilman, että tarvitsee antaa lisäparannuksia
- Riippumattomat ohjelmistotoimittajat voivat levittää sitä uudelleen pelkäämättä avoimen lähdekoodin lisenssin "tartuttamista"
- Käyttäjille ja rooleille voidaan antaa objektitason oikeudet
- Tukee AES-, 3DES- ja muita tietojen salausalgoritmeja.
MySQL: n ominaisuudet
- MySQL on yhteisövetoinen DBMS-järjestelmä
- Yhteensopiva eri alustojen kanssa kaikilla tärkeimmillä kielillä ja väliohjelmistoilla
- Se tarjoaa tukea usean version samanaikaisuuden hallintaan
- ANSI SQL -standardin mukainen
- Sallii loki- ja laukaisupohjaisen replikoinnin SSL: n
- Kohdekohtainen ja ANSI-SQL2008-yhteensopiva
- Monikerroksinen muotoilu itsenäisillä moduuleilla
- Täysin monisäikeinen, käyttäen ytimen ketjuja
- Palvelin saatavana upotettuna DB- tai asiakaspalvelinmallina
- Tarjoaa sisäänrakennettuja työkaluja kyselyanalyysiin ja avaruusanalyysiin
- Se voi käsitellä mitä tahansa datamäärää, jopa 50 miljoonaa riviä tai enemmän
- MySQL toimii monilla UNIX-muunnelmilla sekä muilla kuin UNIX-järjestelmillä, kuten Windows ja OS / 2
PostgreSQL: n ominaisuudet
- Aktiivinen yhteisö, joka kiihdyttää kehitystään
- Yleisin vaihtoehto Oraclelle, DB2: lle ja SQL Serverille
- Toimii kaikilla tärkeimmillä käyttöjärjestelmillä, joita sinulla voi olla
- MVCC tukee suurta määrää samanaikaisia käyttäjiä
- Laaja indeksointi korkean suorituskyvyn raportointia varten
- Tuki nykyaikaisille sovelluksille (XML ja JSON)
- ANSI SQL-tuki siirrettäville taidoille / koodille
- Ulkomaiset avaimet tukevat tietojen tehokasta tallentamista
- Taulukon liittymät ja näkymät joustavaan tiedonhakuun
- Käynnistimet / tallennetut menettelyt monimutkaisille ohjelmille ja tapahtumille
- Replikointi tietojen varmuuskopiointia ja lukemisen skaalautuvuutta varten
Erot MySQL: n ja PostgreSQL: n välillä
Parametri | MYSQL | PostgreSQL |
Avoin lähdekoodi | MySQL-projekti on antanut lähdekoodinsa saataville GNU General Public License -lisenssin ehtojen mukaisesti. | PostgreSQL julkaistaan PostgreSQL-lisenssillä, joka on ilmainen avoimen lähdekoodin lisenssi. Tämä on samanlainen kuin BSD- ja MIT-lisenssit. |
Haponmukaisuus | MySQL on ACID-yhteensopiva vain, kun sitä käytetään InnoDB- ja NDB Cluster Storage -moottoreiden kanssa. | PostgreSQL on täydellinen ACID-yhteensopiva. |
SQL-yhteensopiva | MySQL on osittain SQL-yhteensopiva. Esimerkiksi se ei tue tarkistusrajoituksia. | PostgreSQL on pitkälti SQL-yhteensopiva. |
Yhteisön tuki | Sillä on suuri joukko avustajia, jotka keskittyvät pääasiassa nykyisten ominaisuuksien ylläpitoon ja toisinaan uusia ominaisuuksia. | Aktiivinen yhteisö parantaa jatkuvasti olemassa olevia ominaisuuksia, kun taas sen innovatiivinen yhteisö pyrkii varmistamaan, että se on edistynein tietokanta. Uusia huippuluokan ominaisuuksia ja turvallisuuden parannuksia julkaistaan säännöllisesti. |
Esitys | Sitä käytetään enimmäkseen verkkopohjaisiin projekteihin, jotka tarvitsevat tietokannan suoraviivaisiin datatapahtumiin. | Sitä käytetään erittäin suurissa järjestelmissä, joissa luku- ja kirjoitusnopeudet ovat tärkeitä |
Parhaiten soveltuvat | MySQL toimii hyvin OLAP- ja OLTP-järjestelmissä, kun tarvitaan vain lukunopeuksia. | PostgreSQL-suorituskyky hyvin suoritettaessa monimutkaisia kyselyitä. |
Tuki JSON: lle | MySQL: llä on JSON-tietotyypin tuki, mutta se ei tue mitään muuta NoSQL-ominaisuutta. | Tuki JSON ja muut NoSQL-ominaisuudet, kuten alkuperäinen XML-tuki. Se mahdollistaa myös JSON-tietojen indeksoinnin nopeamman pääsyn varmistamiseksi. |
Tuki toteutuneille näkemyksille | Tukee toteutuneita näkymiä ja väliaikaisia taulukoita. | Tukee väliaikaisia taulukoita, mutta ei tarjoa toteutuneita näkymiä. |
Ekosysteemi | MySQL: llä on dynaaminen ekosysteemi, jonka muunnelmat ovat esimerkiksi MariaDB, Percona, Galera jne. | Postgresillä on ollut rajoitettuja huippuluokan vaihtoehtoja. Se muuttuu kuitenkin uusimpien versioiden uusien ominaisuuksien myötä. |
Oletusarvot | Oletusarvot voidaan korvata istuntotasolla ja lauseketasolla | Oletusarvoja voidaan muuttaa vain järjestelmätasolla |
B-puu-indeksit | Kahta tai useampaa B-puuindeksiä voidaan käyttää, kun se on tarkoituksenmukaista. | B-puu-indeksit, jotka on yhdistetty ajon aikana arvioimiseksi, ovat dynaamisesti muunnettuja predikaatteja. |
Kohdetilastot | Melko hyvät objektitilastot | Erittäin hyvät kohteet |
Pino ylivuotokysymyksiä | 532K | 89,3 kt |
Liity valmiuksiin | Rajoita liittymismahdollisuuksia | Hyvä liittymiskyky |
GitHub-tähdet | 3.34k | 5.6k |
Haarukat | 1,6 kt | 2.4k |
Tuotetta käyttävät merkittävät yritykset | Airbnb, Uber, Twitter | Netflix, Instagram, Groupon |
MySQL: n käytön haitat
- Järjestelmäluetteloon liittyvät tapahtumat eivät ole ACID-yhteensopivia
- Jonkin aikaa Palvelimen kaatuminen voi vioittaa järjestelmäkatalogia
- Ei liitettävää todennustodistusta, joka estää keskitetysti hallinnoidun tilin
- Ei tukea rooleille, joten on vaikea ylläpitää oikeuksia monille käyttäjille
- Tallennettuja toimintoja ei voi tallentaa välimuistiin
- Menettelyyn tai liipaisimeen käytetyt taulukot on aina lukittu valmiiksi
PostgreSQL: n käytön haitat
- Nykyiset ulkoiset ratkaisut vaativat korkean oppimiskäyrän
- Ei päivitystoimintoa suurille julkaisuille
- Tiedot on vietävä tai kopioitava uuteen versioon
- Kaksinkertaista tallennustilaa tarvitaan päivitysprosessin aikana
- hakemistoja ei voida käyttää kyselyn tulosten palauttamiseen suoraan
- Kyselyn suoritussuunnitelmia ei tallenneta välimuistiin
- Joukkolataustoiminnot voivat liittyä suorittimeen
- Harvinaisen itsenäisen ohjelmistotoimittajan tuki
Mikä on parempi?
Vertaamalla molempia voimme sanoa, että MySQL on tehnyt hienoa työtä itsensä parantamiseksi, jotta se pysyisi merkityksellisenä, mutta toisaalta PostgreSQL: lle ei tarvita lisensointia. Se tarjoaa myös taulukon perimisen, sääntöjärjestelmät, mukautetut tietotyypit ja tietokantatapahtumat. Joten se varmasti ylittää MySQL: n.