אודות

PostgreSQL הוא בסיס נתונים מונחה-עצמים פוסט רלציוני רב עוצמתי, עם קוד פתוח. יותר מ 15 שנות פיתוח אקטיבי שהושקעו במוצר וארכיטקטורה שעברה את כל הבחינות תרמו למוניטין חזק של אמינות, שלמות הנתונים, ותקינות. הוא רץ על כל מערכות ההפעלה העיקריות, כולל לינוקס, יוניקס
(AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64), ו- Windows. זה תואם באופן מלא את פרדיגמת ACID (אטומיות, עקביות, בידוד ועמידות), קיימת תמיכה מלאה במפתחות זרים, פעולות אחוד (Joins), טבלאות דינמיות מדומות (Views), טריגרים, ופרוצדורות מאוחסנות (Stored Procedures) (במספר שפות). הוא כולל את רוב סוגי הנתונים של SQL:2008, כולל INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, וTIMESTAMP. הוא תומך גם אחסון של אובייקטים בינאריים גדולים, כולל תמונות, צלילים, או וידאו. יש לו ממשקים מקוריים עבור C/C++, Java, .Net, Perl, Python, Ruby, Tcl, ODBC, בין היתר, ותיעוד יוצא דופן.

כי מסד נתונים לארגונים תעשייתיים, PostgreSQL מתגאה בתכונות המתוחכמות כגון Multi-Version Concurrency Control, נקודות בזמן להתאוששות, Tablespaces, רפליקציה אסינכרונית, טרנזרקציות מקוננות (Savepoints), גיבויים חמים, כלי אופטימיזציות מתוחכם עבור השאליתות, וכתיבת לוגים עבור עמידות גבוהה בפני תקלות. הוא תומך בערכות תווים בינלאומיות, קידודי תווים, Unicode, והוא מתיחס בהגדרות אזוריות במיון, פורמט והבחנה בין אותיות גדולות וקטנות. הוא ניתן להרחבה גם בכמות העצומה שבסיס נתונים יכול לנהל וגם במספר של משתמשיםהוא יכול להכיל בו זמנית. ישנן מערכות PostgreSQL הפעילות בסביבות ייצור המנהלות יותר מ 4 טרה-בייט של נתונים. חלק מהגבולות הכלליות של PostgreSQL נמצאות בטבלה שלהלן:

ערך הגבלה
ללא הגבלה גודל מסד נתונים מקסימאלי
32 TB גודל טבלה מקסימאלי
1.6 TB גודל רשומה מקסימאלי
1 GB גודל שדה מקסימאלי
ללא הגבלה מספר רשומות מקסימאלי בטבלה
250 - 1600 בהתאם לסוג השדה מספר שדות מקסימאלי בטבלה
ללא הגבלה מספר אינדקסים מקסימאלי בטבלה

 

 

 

 

 

 

 

 

 

 

 

PostgreSQL זכתה בשבחים רבים מצד המשתמשים ובהכרה בתעשייה, הכוללים את Linux New Media Award for Best Database System וחמישה פעמים זכה ב The Linux Journal Editors' Choice Award for best DBMS.

תאימות לתקנים ותכונות

PostgreSQL מתגאה בתאימות לסטנדרטים בינלאומיים. יישום SQL שלן תואם במידה רבה את התקן ANSI-SQL:2008. יש לו תמיכה מלאה בשאלתאות מקוננות (Subqueries) (הכולל subselects ב FROM), רמות בידוד טרנסקציות שונות (read-committed, serializable), ובעוד שלPostgreSQL יש קטלוג מערכת רלציוני לחלוטין שבעצמו תומך בסכימות מרובות לכל מסד נתונים, הקטלוג שלו נגיש גם דרך סכימת המידע כהוגדר בתקן SQL.

תכונות שלמות נתונים כוללות מפתחות ראשיים  (מורכבים), מפתחות זרים עם הגבלה בעדכונים/מחיקות, בדיקת אילוצים, אילוצים ייחודיים, ואילוצי not null.

כמו כן, קיים מגוון רחב של הרחבות ותכונות מתקדמות. בין התכונות הן שדות עם תוספות אוטומטיות דרך רצפים, LIMIT/OFFSET המאפשר החזרת תוצאות חלקיות. PostgreSQL תומך באינדקסים מורכבים, ייחודיים, חלקיים, ופונקציונליים אשר יכולים להשתמש בכל אחת משיטות האחסון כמו B-tree, R-tree, hash, GiST.

Gist) Generalized Search Tree) זהו אינדקס הוא מערכת מתקדמת אשר מביאה ביחד מגוון רחב של מיונים ואלגוריטמי חיפוש הכוללים B-tree, B+-tree, R-tree, partial sum trees, ranked B+-trees ורבים אחרים. הוא גם מהווה ממשק המאפשר יצירת סוגי נתונים מותאמים אישית וגם שאליתאות הניתנות להרחבה בכדי לחפש אותם. לפיכך, GIST מציע את הגמישות לבגדיר את מה לאחסן, איך לאחסן, ואת היכולת להגדיר דרכים חדשות לחיפוש -  דרכים העולים בהרבה מאלו המוצעים על ידי B-tree, R-tree סטנדרטיים ואלגוריתמי חיפוש כלליים אחרים.

Gist משמש כבסיס לפרויקטים ציבוריים רבים העושים שימוש PostgreSQL כגון OpenFTS ו PostGIS.

OpenFTS (מנוע חיפוש טקסטעם קוד פתוח) מספק אינדקס מקוון של נתונים ורלוונטיים דירוג עבור חיפוש בבסיסי הנתונים. PostGIS הוא פרויקט אשר מוסיף תמיכה עבור אובייקטים גיאוגרפיים בPostgreSQL, שמאפשר לו לשמש כבסיס נתונים מרחבי למערכות מידע גיאוגרפיות (GIS), בדומה ל ESRI's SDE או Oracle's Spatial Extension.

תכונות מתקדמות נוספות כוללות ירושת הטבלאות, מערכות חוקים ואירועים במסד הנתונים. ירושת טבלאות מוסיפה השקפת עולם של תכנות מונחה עצמים ביצירת הטבלאות, מה שמאפשר למתכנני מסד לייצר טבלאות חדשות מטבלאות אחרות, להתייחס אליהם כאל מחלקות בסיס. ואפילו יותר טוב, PostgreSQL תומך גם  ירושה יחידה מרובה.

מערכת חוקים, הנקראת גם המערכת לשכתוב שאילתאות, מאפשרת למעצב נתונים כדי ליצור חוקים אשר מזהים פעולות ספציפיות עבור אובייקט ובאופן דינאמי מתרגמים אותן פעולות לפעולות חלופיות כאשר הן מעובדות.

מערכת האירועים היא מערכת לתקשורת בינתהליכית שבה מסרים ואירועים יכולים להיות מועברים בין הלקוחות באמצעות פקודות LISTEN ו NOTIFY, המאפשרת תקשורת peer to peer פשוטה ותיאום מתקדם של אירועים במסד הנתונים. מכיוון שמסרים ניתן להוציא מטריגרים ופרוצדורות מאוחסנים, לקוחות PostgreSQL יכולים לנתר אירועים המתרחשים בבסיס נתונים כגון עדכונים בטלבאות, הוספות או מחיקות כפשהם קורים.

ניתן להתאמה אישית ברמה גבוהה ביותר

PostgreSQL מפעיל פרוצדורות המאוחסנים בלמעלה מתריסר שפות תכנות, כולל C/C++, Java, Perl ואחרים שפת תכנות משלו PL/pgSQL הדומה ל Oracle's PL/SQL. בפרייה סטנדרטית שלו כוללת מאות של פונקציות מובנות מפעולות מתמטיות ומחרוזות בסיסיות עד להצפנה ותאימות לOracle. ניתן לכתוב טריגירים ופרוצדורות המאוחסנים ב- C ולטעון אותם ככספריות, זה המאפשר גמישות רבה ביכולות ההרחבת של המוצר. באופן דומה, PostgreSQL כולל מערכת המאפשרת למפתחים להגדיר וליצור סוגי הנתונים מותאמים אישית משלהם יחד עם פונקציות תומכות אופרטורים המגדירים את ההתנהגותם. כתוצאה מכך, שורה של סוגי נתונים מתקדמים נוצרה החל מנתונים מרחביים וגיאומטריים עד כתובות רשת ואפילו ISBN / ISSNמספרים סריאליים, כל אלה ניתן אופציונלית להוסיף למערכת.

כפי שיש שפות פרוצדורליות רבות הנתמות על ידי PostgreSQL, ישנם גם ממשקים רבים, השמאפשרים בשפות שונות להתממשק עם PostgreSQL. ישנם ממשקים עבור Java (JDBC), ODBC, Perl, Python, Ruby, C, C ++, PHP, Lisp, Scheme, ו- Qt.

והכי החשוב, קוד המקור של PostgreSQL זמין תחת רישיון קוד פתוח ליברלי: PostgreSQL License. רישיון זה נותן את החופש להשתמש, לשנות ולהפיץ PostgreSQL בכל צורה, עם קוד פתוח או סגור. כל השינויים או השיפורים שתבצעו הם שלכם אתם יכולים לעשות בהם כרצונכם. לכן, PostgreSQL הוא לא רק מערכת מסדי נתונים רב עוצמתית המסוגלת להריץ את הארגון, הוא גם פלטפורמה לפיתוח שעליה ניתן לפתח מערכות פנים הארגוניות, אינטרנטיות, או מוצרי תוכנה מסחריים הדורשים RDBMS המסוגל לעמוד בסטנדרטים תעשייתיים.