SlideShare a Scribd company logo
Product Update
EDB Postgres Platform 2017
1
Advances in Postgres Set New Digital Business Standard:
More Workloads, Larger Data Sets, and Greater Integration
Agenda
• An Overview of EDB Technologies
• EDB Postgres Platform Update – Winter 2017
• EDB Postgres Advanced Server 9.6
• Backup and Recovery 2.0
• Replication Server 6.1
EDB Technologies
Updates in
Winter 2017
EDB Postgres Platform Update – Winter 2017
EDB Postgres Advanced Server 9.6
• Migrate more applications from Oracle and support ISVs
• Manage larger data sets
• Faster analytic queries
• Build more robust clustering, scale out & integration solutions
• Improved monitoring
Backup and Recovery 2.0
• Faster backups with block level incremental change capture
Replication Server 6.1
• Updated support for Oracle 12c, SQL Server 2012
• Parallel replication for multi master improves performance with
multiple active nodes
Feature Highlights for Postgres Advanced Server 9.6
• DBMS_AQ Advance Queuing
• Nested Sub-procedures
• Partitioned Table performance
enhancements
• EDBLDR Enhancements
• Oracle compatibility features
PostgreSQL 9.6Postgres Advanced Server 9.6
• Parallel sequential scans, joins and
aggregates
• Elimination of repetitive scanning of old
data by autovacuum
• Synchronous replication support for
multiple standby servers
• Full-text search for phrases
• Support for remote joins, sorts, and
updates in postgres_fdw
Focus on Security, Scalability, and Enterprise Readiness
EDB: Oracle Compatible DBMS_AQ:
• Business applications communicate
with each other
• Producer applications enqueue
messages
• Consumer applications dequeue
messages
• Implemented in database tables
• Standard database features apply
• Recovery
• Restart
• Security
Advanced Queuing provides database-integrated message queuing
functionality
EDB: Oracle Compatible DBMS_AQ:
• DBMS_AQADM.CREATE_QUEUE_TABLE: Creates a new
queue table that can physically hold any number of queues.
• DBMS_AQADM.CREATE_QUEUE: Creates a new queue in
an existing queue table.
• DBMS_AQADM.DROP_QUEUE: Drops an existing queue.
• DBMS_AQADM.DROP_QUEUE_TABLE: Drops an existing
queue table.
• DBMS_AQADM.ALTER_QUEUE: Modifies an existing
queue.
• DBMS_AQADM.ALTER_QUEUE_TABLE: Modifies an
existing queue table.
• DBMS_AQADM.START_QUEUE: Enables enqueuing and/or
dequeuing in an existing queue.
• DBMS_AQADM.STOP_QUEUE: Disables enqueue and/or
dequeue in existing queue.
• DBMS_AQ.ENQUEUE: Posts a message to a
queue. Messages can optionally be delayed, so that they
are not available for dequeuing for a certain number of
seconds. Messages can optionally have an expiry time
limit, so that they will expire and move to the exception
queue if they are not dequeued after a certain number of
seconds.
• DBMS_AQ.DEQUEUE: Retrieves a message from a
queue if one is available, and optionally waits for one to
become available.
• DBMS_AQ.REGISTER: Registers a callback procedure
that will be invoked in a background worker when
messages are enqueued.
• DBMS_AQ.UNREGISTER: Unregisters a callback
procedure previously registered with REGISTER.
Packages: DBMS_AQ and DBMS_AQADM
Advantages of Advanced Queuing
• Interactions are integrated with database transactions, so messages are only
enqueued or dequeued if a transaction commits.
• Simple asynchronous processing using background workers and any
supported stored procedure language.
• Queue operations can be used in triggers.
• A system of retries and exception handling is integrated with database
transactions.
• No extra services/daemons required.
• Messages are persistent and covered by existing backup procedures.
EDB: Oracle Compatible Nested Sub Procedures
• Defined in the declaration part of
the enclosing procedure or
function
• Support for both Procedures and
Functions
• Procedures perform an action
• Functions compute a value
• Named PL/SQL blocks that can
be called with a set of
parameters
• Starts with the PROCEDURE or
FUNCTION key word
“A named procedure defined and used inside another procedure or function”
SQL> CREATE OR REPLACE PROCEDURE HR.DBA_WEEK AS
2 PROCEDURE DBA_TASK (day VARCHAR2) AS
3 BEGIN
4 IF day = 'MONDAY' THEN
5 DBMS_OUTPUT.PUT_LINE('Checking log files.');
6 ELSIF day = 'FRIDAY' THEN
7 DBMS_OUTPUT.PUT_LINE('Rebuild indexes.');
8 ELSE
9 DBMS_OUTPUT.PUT_LINE('Reading some papers.');
10 END IF;
11 END;
12 BEGIN
13 DBA_TASK('MONDAY');
14 DBA_TASK('TUESDAY');
15 END;
16 /
SQL> EXECUTE DBA_WEEK;
Checking log files.
Reading some papers.
EDB: Oracle Compatible Nested Sub Procedures
Simple Procedure Example
Nested
Sub Procedure
Main
Procedure
EDB: Oracle Compatible Nested Sub Procedures
Simple Function example
SQL> CREATE OR REPLACE PROCEDURE SUM_TEST AS
2 FUNCTION MY_SUM(X NUMBER, Y NUMBER)
3 RETURN NUMBER AS
4 BEGIN
5 RETURN X + Y;
6 END;
7 BEGIN
8 DBMS_OUTPUT.PUT_LINE('3 + 5 = ' ||
9 TO_CHAR(MY_SUM(3,5)));
10 DBMS_OUTPUT.PUT_LINE('5 + 3 = ' ||
11 TO_CHAR(MY_SUM(5,3)));
12 END;
13 /
SQL> EXECUTE SUM_TEST;
3 + 5 = 8
5 + 3 = 8
Nested
Sub Function
Main
Procedure
EDB Advanced Server:
Compatibility with Oracle
• EDBLDR compatibility with Oracle SQLLDR
• Oracle Style Parallel Hints
• OLD and NEW
• Compatible “all_directories” View
Additional features
EDB Advanced Server:
Compatibility with Oracle
EDBLDR:
• NULLIF
• SELECT EXPRESSIONS
• Datatype(length)
• BOUNDFILLER
• Column name in when
clause
Examples:
• deptno POSITION(1:2) INTEGER EXTERNAL(2) NULLIF
deptno=BLANKS,
• job POSITION (15:23) "(SELECT dname FROM dept WHERE deptno
= :deptno)”
• RECORD_CODE BOUNDFILLER CHAR(3)
• c1,
field2 BOUNDFILLER,
field3 BOUNDFILLER,
c2 ":field2 || :field3”
• WHEN (1:3) = “200” now WHEN EMPNO= “200”
Additional features
EDB Advanced Server: Performance
Partitioning:
• Fast Pruning for more datatypes (varchar, smallint)
• Fast Pruning for Prepared Statements
• Exchange Partition Improvements (compatible with Oracle
behavior)
Parallelism:
• Parallel Clause within SPL Package Body (Parallel safe or
unsafe)
dblink:
• Join pushdown
• Sort pushdown
Highlights
PostgreSQL 9.6
Parallelism:
• Sequential Scan
• Nested Loops and Hash
Joins
• Aggregates
• Group Locking
Phase 1:
• Better performance for read
only transactions
• Sequential scan, Aggregations,
Hash Joins and Nested Loops
can be parallelized
• Parallel infrastructure:
designate a group of
processes whose locks will be
mutually non-conflicting
Highlights
PostgreSQL 9.6
PostgreSQL FDW:
• Join pushdown
• DML pushdown
• Sort pushdown
• Sorted Joins pushdown
• Push processing to the remote
system to minimize I/O
Highlights
PostgreSQL 9.6
• Snapshot too old
• Freeze Map
• Reduce BLOAT when long
running queries prevented
VACUUM from running
• New bit in the freeze map lets
VACUUM skip frozen pages
Highlights
PostgreSQL 9.6
• Multiple Synchronous standbys
• Full Text search for Phrases
• Monitoring:
• VACUUM Progress checker
• pg_stat_activity improvements
• Synchronous Replication now supports
multiple standby servers
• Support searching for Phrases (adjacent,
distance)
• Progress reporting for VACUUM
operations
• Waits for lightweight locks and buffer
pins are now shown in pg_stat_activity
(until now only heavyweight locks were)
Highlights
Backup and Recovery: BART 2.0
• Complete, hot, physical backups of multiple local or remote
Postgres servers
• Block level Incremental backup
• Policy enforced management of files required for recovery
• Store backup data in compressed formats
• Verify backup data with MD5 checksum
• Disk space awareness
• Rich reporting to show backup time, size, WAL file information
• Optional friendly name for backups
Simplify and reduces errors with a system-wide catalog and command line tool that allows online
backup and recovery across local and remote PostgreSQL and PPAS Servers.
Block Level Incremental Backup
Supported with Postgres 9.5+
• WAL from DB scanned using the XLogReader API.
Basic concept -
• WAL scanner runs in the background & identifies data
that has changed and the location of the modified
blocks.
• BAR generates an MBM (Modified Block Map) file for
each WAL that indicates which blocks have changed.
• A harvester process creates a CBM (Consolidated
Block Map) out of the MBMs and fetches modified
blocks.
• Restore process copies blocks from CBM to restored
server.
Incremental Backup decreases amount of time required for backup and minimizes the
amount of storage required
Postgres 9.5+
WAL Files
BAR 1.2
1) WAL Scanner identifies modified
blocks
2) Harvester collects modified blocks
direct from DBServer
3) Restore process copies modified
blocks from backup server. Drop
or truncate actions result
in file removal or truncation
basebackup
Modified blocks
fetched via libpq
Replication Solutions for Postgres
Native Replication in Postgres EDB Replication Server
Full database replication only Table based replication with row level
filtering support
Read only replicas with no multi master
capabilities
Options for read only or multi master
No replication to non-Postgres sources Replicate to and from Oracle 10g, 11g, 12c*
and SQL Server 2005, 2008, 2014*
Minimal cross version replication Replication across PostgreSQL and EDB
Postgres Advanced Server 9.1 to 9.6
* Updated in 6.1
EDB Replication Server Highlights
• Distributed Publication / Subscription Architecture
• 6.1 updates support for Oracle 12c, SQL Server 2014
• Snapshot and continuous synchronization modes
• 6.0 added Log Based replication from Postgres
• 6.1 optimizes for parallel synchronization with multiple active nodes
• Replicate one or more tables
• 6.0 added pattern matching selection rules for easier to configure publication tables
• Define and apply row filters
• Flexible replication scheduler
• Supports cascading replication
• Replication History Viewer
• Graphical Console and CLI
Recap - EDB Postgres Platform Update – Winter 2017
EDB Postgres Advanced Server 9.6
• Migrate more applications from Oracle and support ISVs
• Manage larger data sets
• Faster analytic queries
• Build more robust clustering, scale out & integration solutions
• Improved monitoring
Backup and Recovery 2.0
• Faster backups with block level incremental change capture
Replication Server 6.1
• Updated support for Oracle 12c, SQL Server 2014
• Parallel replication for multi master improves performance with
multiple active nodes
QUESTIONS?
24
25

More Related Content

What's hot (20)

PDF
Active/Active Database Solutions with Log Based Replication in xDB 6.0
EDB
 
PDF
Enterprise PostgreSQL - EDB's answer to conventional Databases
Ashnikbiz
 
PDF
Technical Introduction to PostgreSQL and PPAS
Ashnikbiz
 
PDF
Top 10 Tips for an Effective Postgres Deployment
EDB
 
PPTX
An Expert Guide to Migrating Legacy Databases to PostgreSQL
EDB
 
PDF
Best Practices for Becoming an Exceptional Postgres DBA
EDB
 
PPTX
Simplify Consolidation with Oracle Database 12c
Maris Elsins
 
PDF
What's New in PostgreSQL 9.3
EDB
 
PDF
Overview of Postgres 9.5
EDB
 
PDF
Hello World with EDB Postgres
EDB
 
PDF
Migrating from Oracle to Postgres
EDB
 
PDF
The Real Scoop on Migrating from Oracle Databases
EDB
 
PDF
Die 10 besten PostgreSQL-Replikationsstrategien für Ihr Unternehmen
EDB
 
PDF
What's New in PostgreSQL 9.6
EDB
 
PPTX
Powering GIS Application with PostgreSQL and Postgres Plus
Ashnikbiz
 
PDF
Expanding with EDB Postgres Advanced Server 9.5
EDB
 
PDF
Which Postgres is Right for You?
EDB
 
PPT
Extreme Availability using Oracle 12c Features: Your very last system shutdown?
Toronto-Oracle-Users-Group
 
PDF
5 Postgres DBA Tips
EDB
 
PDF
Oracle 12c PDB insights
Kirill Loifman
 
Active/Active Database Solutions with Log Based Replication in xDB 6.0
EDB
 
Enterprise PostgreSQL - EDB's answer to conventional Databases
Ashnikbiz
 
Technical Introduction to PostgreSQL and PPAS
Ashnikbiz
 
Top 10 Tips for an Effective Postgres Deployment
EDB
 
An Expert Guide to Migrating Legacy Databases to PostgreSQL
EDB
 
Best Practices for Becoming an Exceptional Postgres DBA
EDB
 
Simplify Consolidation with Oracle Database 12c
Maris Elsins
 
What's New in PostgreSQL 9.3
EDB
 
Overview of Postgres 9.5
EDB
 
Hello World with EDB Postgres
EDB
 
Migrating from Oracle to Postgres
EDB
 
The Real Scoop on Migrating from Oracle Databases
EDB
 
Die 10 besten PostgreSQL-Replikationsstrategien für Ihr Unternehmen
EDB
 
What's New in PostgreSQL 9.6
EDB
 
Powering GIS Application with PostgreSQL and Postgres Plus
Ashnikbiz
 
Expanding with EDB Postgres Advanced Server 9.5
EDB
 
Which Postgres is Right for You?
EDB
 
Extreme Availability using Oracle 12c Features: Your very last system shutdown?
Toronto-Oracle-Users-Group
 
5 Postgres DBA Tips
EDB
 
Oracle 12c PDB insights
Kirill Loifman
 

Viewers also liked (19)

PDF
Key Methodologies for Migrating from Oracle to Postgres
EDB
 
PDF
Postgres Point-in-Time Recovery
EDB
 
PDF
Migration From Oracle to PostgreSQL
PGConf APAC
 
PDF
Oracle to Postgres Migration - part 1
PgTraining
 
PDF
Business Continuity Considerations for a More Reliable Postgres Environment
EDB
 
PDF
Reducing the Risks of Migrating Off Oracle
EDB
 
PDF
Which Postgres is Right for You? - Part 2
EDB
 
PDF
Optimizing Your Postgres ROI Through Best Practices
EDB
 
PDF
Which Postgres is Right for You? Part 3
EDB
 
PDF
Postgres in Production - Best Practices 2014
EDB
 
PDF
Oracle to Postgres Migration - part 2
PgTraining
 
PDF
Introducing EDB Failover Manager
EDB
 
PDF
Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)
Gabriele Bartolini
 
PDF
Useful PostgreSQL Extensions
EDB
 
PDF
PostgreSQL 9.6 Performance-Scalability Improvements
PGConf APAC
 
PDF
Why we love pgpool-II and why we hate it!
PGConf APAC
 
PDF
Postgres Enterprise Manager 4.0 Overview
EDB
 
PDF
Introducing Postgres Enterprise Manager 5.0
EDB
 
PDF
PostgreSQL Disaster Recovery with Barman (PGConf.EU 2013)
Gabriele Bartolini
 
Key Methodologies for Migrating from Oracle to Postgres
EDB
 
Postgres Point-in-Time Recovery
EDB
 
Migration From Oracle to PostgreSQL
PGConf APAC
 
Oracle to Postgres Migration - part 1
PgTraining
 
Business Continuity Considerations for a More Reliable Postgres Environment
EDB
 
Reducing the Risks of Migrating Off Oracle
EDB
 
Which Postgres is Right for You? - Part 2
EDB
 
Optimizing Your Postgres ROI Through Best Practices
EDB
 
Which Postgres is Right for You? Part 3
EDB
 
Postgres in Production - Best Practices 2014
EDB
 
Oracle to Postgres Migration - part 2
PgTraining
 
Introducing EDB Failover Manager
EDB
 
Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)
Gabriele Bartolini
 
Useful PostgreSQL Extensions
EDB
 
PostgreSQL 9.6 Performance-Scalability Improvements
PGConf APAC
 
Why we love pgpool-II and why we hate it!
PGConf APAC
 
Postgres Enterprise Manager 4.0 Overview
EDB
 
Introducing Postgres Enterprise Manager 5.0
EDB
 
PostgreSQL Disaster Recovery with Barman (PGConf.EU 2013)
Gabriele Bartolini
 
Ad

Similar to Product Update: EDB Postgres Platform 2017 (20)

PDF
What's New in Postgres Plus Advanced Server 9.3
EDB
 
PPTX
Les nouveautés d'EDB Postgres 11
EDB
 
PDF
New enhancements for security and usability in EDB 13
EDB
 
PPTX
Neuerungen in EDB Postgres 11
EDB
 
PPTX
EDB Postgres Platform 11 Webinar
EDB
 
PPTX
New enhancements for security and usability in EDB 13
EDB
 
PDF
EDB 13 - New Enhancements for Security and Usability - APJ
EDB
 
PDF
Get PostgreSQL Server Programming - Second Edition Dar free all chapters
kapuilakna
 
PDF
Implementing Parallelism in PostgreSQL - PGCon 2014
EDB
 
PPTX
Deploy, move and manage Postgres across cloud platforms
Ashnikbiz
 
PDF
10/ EnterpriseDB @ OPEN'16
Kangaroot
 
PDF
OUG Ireland Meet-up - Updates from Oracle Open World 2016
Brendan Tierney
 
PDF
9.6_Course Material-Postgresql_002.pdf
sreedb2
 
PDF
Most Wanted: Future PostgreSQL Features
Peter Eisentraut
 
PDF
Optimizing Open Source for Greater Database Savings & Control
EDB
 
PDF
PostgreSQL Server Programming 2nd Edition Usama Dar
bhaveeranirh
 
PDF
Whats new in_postgres_enterprise_db_20130124
EDB
 
PDF
PostgreSQL Server Programming Second Edition Usama Dar Hannu Krosing Jim Mlod...
servanjervy
 
PPTX
EDB Database Servers and Tools
Ashnikbiz
 
PDF
What's New In PostgreSQL 9.4
Pavan Deolasee
 
What's New in Postgres Plus Advanced Server 9.3
EDB
 
Les nouveautés d'EDB Postgres 11
EDB
 
New enhancements for security and usability in EDB 13
EDB
 
Neuerungen in EDB Postgres 11
EDB
 
EDB Postgres Platform 11 Webinar
EDB
 
New enhancements for security and usability in EDB 13
EDB
 
EDB 13 - New Enhancements for Security and Usability - APJ
EDB
 
Get PostgreSQL Server Programming - Second Edition Dar free all chapters
kapuilakna
 
Implementing Parallelism in PostgreSQL - PGCon 2014
EDB
 
Deploy, move and manage Postgres across cloud platforms
Ashnikbiz
 
10/ EnterpriseDB @ OPEN'16
Kangaroot
 
OUG Ireland Meet-up - Updates from Oracle Open World 2016
Brendan Tierney
 
9.6_Course Material-Postgresql_002.pdf
sreedb2
 
Most Wanted: Future PostgreSQL Features
Peter Eisentraut
 
Optimizing Open Source for Greater Database Savings & Control
EDB
 
PostgreSQL Server Programming 2nd Edition Usama Dar
bhaveeranirh
 
Whats new in_postgres_enterprise_db_20130124
EDB
 
PostgreSQL Server Programming Second Edition Usama Dar Hannu Krosing Jim Mlod...
servanjervy
 
EDB Database Servers and Tools
Ashnikbiz
 
What's New In PostgreSQL 9.4
Pavan Deolasee
 
Ad

More from EDB (20)

PDF
Cloud Migration Paths: Kubernetes, IaaS, or DBaaS
EDB
 
PDF
Migre sus bases de datos Oracle a la nube
EDB
 
PDF
EFM Office Hours - APJ - July 29, 2021
EDB
 
PDF
Benchmarking Cloud Native PostgreSQL
EDB
 
PDF
Las Variaciones de la Replicación de PostgreSQL
EDB
 
PDF
NoSQL and Spatial Database Capabilities using PostgreSQL
EDB
 
PDF
Is There Anything PgBouncer Can’t Do?
EDB
 
PDF
Data Analysis with TensorFlow in PostgreSQL
EDB
 
PDF
Practical Partitioning in Production with Postgres
EDB
 
PDF
A Deeper Dive into EXPLAIN
EDB
 
PDF
IOT with PostgreSQL
EDB
 
PDF
A Journey from Oracle to PostgreSQL
EDB
 
PDF
Psql is awesome!
EDB
 
PPTX
Comment sauvegarder correctement vos données
EDB
 
PDF
Cloud Native PostgreSQL - Italiano
EDB
 
PPTX
Best Practices in Security with PostgreSQL
EDB
 
PDF
Cloud Native PostgreSQL - APJ
EDB
 
PDF
Best Practices in Security with PostgreSQL
EDB
 
PDF
EDB Postgres & Tools in a Smart City Project
EDB
 
PPTX
Migrate Today: Proactive Steps to Unhook from Oracle
EDB
 
Cloud Migration Paths: Kubernetes, IaaS, or DBaaS
EDB
 
Migre sus bases de datos Oracle a la nube
EDB
 
EFM Office Hours - APJ - July 29, 2021
EDB
 
Benchmarking Cloud Native PostgreSQL
EDB
 
Las Variaciones de la Replicación de PostgreSQL
EDB
 
NoSQL and Spatial Database Capabilities using PostgreSQL
EDB
 
Is There Anything PgBouncer Can’t Do?
EDB
 
Data Analysis with TensorFlow in PostgreSQL
EDB
 
Practical Partitioning in Production with Postgres
EDB
 
A Deeper Dive into EXPLAIN
EDB
 
IOT with PostgreSQL
EDB
 
A Journey from Oracle to PostgreSQL
EDB
 
Psql is awesome!
EDB
 
Comment sauvegarder correctement vos données
EDB
 
Cloud Native PostgreSQL - Italiano
EDB
 
Best Practices in Security with PostgreSQL
EDB
 
Cloud Native PostgreSQL - APJ
EDB
 
Best Practices in Security with PostgreSQL
EDB
 
EDB Postgres & Tools in a Smart City Project
EDB
 
Migrate Today: Proactive Steps to Unhook from Oracle
EDB
 

Recently uploaded (20)

PPTX
05_Jelle Baats_Tekst.pptx_AI_Barometer_Release_Event
FinTech Belgium
 
PDF
apidays Singapore 2025 - Trustworthy Generative AI: The Role of Observability...
apidays
 
PPTX
01_Nico Vincent_Sailpeak.pptx_AI_Barometer_2025
FinTech Belgium
 
PDF
Optimizing Large Language Models with vLLM and Related Tools.pdf
Tamanna36
 
PPTX
Feb 2021 Ransomware Recovery presentation.pptx
enginsayin1
 
PDF
Data Science Course Certificate by Sigma Software University
Stepan Kalika
 
PPTX
03_Ariane BERCKMOES_Ethias.pptx_AIBarometer_release_event
FinTech Belgium
 
PDF
Using AI/ML for Space Biology Research
VICTOR MAESTRE RAMIREZ
 
PDF
apidays Singapore 2025 - From API Intelligence to API Governance by Harsha Ch...
apidays
 
PPTX
Powerful Uses of Data Analytics You Should Know
subhashenia
 
PPTX
What Is Data Integration and Transformation?
subhashenia
 
PPTX
apidays Helsinki & North 2025 - From Chaos to Clarity: Designing (AI-Ready) A...
apidays
 
PPTX
apidays Helsinki & North 2025 - Agentic AI: A Friend or Foe?, Merja Kajava (A...
apidays
 
PPTX
apidays Singapore 2025 - The Quest for the Greenest LLM , Jean Philippe Ehre...
apidays
 
PPTX
thid ppt defines the ich guridlens and gives the information about the ICH gu...
shaistabegum14
 
PPTX
apidays Helsinki & North 2025 - API access control strategies beyond JWT bear...
apidays
 
PDF
Driving Employee Engagement in a Hybrid World.pdf
Mia scott
 
PPTX
apidays Helsinki & North 2025 - Running a Successful API Program: Best Practi...
apidays
 
PDF
apidays Singapore 2025 - How APIs can make - or break - trust in your AI by S...
apidays
 
PDF
Technical-Report-GPS_GIS_RS-for-MSF-finalv2.pdf
KPycho
 
05_Jelle Baats_Tekst.pptx_AI_Barometer_Release_Event
FinTech Belgium
 
apidays Singapore 2025 - Trustworthy Generative AI: The Role of Observability...
apidays
 
01_Nico Vincent_Sailpeak.pptx_AI_Barometer_2025
FinTech Belgium
 
Optimizing Large Language Models with vLLM and Related Tools.pdf
Tamanna36
 
Feb 2021 Ransomware Recovery presentation.pptx
enginsayin1
 
Data Science Course Certificate by Sigma Software University
Stepan Kalika
 
03_Ariane BERCKMOES_Ethias.pptx_AIBarometer_release_event
FinTech Belgium
 
Using AI/ML for Space Biology Research
VICTOR MAESTRE RAMIREZ
 
apidays Singapore 2025 - From API Intelligence to API Governance by Harsha Ch...
apidays
 
Powerful Uses of Data Analytics You Should Know
subhashenia
 
What Is Data Integration and Transformation?
subhashenia
 
apidays Helsinki & North 2025 - From Chaos to Clarity: Designing (AI-Ready) A...
apidays
 
apidays Helsinki & North 2025 - Agentic AI: A Friend or Foe?, Merja Kajava (A...
apidays
 
apidays Singapore 2025 - The Quest for the Greenest LLM , Jean Philippe Ehre...
apidays
 
thid ppt defines the ich guridlens and gives the information about the ICH gu...
shaistabegum14
 
apidays Helsinki & North 2025 - API access control strategies beyond JWT bear...
apidays
 
Driving Employee Engagement in a Hybrid World.pdf
Mia scott
 
apidays Helsinki & North 2025 - Running a Successful API Program: Best Practi...
apidays
 
apidays Singapore 2025 - How APIs can make - or break - trust in your AI by S...
apidays
 
Technical-Report-GPS_GIS_RS-for-MSF-finalv2.pdf
KPycho
 

Product Update: EDB Postgres Platform 2017

  • 1. Product Update EDB Postgres Platform 2017 1 Advances in Postgres Set New Digital Business Standard: More Workloads, Larger Data Sets, and Greater Integration
  • 2. Agenda • An Overview of EDB Technologies • EDB Postgres Platform Update – Winter 2017 • EDB Postgres Advanced Server 9.6 • Backup and Recovery 2.0 • Replication Server 6.1
  • 4. EDB Postgres Platform Update – Winter 2017 EDB Postgres Advanced Server 9.6 • Migrate more applications from Oracle and support ISVs • Manage larger data sets • Faster analytic queries • Build more robust clustering, scale out & integration solutions • Improved monitoring Backup and Recovery 2.0 • Faster backups with block level incremental change capture Replication Server 6.1 • Updated support for Oracle 12c, SQL Server 2012 • Parallel replication for multi master improves performance with multiple active nodes
  • 5. Feature Highlights for Postgres Advanced Server 9.6 • DBMS_AQ Advance Queuing • Nested Sub-procedures • Partitioned Table performance enhancements • EDBLDR Enhancements • Oracle compatibility features PostgreSQL 9.6Postgres Advanced Server 9.6 • Parallel sequential scans, joins and aggregates • Elimination of repetitive scanning of old data by autovacuum • Synchronous replication support for multiple standby servers • Full-text search for phrases • Support for remote joins, sorts, and updates in postgres_fdw Focus on Security, Scalability, and Enterprise Readiness
  • 6. EDB: Oracle Compatible DBMS_AQ: • Business applications communicate with each other • Producer applications enqueue messages • Consumer applications dequeue messages • Implemented in database tables • Standard database features apply • Recovery • Restart • Security Advanced Queuing provides database-integrated message queuing functionality
  • 7. EDB: Oracle Compatible DBMS_AQ: • DBMS_AQADM.CREATE_QUEUE_TABLE: Creates a new queue table that can physically hold any number of queues. • DBMS_AQADM.CREATE_QUEUE: Creates a new queue in an existing queue table. • DBMS_AQADM.DROP_QUEUE: Drops an existing queue. • DBMS_AQADM.DROP_QUEUE_TABLE: Drops an existing queue table. • DBMS_AQADM.ALTER_QUEUE: Modifies an existing queue. • DBMS_AQADM.ALTER_QUEUE_TABLE: Modifies an existing queue table. • DBMS_AQADM.START_QUEUE: Enables enqueuing and/or dequeuing in an existing queue. • DBMS_AQADM.STOP_QUEUE: Disables enqueue and/or dequeue in existing queue. • DBMS_AQ.ENQUEUE: Posts a message to a queue. Messages can optionally be delayed, so that they are not available for dequeuing for a certain number of seconds. Messages can optionally have an expiry time limit, so that they will expire and move to the exception queue if they are not dequeued after a certain number of seconds. • DBMS_AQ.DEQUEUE: Retrieves a message from a queue if one is available, and optionally waits for one to become available. • DBMS_AQ.REGISTER: Registers a callback procedure that will be invoked in a background worker when messages are enqueued. • DBMS_AQ.UNREGISTER: Unregisters a callback procedure previously registered with REGISTER. Packages: DBMS_AQ and DBMS_AQADM
  • 8. Advantages of Advanced Queuing • Interactions are integrated with database transactions, so messages are only enqueued or dequeued if a transaction commits. • Simple asynchronous processing using background workers and any supported stored procedure language. • Queue operations can be used in triggers. • A system of retries and exception handling is integrated with database transactions. • No extra services/daemons required. • Messages are persistent and covered by existing backup procedures.
  • 9. EDB: Oracle Compatible Nested Sub Procedures • Defined in the declaration part of the enclosing procedure or function • Support for both Procedures and Functions • Procedures perform an action • Functions compute a value • Named PL/SQL blocks that can be called with a set of parameters • Starts with the PROCEDURE or FUNCTION key word “A named procedure defined and used inside another procedure or function”
  • 10. SQL> CREATE OR REPLACE PROCEDURE HR.DBA_WEEK AS 2 PROCEDURE DBA_TASK (day VARCHAR2) AS 3 BEGIN 4 IF day = 'MONDAY' THEN 5 DBMS_OUTPUT.PUT_LINE('Checking log files.'); 6 ELSIF day = 'FRIDAY' THEN 7 DBMS_OUTPUT.PUT_LINE('Rebuild indexes.'); 8 ELSE 9 DBMS_OUTPUT.PUT_LINE('Reading some papers.'); 10 END IF; 11 END; 12 BEGIN 13 DBA_TASK('MONDAY'); 14 DBA_TASK('TUESDAY'); 15 END; 16 / SQL> EXECUTE DBA_WEEK; Checking log files. Reading some papers. EDB: Oracle Compatible Nested Sub Procedures Simple Procedure Example Nested Sub Procedure Main Procedure
  • 11. EDB: Oracle Compatible Nested Sub Procedures Simple Function example SQL> CREATE OR REPLACE PROCEDURE SUM_TEST AS 2 FUNCTION MY_SUM(X NUMBER, Y NUMBER) 3 RETURN NUMBER AS 4 BEGIN 5 RETURN X + Y; 6 END; 7 BEGIN 8 DBMS_OUTPUT.PUT_LINE('3 + 5 = ' || 9 TO_CHAR(MY_SUM(3,5))); 10 DBMS_OUTPUT.PUT_LINE('5 + 3 = ' || 11 TO_CHAR(MY_SUM(5,3))); 12 END; 13 / SQL> EXECUTE SUM_TEST; 3 + 5 = 8 5 + 3 = 8 Nested Sub Function Main Procedure
  • 12. EDB Advanced Server: Compatibility with Oracle • EDBLDR compatibility with Oracle SQLLDR • Oracle Style Parallel Hints • OLD and NEW • Compatible “all_directories” View Additional features
  • 13. EDB Advanced Server: Compatibility with Oracle EDBLDR: • NULLIF • SELECT EXPRESSIONS • Datatype(length) • BOUNDFILLER • Column name in when clause Examples: • deptno POSITION(1:2) INTEGER EXTERNAL(2) NULLIF deptno=BLANKS, • job POSITION (15:23) "(SELECT dname FROM dept WHERE deptno = :deptno)” • RECORD_CODE BOUNDFILLER CHAR(3) • c1, field2 BOUNDFILLER, field3 BOUNDFILLER, c2 ":field2 || :field3” • WHEN (1:3) = “200” now WHEN EMPNO= “200” Additional features
  • 14. EDB Advanced Server: Performance Partitioning: • Fast Pruning for more datatypes (varchar, smallint) • Fast Pruning for Prepared Statements • Exchange Partition Improvements (compatible with Oracle behavior) Parallelism: • Parallel Clause within SPL Package Body (Parallel safe or unsafe) dblink: • Join pushdown • Sort pushdown Highlights
  • 15. PostgreSQL 9.6 Parallelism: • Sequential Scan • Nested Loops and Hash Joins • Aggregates • Group Locking Phase 1: • Better performance for read only transactions • Sequential scan, Aggregations, Hash Joins and Nested Loops can be parallelized • Parallel infrastructure: designate a group of processes whose locks will be mutually non-conflicting Highlights
  • 16. PostgreSQL 9.6 PostgreSQL FDW: • Join pushdown • DML pushdown • Sort pushdown • Sorted Joins pushdown • Push processing to the remote system to minimize I/O Highlights
  • 17. PostgreSQL 9.6 • Snapshot too old • Freeze Map • Reduce BLOAT when long running queries prevented VACUUM from running • New bit in the freeze map lets VACUUM skip frozen pages Highlights
  • 18. PostgreSQL 9.6 • Multiple Synchronous standbys • Full Text search for Phrases • Monitoring: • VACUUM Progress checker • pg_stat_activity improvements • Synchronous Replication now supports multiple standby servers • Support searching for Phrases (adjacent, distance) • Progress reporting for VACUUM operations • Waits for lightweight locks and buffer pins are now shown in pg_stat_activity (until now only heavyweight locks were) Highlights
  • 19. Backup and Recovery: BART 2.0 • Complete, hot, physical backups of multiple local or remote Postgres servers • Block level Incremental backup • Policy enforced management of files required for recovery • Store backup data in compressed formats • Verify backup data with MD5 checksum • Disk space awareness • Rich reporting to show backup time, size, WAL file information • Optional friendly name for backups Simplify and reduces errors with a system-wide catalog and command line tool that allows online backup and recovery across local and remote PostgreSQL and PPAS Servers.
  • 20. Block Level Incremental Backup Supported with Postgres 9.5+ • WAL from DB scanned using the XLogReader API. Basic concept - • WAL scanner runs in the background & identifies data that has changed and the location of the modified blocks. • BAR generates an MBM (Modified Block Map) file for each WAL that indicates which blocks have changed. • A harvester process creates a CBM (Consolidated Block Map) out of the MBMs and fetches modified blocks. • Restore process copies blocks from CBM to restored server. Incremental Backup decreases amount of time required for backup and minimizes the amount of storage required Postgres 9.5+ WAL Files BAR 1.2 1) WAL Scanner identifies modified blocks 2) Harvester collects modified blocks direct from DBServer 3) Restore process copies modified blocks from backup server. Drop or truncate actions result in file removal or truncation basebackup Modified blocks fetched via libpq
  • 21. Replication Solutions for Postgres Native Replication in Postgres EDB Replication Server Full database replication only Table based replication with row level filtering support Read only replicas with no multi master capabilities Options for read only or multi master No replication to non-Postgres sources Replicate to and from Oracle 10g, 11g, 12c* and SQL Server 2005, 2008, 2014* Minimal cross version replication Replication across PostgreSQL and EDB Postgres Advanced Server 9.1 to 9.6 * Updated in 6.1
  • 22. EDB Replication Server Highlights • Distributed Publication / Subscription Architecture • 6.1 updates support for Oracle 12c, SQL Server 2014 • Snapshot and continuous synchronization modes • 6.0 added Log Based replication from Postgres • 6.1 optimizes for parallel synchronization with multiple active nodes • Replicate one or more tables • 6.0 added pattern matching selection rules for easier to configure publication tables • Define and apply row filters • Flexible replication scheduler • Supports cascading replication • Replication History Viewer • Graphical Console and CLI
  • 23. Recap - EDB Postgres Platform Update – Winter 2017 EDB Postgres Advanced Server 9.6 • Migrate more applications from Oracle and support ISVs • Manage larger data sets • Faster analytic queries • Build more robust clustering, scale out & integration solutions • Improved monitoring Backup and Recovery 2.0 • Faster backups with block level incremental change capture Replication Server 6.1 • Updated support for Oracle 12c, SQL Server 2014 • Parallel replication for multi master improves performance with multiple active nodes
  • 25. 25

Editor's Notes

  • #21: The WAL scanner can run in the background as a dameon that scans each WAL that is sent to the BART system
  • #22: PostgreSQL offers what is called streaming replication. Streaming replication is available between the same version of Postgres and creates a copy of a master database cluster on a replica. This can be used for high availability in case of a failure of the master and to offload read queries for better performance. Each replica will have the exact same data set as the master. Streaming replication does not allow the replication of a subset of data. In many cases streaming replication is a viable and reliable solution. However, a failover will incur downtime. We offer EDB Postgres Failover Manager to detect failures and automate a failover to minimize this downtime. If your requirements in your high availability or replication solution are beyond this scope EDB offers EDB Postgres Replication Server.