PostgreSQL vs MySQL – Razlika među njima
Ključna razlika između PostgreSQL i MySQL
- PostgreSQL je sustav upravljanja objektnom relacijskom bazom podataka (ORDBMS), dok MySQL je DBMS sustav koji pokreće zajednica.
- PostgreSQL podržava moderne značajke aplikacija kao što su JSON, XML, itd., dok MySQL podržava samo JSON.
- Uspoređujući PostgreSQL vs MySQL performanse, PostgreSQL dobro radi pri izvršavanju složenih upita, dok MySQL dobro funkcionira u OLAP i OLTP sustavima.
- PostgreSQL potpuno je usklađen s ACID-om, dok MySQL kompatibilan je samo s ACID-om kada se koristi s InnoDB i NDB.
- PostgreSQL podržava materijalizirane prikaze, dok MySQL ne podržava materijalizirane prikaze.

Što je PostgreSQL?
Postgre je objektno-relacijski sustav za upravljanje bazom podataka (ORDBMS). Razvijen je na Odsjeku za informatiku Sveučilišta u Kaliforniji. Postgres je uveo mnoge koncepte.
Postgre je sustav relacijske baze podataka Enterprise klase. Lako se postavlja i Instalacije. Nudi podršku za SQL i NoSQL. Ima sjajnu zajednicu koja će vam rado pomoći kada se suočite s problemima tijekom korištenja PostgreSQL.
Što je MySQL?
MYSQL je popularan i široko korišten DBMS sustav. Ime je preuzeto od djevojačkog imena My koje je kćer suosnivača Michaela Wideniusa. Izvorni kod MYSQL-a dostupan je pod GNU GPL. Projekt je u vlasništvu i održava ga Oracle Korporacija.
To je RDBMS (Sustav upravljanja relacijskom bazom podataka) i prvenstveno radi na model relacijske baze podataka. Čini administraciju baze podataka lakšom i fleksibilnijom.
Razlika između MySQL i PostgreSQL
Ispod je glavna razlika između PostgreSQL i MySQL:
| Parametar | MySQL | PostgreSQL |
|---|---|---|
| Open Source | The MySQL projekt je svoj izvorni kod učinio dostupnim pod uvjetima GNU Opće javne licence. | PostgreSQL je pušten pod PostgreSQL licenca koja je besplatna licenca otvorenog koda. Ovo je slično BSD i MIT licencama. |
| Usklađenost s kiselinom | MySQL kompatibilan je s ACID-om samo kada se koristi s InnoDB i NDB Cluster Motori za pohranu. | PostgreSQL potpuno je usklađen s ACID-om. |
| Sukladan sa SQL | MySQL djelomično je usklađen sa SQL-om. Na primjer, ne podržava ograničenje provjere. | PostgreSQL je u velikoj mjeri usklađen sa SQL-om. |
| Podrška zajednice | Ima veliku zajednicu suradnika koji su uglavnom usredotočeni na održavanje postojećih značajki uz povremene pojave novih značajki. | Aktivna zajednica neprestano poboljšava postojeće značajke, dok njena inovativna zajednica nastoji osigurati da ostane najnaprednija baza podataka. Redovito se objavljuju nove vrhunske značajke i sigurnosna poboljšanja. |
| Izvođenje | Uglavnom se koristi za projekte temeljene na webu kojima je potrebna baza podataka za jednostavne transakcije podataka. | Vrlo se koristi u velikim sustavima gdje su brzine čitanja i pisanja važne |
| Najprikladniji | MySQL dobro radi u OLAP i OLTP sustavima kada su potrebne samo brzine čitanja. | PostgreSQL dobro radi pri izvršavanju složenih upita. |
| Podrška za JSON | MySQL ima podršku za vrstu podataka JSON, ali ne podržava nijednu drugu značajku NoSQL. | Podržava JSON i druge NoSQL značajke poput izvorne XML podrške. Također omogućuje indeksiranje JSON podataka za brži pristup. |
| Podrška za materijalizirane poglede | Podržava privremene tablice, ali ne nudi materijalizirane prikaze. | Podržava materijalizirane prikaze i privremene tablice. |
| ekosustav | MySQL ima dinamičan ekosustav s varijantama poput MariaDB, Percona, Galera itd. | Postgres je imao ograničene high-end opcije. Međutim, mijenja se s novim značajkama predstavljenim u najnovijoj verziji. |
| Zadane vrijednosti | Zadane vrijednosti mogu se prebrisati na razini sesije i na razini izjave | Zadane vrijednosti mogu se mijenjati samo na razini sustava |
| Indeksi B-stabla | Dva ili više indeksa B-stabla mogu se koristiti kada je to prikladno. | Indeksi B-stabla spojeni u vrijeme izvođenja radi procjene su dinamički pretvoreni predikati. |
| Statistika objekata | Prilično dobra statistika objekata | Vrlo dobra statistika objekata |
| Stack Overflow pitanja | 532K | 89.3K |
| Mogućnosti pridruživanja | Ograničite mogućnosti pridruživanja | Dobre mogućnosti spajanja |
| GitHub zvijezde | 3.34k | 5.6k |
| vilice | 1.6k | 2.4k |
| Istaknute tvrtke koje koriste proizvod | Airbnb, Uber, Twitter | Netflix, Instagram, Groupon |
Povijest od MySQL
- MySQL stvorila je švedska tvrtka tzv MySQL AB 1995
- Sunce stečeno MySQL AB za milijardu dolara u 1
- Oracle kupio Sun 2010. i time stekao MySQL
- U 2012, MySQL bio račvan u MariaDB osnivača Michaela Wideniusa pod tvrtkom Monty Program Ab
- MariaDB zamjenjuje MySQL za većinu distribucija u 2013
- Monty Program Ab se spojio sa SkySQL-2013
- SkySQL Ab preimenovan je u MariaDB Korporacija- 2014
Povijest od PostgreSQL
- INGRES je razvijen-1977
- Michael Stonebraker i njegovi kolege razvili su Postgres 1986
- Podrška za pravi ACID i PL/pgSQL – 1990
- Izdan kao Postgres95 u -1995
- Ponovno objavljen Postgres95 kao PostgreSQL 6.0 - 1996
- MVCC, GUC, kontrole sintakse spajanja i učitavač proceduralnog jezika dodani - 1998.-2001.
- Verzija 7.2 do 8.2: Uključene značajke kao što su podrška za shemu, neblokirajući VACUUM, uloge i dblink – 2002.-2006.
- PostgreSQL 8.4 objavljen 2009
- PostgreSQL 9.0 objavljen 2010
- NYCPUG (New York City PostgreSQL Grupa korisnika) pridružuje se PgUS-u (Sjedinjene Države PostgreSQL udruga)- 2013
- PGconf organiziran-2014
Zašto koristiti MySQL?
Evo nekoliko važnih razloga za korištenje MYSQL-a:
- Podržava značajke kao što su Master-Slave Replication, Scale-Out
- Podržava izvješćivanje o rasterećenju, distribuciju geografskih podataka itd.
- Vrlo niski troškovi s MyISAM mehanizmom za pohranu kada se koristi za aplikacije koje se uglavnom bave čitanjem
- Podrška za mehanizam za pohranu memorije za često korištene tablice
- Predmemorija upita za višekratno korištene izjave
- Možete lako naučiti i otkloniti probleme MySQL iz različitih izvora poput blogova, bijelih radova i knjiga
Zašto koristiti PostgreSQL?
Glavni razlozi korištenja PostgreSQL je:
- Nudi korisne značajke poput particioniranja tablice, oporavka točke u vremenu, transakcijskog DDL-a itd.
- Mogućnost korištenja pohranjivanja ključeva treće strane u punoj PKI infrastrukturi
- Programeri mogu modificirati kod otvorenog izvornog koda jer je licenciran pod BSD-om bez potrebe da doprinose poboljšanjima
- Neovisni dobavljači softvera mogu ga redistribuirati bez straha da će biti "zaraženi" licencom otvorenog koda
- Korisnicima i ulogama mogu se dodijeliti privilegije na razini objekta
- Podržava AES, 3DES i druge algoritme za šifriranje podataka.

Značajke MySQL
- MySQL je pokretan zajednici DBMS sustav
- Kompatibilan s raznim platformama koristeći sve glavne jezike i međuprogram
- Nudi podršku za kontrolu istovremenosti s više verzija
- Sukladno ANSI SQL standardu
- Omogućuje replikacijski SSL temeljen na zapisniku i okidaču
- Objektno orijentiran i ANSI-SQL2008 kompatibilan
- Višeslojni dizajn s nezavisnim modulima
- Potpuno multi-threaded, koristeći Kernel Threads
- Poslužitelj dostupan u modelu ugrađene baze podataka ili poslužitelja klijenta
- Nudi ugrađene alate za analizu upita i analizu prostora
- Može obraditi bilo koju količinu podataka, do čak 50 milijuna redaka ili više
- MySQL radi na mnogim varijantama UNIX-a, kao i na drugim ne-UNIX sustavima poput Windows i OS/2
Značajke PostgreSQL
- Aktivna zajednica koja se ubrzano razvija
- Najčešća alternativa za Oracle, DB2 i SQL Server
- Radi na svim glavnim OS platformama koje možda imate
- MVCC podržava veliki broj istodobnih korisnika
- Opsežno indeksiranje za izvješćivanje visokih performansi
- Podrška za moderne aplikacije (XML i JSON)
- ANSI SQL podrška za prenosive vještine/kod
- Podrška stranih ključeva za učinkovito pohranjivanje podataka
- Spajanje tablica i pregledi za fleksibilno dohvaćanje podataka
- Okidači/pohranjene procedure za složene programe i transakcije
- Replikacija za sigurnosno kopiranje podataka i skalabilnost čitanja
Nedostaci korištenja MySQL
- Transakcije koje se odnose na katalog sustava nisu ACID popustljiv
- Neko vrijeme Pad poslužitelja može oštetiti sistemski katalog
- Nema priključnog modula za provjeru autentičnosti koji sprječava centralizirano upravljanje računom
- Nema podrške za uloge pa je mnogim korisnicima teško održavati privilegije
- Pohranjene procedure se ne mogu predmemorirati
- Stolovi koji se koriste za postupak ili okidač uvijek su unaprijed zaključani
Nedostaci korištenja PostgreSQL
- Trenutna vanjska rješenja zahtijevaju visoku krivulju učenja
- Nema mogućnosti nadogradnje za glavna izdanja
- Podatke je potrebno izvesti ili replicirati u novu verziju
- Double tijekom procesa nadogradnje potrebna je pohrana
- indeksi se ne mogu koristiti za izravno vraćanje rezultata upita
- Planovi izvršenja upita nisu predmemorirani
- Operacije skupnog učitavanja mogu postati vezane za CPU
- Podrška za rijetke neovisne dobavljače softvera
Koje je bolje MySQL or PostgreSQL?
Nakon što ih usporedimo, to možemo reći MySQL napravio je sjajan posao poboljšanja kako bi ostao relevantan, ali s druge strane za PostgreSQL, ne treba vam nikakva licenca. Također nudi nasljeđivanje tablica, sustave pravila, prilagođene tipove podataka i događaje baze podataka. Dakle, sigurno je iznad MySQL.
Rezime
- MYSQL je popularan i široko korišten DBMS sustav. To je RDBMS (Relational Database Management System) i prvenstveno radi na modelu relacijske baze podataka. Čini administraciju baze podataka lakšom i fleksibilnijom.
- Postgre je objektno-relacijski sustav za upravljanje bazom podataka (ORDBMS). Razvijen je na Odsjeku za informatiku Sveučilišta u Kaliforniji. Postgres je uveo mnoge koncepte.
- MySQL stvorila je švedska tvrtka tzv MySQL AB 1995.
- PostgreSQL je objavljen kao Postgres95 u -1995
- MySQL je DBMS sustav koji pokreće zajednica.
- PostgreSQL ima aktivnu zajednicu koja se ubrzano razvija.
