This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
u The Enterprise PostgreSQL company"u Founded in 2004, first product GA in 2005"u 130+ employees"u 1,900+ customers across all market segments"u PostgreSQL service, support, training, and add-on tools"u PostgresPlus enhanced products for enterprise needs"u Largest commercial entity exclusively focused on PostgreSQL"u Strong financial backing:"
u User defined data types with Attributes and functions for manipulating data
u Allows for smaller and more modular data types and operations that map cleanly to object oriented client applications making developer’s work faster and easier
u New: • member functions and procedures"
• syntax compatibility for FINAL, NOT INSTANTIABLE, and OVERRIDING"
u Also complete syntax support for objects in dump and restore operations
Reduced costs using existing Oracle skills and features
Oracle: Object types enhancements
CREATE TYPE CustomType AS OBJECT ( attribute1 INT, attribute2 REAL, MEMBER FUNCTION funcplus( arg1 INT) RETURNS INT, MEMBER FUNCTION funcminus( arg1 INT) RETURNS INT ) CREATE TYPE BODY CustomType AS MEMBER FUNCTION funcplus( arg1 INT) RETURNS INT IS BEGIN RETURN attribute1 + attribute2; END funcplus; MEMBER FUNCTION funcminus( arg1 INT) RETURNS INT IS BEGIN RETURN attribute1 - attribute2; END funcminus; END; /
Object Type Spec
Object Type Body
Reduced costs using existing Oracle skills and features
u Sub-type derived from an existing base type u Adds additional constraints u Defined in SPL (procedures/functions/triggers/packages)
DECLARE SUBTYPE INTEGER IS NUMBER (38,0); SUBTYPE NAME IS VARCHAR (20) NOT NULL; var1 INTEGER; var3 NAME := 'hello'; -- NOT NULL constraint, must initialize BEGIN var1 := 38.38; -- can't have fractional part, it will be lost because of constraint DBMS_OUTPUT.PUT_LINE ('Var1 = '|| var1); END;
Reduced costs using existing Oracle skills and features
Oracle: new Functions, Syntax, Variable support
u DROP TABLE mytable CASCADE CONSTRAINTS; u "current_date" can now be a variable name u "Log" can now be a function name u "STRING" is now a data type (maps to VARCHAR2) u "NVARCHAR2" is now a data type (maps to VARCHAR) u Table() Expressions for Nested Tables:
CREATE OR REPLACE TYPE string_a IS TABLE OF VARCHAR2(765); select * from table(string_a('abc','xyz')) ; column_value -------------- abc xyz (2 rows)
Reduced costs by increasing application developer’s productivity
Management Enhancements
u New pg_dump options support faster restores • Allows custom ordering of the restore of meta-data and data"• table structure and check constraints first, "• then data, "• then indexes, unique constraints, foreign keys"
u pg_upgrade enhancements • in-place upgrades without dump/restore"• handles more use cases"• improve logging and failure reporting"
u Postgres Enterprise Manager 3.0 • more in a few minutes..."
What is xDB Replication Server?"u Single Master logical database replication system u Publication / Subscription Architecture u Replicate one or more tables u Define and apply row filters u Heterogeneous replication between Postgres and Oracle or SQL Server u Graphical Console and CLI u Replication History Viewer u Improves Read Scalability, Read Availability, Read Performance u Used for: offload reporting, warm standby servers, migrating data,
testing systems in parallel u Reduces IT costs:
• deploying on existing commodity hardware"• substituting Postgres for Oracle or SQL Server licenses"
u Multi-Master logical database replication system u Publication / Subscription Architecture u Replicate one or more tables u Define and apply row filters u Heterogeneous replication between Postgres and Oracle or SQL Server u Graphical Console and CLI u Replication History Viewer u Improves Write Availability, Write Performance u Used for: HA, faster access to data, testing in parallel u Reduces IT costs:
• deploying on existing commodity hardware"• avoiding expensive hardware and networking upgrades to support write intensive
applications"
xDB Multi-Master Replication"
All Read
All Write
Any table Any row
xDB MMR - Features"u True Master-to-Master Replication for 2 or more nodes
• Any data can be edited from any master in the cluster"• Equal data access and editing capabilities on each master "• Updates to other masters occurs in near real time"
u Trigger-based and Asynchronous • Update delay between masters of a couple of seconds or longer"• Appropriate for latency-tolerant applications"• Ideal for geo-dispersed user populations"• Dramatic improvement over batch updates between servers"
u Automatic Conflict Detection • Uniqueness"• Update"• Delete"
xDB MMR - Replication Monitoring"u GUI Monitoring for Replication Events
u DBAs can view In-Progress and Completed Replication Events • Replication Event Start Time"• Completion Time"• Count of Replicated Transactions"• Replication Status (Completed, Failed)"
u Data Conflict Monitoring • Conflict Detection Time"• Source and Target Master Nodes"• Conflict Transaction details"• Resolution Strategy employed"• Resolution Status (Pending, Resolved)"
u New Data Import Wizard u Search for database objects by name u Auto-refresh for objects when clicked in the display tree u Support for Postgres v9.2 features such as Security labels,
VIEW Security barriers, and Object type privileges u SSL compression option for SSL connections u Copy table structure for creating new tables u Support for optimized pg_dump/pg_restore options: Pre-