Sužinokite „PostgreSQL“: pradėkite naudotis kitomis nemokamomis duomenų bazėmis

Atskleidimas: Jūsų palaikymas padeda išlaikyti svetainę! Mes uždirbame siuntimo mokestį už kai kurias paslaugas, kurias rekomenduojame šiame puslapyje.


„PostgreSQL“ (kartais tiesiog vadinama „Postgres“) yra atvirojo kodo objektų-reliacinių duomenų bazių valdymo sistema (ORDBMS). „PostgreSQL“ plėtros bendruomenės tikslas – padaryti ją „pažangiausia pasaulyje atvirojo kodo duomenų baze“. Tai įgyvendina didžiąją dalį SQL standarto, bet taip pat prideda nemažai pažangių funkcijų, kurių nėra kitose reliacinėse duomenų bazių sistemose.

Trumpa „PostgreSQL“ istorija

1973 m. Du „UC Berkeley“ kompiuterių žinovai Eugene’as Wongas ir Michaelas Stonebrakeris pradėjo kurti duomenų bazės sistemą, kurią jie vadino „Ingres“ (INteractive GRaphics REtreival System). Iš pradžių kūrinys buvo skirtas naudoti universiteto ekonomistams, tačiau Stonebrakeris ir Wongas išplėtė projektą, kad sukurtų reliacinių duomenų bazių sistemą, įkvėptą IBM „System R“ ir naujos struktūrizuotos užklausos kalbos koncepcijų..

1982 m. Stonebrakeris paliko Berklį dirbti patentuota reliacinių duomenų bazių sistema, kurią jis pavadino POSTGRES (Post-Ingres). POSTGRES panaudojo daugybę „Ingres“ idėjų, tačiau tai nebuvo jos pagrindų pagrindas. „Stonebraker“ ketino į duomenų bazę įtraukti aiškų duomenų tipų ir ryšių palaikymą.

Pirmasis naujos sistemos prototipas buvo parodytas 1988 m., O 1 versijos išleidimas – 1989 m. 2 versija pasirodė kitais metais, o 3 versija – kitais metais, kiekvieną kartą su perrašytomis užklausų taisyklėmis. Iki 1993 m. Vartotojų buvo tiek daug, kad POSTGRES komanda negalėjo neatsilikti nuo palaikymo užklausų. 1994 m. Komanda išleido 4 versiją ir baigė projektą. Jie išleido visą kūrinį pagal atvirą (MIT stiliaus) licenciją, leidžiančią kitiems kūrėjams perimti projektą.

Tais pačiais metais du UC Berkeley studentai pakeitė POSTGRES užklausų kalbą SQL ir internete išleido naują versiją (Postgres95). 1996 m. Marc Fournier iš Hub.org pateikė plėtros serverį, o „Postgres“ tapo atvirojo kodo plėtros projektu. Jis buvo pervadintas į PostgreSQL (post-gres-cue-ell). Nuo tada plėtrą tęsė didelė savanorių ir kūrėjų bendruomenė, žinoma kaip „The PostgreSQL Global Development Group“.

Apie „PostgreSQL“

„PostgreSQL“ daro viską, ko tikėjotės iš reliacinių duomenų bazių sistemos. Duomenys saugomi vartotojo sukurtose lentelėse, kiekvienas įrašas yra konkrečios lentelės eilutė. Stulpeliai ant lentelės atitinka įvairius atributus. Lentelės gali būti susietos viena su kita, kad būtų sukurtos sudėtingos duomenų struktūros. „Postgres“, kaip ir dauguma RDBMS, užklausoms naudoja SQL. „PostgreSQL“ daro įdomią tuo, kad siūlo daugybę papildomų funkcijų.

Objekto santykis

„PostgreSQL“ nėra tik reliacinė duomenų bazė, tai yra objektų-duomenų bazių duomenų bazė. Tai reiškia, kad palaiko objektinio programavimo principus, tokius kaip paveldėjimas ir polimorfizmas. Šios savybės yra bandymas išspręsti kai kuriuos sunkumus, su kuriais dažnai susiduriama atvaizduojant reliacinių duomenų struktūras objektams.

Duomenų tipai

„PostgreSQL“ teikia išplėstinį duomenų tipų rinkinį. Visi RDBMS palaiko keletą skaičių, slankiojo kablelio, eilučių, loginių ir datų tipų. „PostgreSQL“ taip pat teikia:

  • uuid, visuotinai unikalūs ID, kurie yra būtini paskirstytų duomenų bazių sistemoms;
  • piniginis, fiksuotas dešimtainis tipas, kuris pašalina apvalinimo ir skaičiavimo klaidas, rastas slankiojo kablelio skaičiais;
  • išvardytas, statinis variantų rinkinys;
  • geometriniai tipai: taškas, langelis, linijos segmentas, linija, kelias, daugiakampis ir apskritimas;
  • dvejetainis, panašus į SQL blob objektą;
  • tinklo adresai, pagal kelis protokolus;
  • bitų stygos, fiksuoto ilgio dvejetainės stygos, kurios gali būti naudojamos kaip bitų kaukės;
  • teksto vektoriai, naudingi pilno teksto paieškai;
  • duomenų pateikimo tipai, tokie kaip XML, JSON ir masyvai;
  • sudėtiniai tipai, kurie grupuoja kelis kitus tipus;
  • diapazonų tipai, įskaitant skaitinius diapazonus, datų diapazonus ir laiko intervalus;
  • vartotojo apibrėžti tipai.

Duomenų dydis ir vientisumas

„PostgreSQL“ gali tvarkyti didžiulį duomenų kiekį. Patys duomenys gali būti didžiuliai – eilutės dydžio apribojimas yra 1,6 TB, o viename lauke gali būti 1 GB duomenų.

Sistema taip pat atitinka ACID (atomiškumas, nuoseklumas, izoliacija ir ilgaamžiškumas), pasižyminti labai stipriu operacijų ir referenciniu vientisumu..

Virtualios lentelės

Kai vykdote SQL užklausą su duomenų bazės lentelių rinkiniu, rezultatas yra kita lentelė. Virtualios lentelės yra duomenų bazės funkcija, leidžianti sudaryti tas rezultatų lenteles ir tada vykdyti papildomas užklausas. Tai leidžia atlikti sudėtingesnes užklausas ir pagerinti skaitymo našumo patobulinimus.

„PostgreSQL“ palaiko keletą virtualios lentelės funkcijų. Du išskirtiniai „PostgreSQL“ yra rekursiniai ir materializuoti vaizdai. Rekursija leidžia vykdyti tą pačią užklausą rezultatų rinkinyje, kurį ji jau sukūrė. Tai galima padaryti kelis kartus, kol bus rasti visi įmanomi suvestiniai rezultatai. Rekursija yra naudinga hierarchiškai struktūruotiems duomenims. Įvykdyti vaizdai sukuria nuolatines (saugomas) virtualias lenteles, kurias prireikus galima atnaujinti (kartą per dieną, rašant). Dėl dažnai vykdomų užklausų su sudėtingais prisijungimais tai gali nepaprastai pagreitinti našumą.

„PostgreSQL“ ištekliai

Turbūt tiesa, kad „PostgreSQL“ yra „pažangiausia pasaulyje atvirojo kodo duomenų bazė“. Tai reiškia, kad kalbant apie „PostgreSQL“, reikia daug ko išmokti. Čia yra geriausi ištekliai norint pereiti nuo „Postgres“ naujoko iki eksperto.

Prisijungęs

Pirma vieta pradėti yra oficiali „PostgreSQL“ svetainė.

Pamokos

  • Oficiali instrukcija iš postgresql.org, tikriausiai pirmas dalykas, kurį turėtumėte perskaityti;
  • „PostgreSQL Tutorial“ – visa svetainė, skirta „Postgres“ vadovėliams;
  • „Postgres Guide“, dar viena bendrosios paskirties svetainė, su daugybe vadovėlių apie konkrečius „PostgreSQL“ naudojimo aspektus.
  • „PostgreSQL Tutrorial“ – labai paprastas ir aiškus „Tutorials Point“ įvadas;
  • „PostgreSQL“ mokymo programa – dar vienas pagrindinis įvadas iš „w3resource“;
  • „PostgreSQL“ duomenų bazė ir „Linux“, konkrečiai „Linux“ pamoka (ypač naudinga, jei diegsite internetą, nes greičiausiai naudosite „Linux“ prieglobą).

Vaizdo pamokos

  • Pradinis „PostgreSQL“, mokamos vaizdo įrašų mokymo programos „Udemy“, vadovas;
  • Pradedantiesiems „PostgreSQL“ duomenų bazė 1 pamoka – „PostgreSQL“ diegimas ir nustatymas;
  • SQL 1 pamoka: „PostgreSQL“ įdiegimas ir nustatymas;
  • Mada yra kieta; „PostgreSQL“ paprasta;
  • „Postgres“ demonstruota.

Nuoroda

  • „PostgreSQL“ dokumentacija, turėtumėte gerai susipažinti su šiuo dokumentu; yra šešių tomų spausdinimo versija (nuoroda į 1 tomą), jei norite popieriaus;
  • „PostgreSQL Wiki“, visos bendruomenės, kurios nėra oficialiuose dokumentuose, šaltinis – neįkainojamas praktinės informacijos šaltinis;
  • PostgreSQL cheat Sheet, jei jums reikia greito SQL priminimo;
  • „PostgreSQL“ komandų eilutės cheatsheet, jei jums reikia greito priminimo apie PostgreSQL psql komandas.

Įrankiai

  • „PostgreSQL“ programinės įrangos katalogas, šimtų „Postgres“ įrankių sąrašas;
  • „PostGIS“, erdviniai ir geografiniai „PostgreSQL“ objektai;
  • „pgAdmin“ – beveik nepakeičiamas darbalaukio GUI įrankis duomenų bazėms valdyti;
  • „phpPgAdmin“, „PostgreSQL“ interneto GUI, prieinama iš daugelio žiniatinklio prieglobos įmonių;
  • Iš tikrųjų yra daugybė „PostgreSQL“ GUI valdymo įrankių;
  • „Postgresql-orm“ paketas;

Tvarkyklės ir bibliotekos

  • „Psycopg“ ir „PyGreSQL“, skirtos „Python“, ir „django.contrib.postgres“, skirtos „Django“;
  • Pg perlas „Ruby“;
  • PostgreSQL plėtinys PHP;
  • Node-postgres for Node.js;
  • JDBC „Java“.

Bendruomenė ir nuolatinis mokymasis

  • „Postgres Weekly“, reguliarus svarbių „PostreSQL“ naujienų rinkinys;
  • PGCon – „PostgreSQL“ konferencija vartotojams ir kūrėjams, oficialus kasmetinis „PostgreSQL“ kūrėjų susirinkimas;
  • „Planet Postgres“, svarbių „PostgreSQL“ tinklaraščių visuma;
  • Vietinė „PostgreSQL Meetups“ grupė;
  • Forumai:
    • „Postgres Plus“ forumas;
    • „dBforums“: „PostgreSQL“.

Knygos

  • „PostgreSQL“ mokymasis, autoriai: Juba, Vannahme ir Volkovas;
  • „PostgreSQL“: parengta ir vykdoma: praktinis Obe ir Hsu įvadas į išplėstinę atvirojo kodo duomenų bazę;
  • „PostgreSQL“ duomenų architektams, pateikė Jayadevan Maymala;
  • Duomenų bazių kūrimas pradedant PostgreSQL: Nuo pradedančiųjų iki profesionalių, pateikė Stones ir Matthew;
  • „PostgreSQL 9“ administravimo Cookbook, autorius Riggs ir kt.
  • „PostgreSQL“ kūrėjo vadovas, pateikė Ahmedas, Fayyazas ir Šahzadas;
  • PostgreSQL serverio programavimas, autoriai Dar ir kt.
  • „PostgreSQL 9“ labai prieinamas Cookbookbook, pateikė Shaun M Thomas;
  • „PostgreSQL“ trikčių šalinimas, pateikė Hans-Jurgen Schonig;
  • „PostgreSQL“ administravimo pagrindai, autorius Hans-Jurgen Schonig;
  • „PostgreSQL“, autorius Korry Douglasas.

Bendrieji SQL ir reliacinių duomenų bazių principai

Jūs gausite daug daugiau naudos iš „PostgreSQL“, jei gerai išmanysite pagrindinius RDBMS principus, ypač duomenų modeliavimą (menas ir mokslas išsiaiškinti, kaip pateikti informaciją kaip santykinius duomenis)..

  • Pradžios santykinių duomenų modeliavimas, pateikė Allen ir Terry;
  • Mokymasis SQL, autorius Alanas Beaulieu;
  • „SQL Cookbook“, autorius Anthony Molinaro;
  • SQL antipatterns: išvengti duomenų bazių programavimo spąstų, pateikė Bill Karwin.

Duomenų bazių palyginimas

„PostgreSQL“ yra viena iš kelių reliacinių duomenų bazių valdymo sistemų (RDBMS) parinkčių. Pagrindinės „PostgreSQL“ alternatyvos yra:

  • Orakulas,
  • „MySQL“ ir jos įleidžiamąjį pakaitalą „MariaDB“;
  • „Microsoft SQL Server“;
  • SQLite.

Žinoma, daugumoje projektų iš tikrųjų neturite pasirinkimo. „Oracle“ yra uždarojo šaltinio patentuota programa, naudojama didelėms įmonėms; jei tai ne jūs, jums to neprireiks. „MS SQL Server“ taip pat yra uždaras šaltinis ir yra tik pranašumas, jei kuriate ir diegiate „Windows“ aplinkoje. „SQLite“ yra puiki duomenų bazė daugeliui netradicinių tikslų, tačiau ji nėra tinkama daugeliui duomenų bazių naudojamų programų.

Taigi, kaip galite pasirinkti tarp PostgreSQL ir MySQL? Čia yra keli šaltiniai, kurie gali padėti:

  • „MySQL vs PostgreSQL“, ko gero, išsamiausias ir nešališkiausias palyginimas;
  • SQLite vs MySQL vs PostgreSQL: Santykinių duomenų bazių valdymo sistemų palyginimas;
  • Kodėl aš renkuosi PostgreSQL per MySQL / MariaDB;
  • Sistemos ypatybių palyginimas MariaDB vs MySQL vs PostgreSQL;
  • „PostgreSQL“ „MySQL“.

„NoSQL“ duomenų bazės

Palyginus „Postgres“ su „MySQL“, išnyksta greitai auganti duomenų bazių sistemų kategorija: nesusijusios arba „NoSQL“ duomenų bazės. Čia palyginimas nėra susijęs su dviem gana panašiomis technologijomis, o su visiškai skirtingais duomenų tvarkymo ir tvarkymo būdais.

Populiariausia (iki šiol) „NoSQL“ duomenų bazė yra „MongoDB“. Kiti palyginti populiarūs pasirinkimai yra „Cassandra“, „Couchbase“ ir „Redis“.

Čia yra keletas šaltinių, kurie padės jums pagalvoti apie PostgreSQL ir NoSQL alternatyvas:

  • SQL vs NoSQL KO. „Postgres“ prieš „Mongo“;
  • PostgreSQL vs NoSQL: Kodėl svarbu struktūra (PDF);
  • Sistemos ypatybių palyginimas MongoDB vs PostgreSQL;
  • Palyginkite nepalyginamus: PostgreSQL vs MySQL vs MongoDB;
  • 9 duomenų bazės per 45 minutes.

Įdomu tai, kad „PostgreSQL“ neseniai pridėjo keletą „NoSQL“ funkcijų, o „MongoDB“ kai kuriems savo analizės įrankiams naudoja „PostgreSQL“..

Ar man reikia išmokti „PostgreSQL“?

„Mokymasis“ „PostgreSQL“ apima (bent jau) du dalykus: bendruosius reliacinių duomenų bazių principus (SQL, duomenų modeliavimą) ir unikalų „PostgreSQL“ požiūrį į šiuos dalykus..

Daugeliui funkcijų, sukurtų reliacinėse duomenų bazių sistemose, kūrėjo požiūriu nedaug skiriasi nuo darbo su „PostgreSQL“ ir kitos RDBMS, tokios kaip „MySQL“. Šį SQL branduolį svarbu žinoti daugumai internetinių kūrėjų ir jis gerai pasitarnaus daugeliui darbo vietų.

Ar turite žinoti konkrečius dalykus, kurie „PostgreSQL“ daro unikalų? Tai priklauso nuo to, kokius kitus įgūdžius jau turite ir kokio tipo sistemoje greičiausiai dirbate.

Apskritai „MySQL“ teikia pirmenybė PHP kūrėjams – tai yra numatytoji „WordPress“, „Joomla!“ Ir „Drupal“ RDBMS. .NET kūrėjai ir kiti, dirbantys „Microsoft“ serveriuose, paprastai teikia pirmenybę „MS SQL Server“. Didesnių įmonių kūrėjams labiau reikia žinoti „Oracle“.

Taigi kas iš tikrųjų yra „PostgreSQL“? Atrodo, kad ji yra tinkamiausia duomenų bazė daugumai „Ruby“ ir „Python“ bendruomenių, ypač „Ruby on Rails“ ir „Django“. „Node.js“ kūrėjai dažnai naudoja „Mongo“, tačiau kai reikalingas reliacinis duomenų saugykla, dažniausiai „PostgreSQL“. Debesies paslaugų teikėjai dažniausiai renkasi „Postgres“, o ne „MySQL“, net teikdami „WordPress“ diegimus.

Dėka ORM ir duomenų bazių abstrakcijos, kurią teikia tokios struktūros kaip „Ruby on Rails“, „Django“ ir „Laravel“, galite nemažai nuveikti, nežinodami konkrečiai „PostgreSQL“, todėl tikriausiai pirmiausia norite sutelkti dėmesį į kitas kalbas. Bet jei jau susimąstėte apie keletą programavimo kalbų ir norite įsigilinti į duomenų bazių technologijas, „PostgreSQL“ yra puiki vieta pradėti.

Tolesni skaitymai ir šaltiniai

Turime daugiau vadovų, vadovėlių ir infografijų, susijusių su kodavimu ir plėtra:

  • SQL ištekliai: mūsų bendras SQL šaltinis, kuris yra būtinas visiems reliacinių duomenų bazių kūrėjams.
  • Įvadas į ADO.NET: sužinokite viską apie šią sistemą, naudodami bet kokią duomenų bazę .NET sistemoje.
  • „Ruby on Rails“ įvadas: pradėkite mokytis vienos iš populiariausių interneto kūrimo platformų.

Galutinis žiniatinklio prieglobos vadovas

Jei ketinate kurti duomenų bazių programas, turėsite jas kažkur talpinti. Peržiūrėkite mūsų svarbiausią žiniatinklio prieglobos vadovą. Tai paaiškins viską, ką turite žinoti, kad galėtumėte priimti pagrįstą sprendimą.

Galutinis žiniatinklio prieglobos vadovas
Galutinis žiniatinklio prieglobos vadovas

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map