Alamin ang PostgreSQL: Magsimula sa Iba pang Libreng Libreng Database

Pagbubunyag: Tumutulong ang iyong suporta na panatilihing tumatakbo ang site! Kumikita kami ng bayad sa referral para sa ilan sa mga serbisyong inirerekumenda namin sa pahinang ito.


Ang PostgreSQL (kung minsan ay tinatawag lamang na Postgres) ay isang bukas na mapagkukunan ng object-relational database management system (ORDBMS). Ang hangarin ng komunidad ng pag-unlad ng PostgreSQL ay gawin itong “pinaka-advanced na open source database ng mundo.” Ipinapahiwatig nito ang karamihan sa pamantayan ng SQL, ngunit nagdaragdag din ng isang bilang ng mga advanced na tampok na hindi natagpuan sa iba pang mga sistema ng relational database.

Maikling Kasaysayan ng PostgreSQL

Noong 1973, dalawang siyentipiko sa computer sa UC Berkeley, Eugene Wong at Michael Stonebraker, ay nagsimulang gumana sa isang database system na tinawag nilang Ingres (INteractive GRaphics Retreival System). Ang akdang ito ay orihinal na inilaan para magamit ng mga ekonomista ng Unibersidad, ngunit pinalawak nina Stonebraker at Wong ang proyekto upang magtrabaho sa isang relational database system, inspirasyon ng IBM’s System R at ang mga konsepto sa bagong Structured Query Language.

Noong 1982, iniwan ni Stonebraker ang Berkeley upang magtrabaho sa isang proprietary na relational database system, na tinawag niyang POSTGRES (Post-Ingres). Maraming mga ideya ang ginamit ng POSTGRES mula sa Ingres, ngunit hindi isang tinidor ng codebase nito. Ang Stonebraker ay naglalayong magdagdag ng tahasang suporta para sa mga uri ng data at mga relasyon sa database.

Ang unang prototype para sa bagong sistema ay ipinakita noong 1988, at ang paglabas ng Bersyon 1 ay dumating noong 1989. Ang Bersyon 2 ay dumating sa susunod na taon at Bersyon 3 sa susunod na taon, sa bawat oras na may muling pagsulat ng mga patakaran sa query. Sa pamamagitan ng 1993, napakaraming mga gumagamit na ang koponan ng POSTGRES ay hindi maaaring mapanatili ang mga kahilingan sa suporta. Noong 1994, pinakawalan ng koponan ang Bersyon 4 at natapos ang proyekto. Inilabas nila ang lahat ng gawain sa ilalim ng isang bukas (istilo ng MIT) na lisensya, na nagpapahintulot sa iba pang mga developer na pangasiwaan ang proyekto.

Sa parehong taon, dalawang mag-aaral ng UC Berkeley ang pumalit sa query ng query ng POSTGRES sa SQL at pinakawalan ang kanilang bagong bersyon (Postgres95) sa web. Noong 1996, si Marc Fournier ng Hub.org ay nagbigay ng isang server ng pag-unlad at ang Postgres ay naging isang open source na proyekto sa pag-unlad. Pinangalanan itong PostgreSQL (post-gres-cue-ell). Ang pag-unlad ay nagpatuloy mula pa noon ng isang malaking pamayanan ng mga boluntaryo at mga developer na kilala bilang The PostgreSQL Global Development Group.

Tungkol sa PostgreSQL

Ang PostgreSQL ay gumagawa ng lahat ng mga bagay na nais mong gawin ang isang relational database system na gawin. Ang data ay naka-imbak sa mga talahanayan na nilikha ng gumagamit, na ang bawat entry ay isang hilera ng isang tukoy na talahanayan. Ang mga haligi sa isang talahanayan ay tumutugma sa iba’t ibang mga katangian. Ang mga talahanayan ay maaaring maiugnay sa bawat isa upang lumikha ng mga kumplikadong istruktura ng data. Ang mga postgres, tulad ng karamihan sa mga RDBMS, ay gumagamit ng SQL para sa mga query. Ang nakakaakit sa PostgreSQL ay ang bilang ng mga karagdagang tampok na inaalok nito.

Pakikipag-ugnay sa Bagay

Ang PostgreSQL ay hindi lamang isang database ng pamanggit, ito ay isang database na may kaugnayan sa object. Nangangahulugan ito na sumusuporta sa mga object oriented na mga prinsipyo ng programming tulad ng mana at polymorphism. Ang mga tampok na ito ay isang pagtatangka upang matugunan ang ilan sa mga paghihirap na madalas na nakatagpo kapag ang pagma-map sa mga istrukturang data ng relational sa mga bagay.

Uri ng data

Ang PostgreSQL ay nagbibigay ng isang pinalawak na hanay ng mga uri ng data. Ang lahat ng mga RDBMS ay sumusuporta sa maraming mga uri ng numero, lumulutang-point, string, boolean at mga uri ng petsa. Nagbibigay din ang PostgreSQL:

  • uuid, Mga unibersidad na Natatanging ID, na mahalaga para sa mga ipinamamahaging database system;
  • pananalapi, isang uri ng nakapirming-desimal na nag-aalis ng mga pag-ikot at pagkalkula ng mga error na natagpuan sa mga numero ng lumulutang na punto;
  • binilang, isang static na hanay ng mga pagpipilian;
  • mga uri ng geometric: point, box, segment ng linya, linya, landas, polygon, at bilog;
  • binary, katulad ng blob object ng SQL;
  • mga address ng network, ayon sa maraming mga protocol;
  • bit string, nakapirming-haba na binary string na maaaring magamit bilang bit mask;
  • kapaki-pakinabang ang mga vectors ng teksto para sa buong pag-andar sa paghahanap ng teksto;
  • mga uri ng data ng representasyon tulad ng XML, JSON, at mga arrays;
  • mga pinagsama-samang uri, na pangkat na maraming iba pang mga uri;
  • mga uri ng saklaw, kabilang ang mga bilang ng bilang, mga saklaw ng petsa, at mga saklaw ng oras;
  • mga uri ng tinukoy ng gumagamit.

Laki ng Data at integridad

Maaaring hawakan ng PostgreSQL ang malaking halaga ng data. Ang data mismo ay maaaring maging malaki – ang limitasyon ng laki ng hilera ay 1.6 TB, at ang isang solong larangan ay maaaring humawak ng 1 GB ng data.

Ang sistema ay din ng ACID (Atomicity, Consistency, Isolation at Durability) na sumusunod, na may napakalakas na transactional at referral na integridad.

Virtual Tables

Kapag nagpatakbo ka ng isang query sa SQL laban sa isang hanay ng mga talahanayan ng database, ang resulta ay isa pang talahanayan. Ang Virtual Tables ay isang tampok na database na nagbibigay-daan sa iyo upang lumikha ng mga talahanayan ng mga resulta at pagkatapos ay magpatakbo ng mga karagdagang query laban sa kanila. Pinapayagan nito para sa mas kumplikadong query at mga pagkakataon para sa mga pagpapahusay sa pagganap ng pagbasa.

Sinusuportahan ng PostgreSQL ang ilang mga tampok na Virtual Table. Ang dalawa na natatangi sa PostgreSQL ay muling pagsasaalang-alang at materyal na pananaw. Pinapayagan ng Recursion ang parehong query na tatakbo sa set ng resulta na nagawa na. Maaari itong gawin ng maraming beses hanggang sa ang lahat ng posibleng pinagsama-samang mga resulta ay matatagpuan. Ang recursion ay kapaki-pakinabang para sa hierarchically nakabalangkas na data. Ang mga materyal na pananaw ay lumikha ng paulit-ulit (nakaimbak) virtual na mga talahanayan, na maaaring mai-update kapag kinakailangan (minsan sa isang araw, sa pagsulat). Para sa mga madalas na pinapatakbo na mga query na may mga kumplikadong sumali, maaari itong mapabilis ang pagganap nang napakalaking.

Mga Mapagkukunan ng PostgreSQL

Ang bill ng PostgreSQL mismo bilang “pinaka-advanced na open source database ng mundo,” na marahil ay totoo. Nangangahulugan ito na pagdating sa PostgreSQL, maraming matututunan. Narito ang pinakamahusay na mapagkukunan para sa pagpunta mula sa baguhan ng Postgres hanggang sa dalubhasa.

Online

Ang unang lugar upang magsimula ay ang opisyal na website ng PostgreSQL.

Mga Tutorial

  • Ang Opisyal na Tutorial mula sa postgresql.org, marahil ang unang bagay na dapat mong basahin;
  • Ang PostgreSQL Tutorial, isang buong website na nakatuon sa mga tutorial sa Postgres;
  • Ang Mga Gabay sa Postgres, isa pang website na may isang layunin, na may isang grupo ng mga tutorial sa mga tiyak na aspeto ng paggamit ng PostgreSQL.
  • Ang PostgreSQL Tutrorial isang napaka-simple at prangka na pagpapakilala mula sa Tutorials Point;
  • Ang PostgreSQL Tutorial ng isa pang pangunahing intro mula sa w3resource;
  • Ang PostgreSQL Database at Linux, isang tiyak na pagtuturo ng Linux (lalo na kapaki-pakinabang kung gagawa ka ng isang web-deployment, dahil marahil ay gumagamit ka ng Linux Hosting).

Mga Tutorial sa Video

  • Gabay sa Baguhan sa PostgreSQL, isang bayad na tutorial na nakabase sa video sa Udemy;
  • Mga nagsisimula PostgreSQL database Tutorial 1 – Pag-install at Pag-set up ng PostgreSQL;
  • SQL Tutorial 1: Pag-install at Pag-set up ng PostgreSQL;
  • Mahirap ang Fashion; Madali ang PostgreSQL;
  • Naipalabas ang Mga Postgres.

Sanggunian

  • PostgreSQL Dokumentasyon, dapat mong makilala nang mabuti ang dokumentong ito; mayroong anim na volume na bersyon ng pag-print (link sa Tomo 1) kung gusto mo ang papel;
  • Ang PostgreSQL Wiki, ang mapagkukunan na hinihimok ng komunidad para sa lahat ng dokumentasyon na wala sa opisyal na dokumentasyon – isang napakahalaga na mapagkukunan ng praktikal na impormasyon;
  • PostgreSQL impostor na Sheet, kung sakaling kailangan mo ng mabilis na paalala ng SQL;
  • PostgreSQL command line cheatsheet, kung sakaling kailangan mo ng mabilis na paalala sa mga utos ng psgl ng PostgreSQL.

Mga tool

  • Ang PostgreSQL Software Catalog, isang nakategorya na listahan ng daan-daang mga tool para sa Mga Postgres;
  • PostGIS, spatial at Geographic na mga bagay para sa PostgreSQL;
  • pgAdmin, halos kailangan ng tool sa GUI desktop para sa pamamahala ng database;
  • phpPgAdmin, isang web GUI para sa PostgreSQL, na makukuha mula sa isang bilang ng mga kumpanya sa web hosting;
  • Mayroong talagang isang malaking bilang ng mga tool sa pamamahala ng GUI para sa PostgreSQL;
  • Ang pakete ng postgresql-orm;

Mga driver at Aklatan

  • Psycopg at PyGreSQL para sa Python, at django.contrib.postgres para sa Django;
  • Pg hiyas para kay Ruby;
  • Ang extension ng PostgreSQL para sa PHP;
  • Mga Node-postgres para sa Node.js;
  • JDBC para sa Java.

Pag-aaral sa Komunidad at Patuloy

  • Postgres Lingguhan, isang regular na pag-ikot ng mahalagang balita sa PostreSQL;
  • PGCon – Kumperensya ng PostgreSQL para sa Mga Gumagamit at Tagabuo, ang opisyal na taunang pagtitipon ng mga developer ng PostgreSQL;
  • Planet Postgres, isang pagsasama-sama ng mahahalagang PostgreSQL blog;
  • Lokal na PostgreSQL Meetups Group;
  • Mga Forum:
    • Postgres Plus Forum;
    • dBforums: PostgreSQL.

Mga Libro

  • Pag-aaral ng PostgreSQL, ni Juba, Vannahme, at Volkov;
  • PostgreSQL: Up and Running: Isang Praktikal na Panimula sa Advanced na Bukas na Source Source, nina Obe at Hsu;
  • PostgreSQL para sa Data Architects, ni Jayadevan Maymala;
  • Simula ng Mga Database na may PostgreSQL: Mula sa Novice hanggang sa Propesyonal, ni Stones at Matthew;
  • Ang Cookbook ng PostgreSQL 9, ni Riggs, et al;
  • Ang Gabay sa PostgreSQL Developer, ni Ahmed, Fayyaz, at Shahzad;
  • Ang Programming ng PostgreSQL Server, ni Dar, et al;
  • PostgreSQL 9 Mataas na Kakayahang Cookbook, ni Shaun M Thomas;
  • Pag-areglo ng PostgreSQL, ni Hans-Jurgen Schonig;
  • Mga Mahahalagang Pangangalaga sa PostgreSQL, ni Hans-Jurgen Schonig;
  • PostgreSQL, ni Korry Douglas.

Pangkalahatang Mga Prinsipyo ng SQL at Relasyong Database

Makakakuha ka ng maraming higit pa sa PostgreSQL kung mayroon kang isang mahusay na pag-unawa sa mga pangunahing mga prinsipyo ng RDBMS, lalo na ang pagmomolde ng data (ang sining at agham ng pag-uunawa kung paano kumatawan ng impormasyon bilang pang-ugnay na data).

  • Simula sa Pamamagitan ng Data ng Relational Data, nina Allen at Terry;
  • Pag-aaral ng SQL, ni Alan Beaulieu;
  • SQL Cookbook, ni Anthony Molinaro;
  • SQL Antipatterns: Pag-iwas sa mga Pitfalls ng Database Programming, ni Bill Karwin.

Paghahambing ng mga Databases

Ang PostgreSQL ay isa sa maraming mga pagpipilian para sa mga pamamahala ng database system ng pamamahala (RDBMS). Ang pangunahing kahalili sa PostgreSQL ay:

  • Oracle,
  • MySQL, at ang pag-drop-in na kapalit nitong MariaDB;
  • Microsoft SQL Server;
  • SQLite.

Siyempre, para sa karamihan ng mga proyekto na wala ka talagang pagpipilian sa mga ito. Ang Oracle ay isang saradong mapagkukunan, application na pagmamay-ari na ginamit para sa malalaking negosyo; kung hindi ka iyon, hindi mo ito kakailanganin. Ang SQL Server ay sarado din ang pinagmulan, at isang kalamangan lamang kung nagtatayo ka at nagtatalaga sa isang kapaligiran sa Windows. Ang SQLite ay isang mahusay na database para sa maraming mga hindi magkakaugnay na mga layunin, ngunit hindi maayos na angkop para sa karamihan ng mga application na hinihimok ng database.

Kaya, paano ka makakapili sa pagitan ng PostgreSQL at MySQL? Narito ang ilang mga mapagkukunan upang makatulong:

  • Ang MySQL vs PostgreSQL, marahil ang pinaka-detalyado at walang pinapanigan na paghahambing na magagamit;
  • SQLite kumpara sa MySQL kumpara sa PostgreSQL: Isang Paghahambing Ng Mga Pamamahala ng Mga Pamamahala sa Database System;
  • Bakit Ako Pumili ng PostgreSQL Over MySQL / MariaDB;
  • Paghahambing sa System Properties MariaDB vs MySQL vs PostgreSQL;
  • PostgreSQL vs. MySQL.

Mga Database ng NoSQL

Ang paghahambing ng mga Postgres sa MySQL ay nag-iiwan ng mabilis na kategorya ng mga database system: hindi kaugnayan, o “NoSQL,” na mga database. Narito ang paghahambing ay hindi sa pagitan ng dalawang medyo magkatulad na teknolohiya, ngunit sa pagitan ng ganap na magkakaibang paraan ng paghawak at pamamahala ng data.

Ang pinakasikat (sa malayo) NoSQL database ay MongoDB. Ang iba pang medyo popular na pagpipilian ay sina Cassandra, Couchbase, at Redis.

Narito ang ilang mga mapagkukunan upang matulungan kang mag-isip sa pamamagitan ng pagpapasya sa pagitan ng PostgreSQL at isang alternatibong NoSQL:

  • SQL vs NoSQL KO. Postgres vs Mongo;
  • PostgreSQL vs NoSQL: Bakit mahalaga ang istraktura (PDF);
  • System Properties Paghahambing MongoDB vs PostgreSQL;
  • Paghambingin ang Hindi maihahambing: PostgreSQL vs MySQL vs MongoDB;
  • 9 Mga Database sa 45 Minuto.

Kapansin-pansin, ang PostgreSQL ay kamakailan na naidagdag ang ilang mga tampok ng NoSQL, habang ang MongoDB ay gumagamit ng PostgreSQL para sa ilan sa mga tool sa analytics nito..

Kailangan Ko bang Alamin ang PostgreSQL?

Ang “Pag-aaral” PostgreSQL ay nagsasangkot (hindi bababa sa) dalawang bagay: pangkalahatang mga alituntunin sa pamantayan ng database (SQL, data modeling), at natatanging pamamaraan ng PostgreSQL sa mga bagay na ito.

Para sa karamihan ng mga tampok na itinayo sa mga sistema ng relational database, walang kaunting pagkakaiba sa paninindigan ng developer sa pagitan ng pagtatrabaho sa PostgreSQL at isa pang RDBMS tulad ng MySQL. Mahalagang malaman ang SQL core na ito para sa karamihan sa mga web developer, at magsisilbi kang maayos para sa karamihan sa mga trabaho.

Kailangan mo bang malaman ang mga tukoy na bagay na gumawa ng natatanging PostgreSQL? Nakasalalay ito sa kung ano ang iba pang mga kasanayan na mayroon ka, at kung anong mga uri ng system na malamang na iyong gagawin.

Sa pangkalahatan, ang MySQL ay ginustong ng mga developer ng PHP – ito ang default na RDBMS para sa WordPress, Joomla !, at Drupal. .NET developer at iba pa na nagtatrabaho sa Microsoft server ay karaniwang papabor sa MS SQL Server. Ang mga malalaking developer ng negosyo ay mas malamang na kailangang malaman ang Oracle.

Kaya sino ba talaga ang nasa PostgreSQL? Tila ito ang nais na database para sa karamihan ng mga pamayanan ng Ruby at Python, lalo na kasama ang Ruby sa Riles at Django. Ang mga developer ng Node.js ay madalas na gumagamit ng Mongo, ngunit kapag ang isang relational datastore ay tinatawag na para sa mga ito ay karaniwang PostgreSQL. Mas gusto ng mga service provider ng Cloud ang mga Postgres sa MySQL, kahit na ang pagbibigay ng mga paglawak ng WordPress sa tuktok nito.

Salamat sa ORM at ang database ng abstraction na ibinigay ng mga balangkas tulad ng Ruby sa Riles, Django, at Laravel, marami kang magagawa nang hindi mo alam ang partikular na PostgreSQL, kaya marahil ay nais mong tumuon muna sa ibang mga wika. Ngunit kung nakuha mo na ang iyong ulo sa paligid ng ilang mga wika sa programming, at nais mong maghukay sa teknolohiya ng database, ang PostgreSQL ay isang mahusay na lugar upang magsimula.

Karagdagang Pagbasa at Mga Mapagkukunan

Mayroon kaming higit pang mga gabay, mga tutorial, at mga infograpiko na may kaugnayan sa pag-cod at pag-unlad:

  • Mga Mapagkukunan ng SQL: aming pangkalahatang mapagkukunan ng SQL na kritikal para sa lahat ng mga nag-iisang database developer.
  • Panimula sa ADO.NET: alamin ang lahat tungkol sa sistemang ito para sa paggamit ng anumang database sa loob ng balangkas ng .NET.
  • Pagpapakilala kay Ruby sa Riles: magsimula sa pag-aaral ng isa sa mga pinakatanyag na platform ng pagbuo ng web.

Ultimate Guide sa Web Hosting

Kung gagawa ka ng paglikha ng mga application na hinihimok ng database, kakailanganin mong i-host ang mga ito sa kung saan. Suriin ang aming Ultimate Guide sa Web Hosting. Ipapaliwanag nito ang lahat ng kailangan mong malaman upang makagawa ng isang napiling kaalaman.

Ultimate Guide sa Web Hosting
Ultimate Guide sa Web Hosting

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