70
PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. [email protected]

PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. [email protected]. Hello. ... • Performance

  • Upload
    others

  • View
    45

  • Download
    0

Embed Size (px)

Citation preview

Page 1: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

PostgreSQL for ServoyDevelopers

Christophe PettusPostgreSQL Experts, Inc.

[email protected]

Page 2: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Hello.

• Database Architect/DBA with PostgreSQL Experts, Inc.

• PostgreSQL user for 13 years.

• Servoy user for 3 years.

• Consultant with PostgreSQL Experts, Inc.

• http://pgexperts.com

Page 3: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Agenda

• A quick introduction to PostgreSQL.

• Orientation, not exhaustive.

• A little bit of database knowledge assumed.

• … but not too much.

Page 4: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

What’s on the Menu?

• A Little Bit of Background• Features Overview• Basic Configuration• Pitfalls and Gotchas• Performance• Maintenance, Monitoring and Tools• Advanced Features• The Community

Page 5: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Background

Page 6: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

So, What is PostgreSQL?

• Relational Database Management System

• Features ≥ to Commercial RDBMSes

• Emphasis on Data Integrity and Extensibility

• Open Source, BSD/MIT License

Page 7: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Quick History

• Derives from the 1986 POSTGRES project at UC Berkeley.

• Also the origin of Illustra, thence Informix.

• And thence Sybase, SQL Server.

• Open Source Since 1995.

Page 8: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Platforms

• Any *nix you can imagine

• Linux, FreeBSD, Solaris, etc.

• Windows

• Natively since 8.0

• Scales nicely from laptops to large clusters

Page 9: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

License

• BSD/MIT-style license

• Proprietary derivatives welcome

• Not owned by a single company

Page 10: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Packaged with Servoy

• Version 8.4.3 as of the latest download

• Installed in application_server/postgres_db

• Just Works

• Catch for multiple installs: listens on default port

Page 11: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

FeaturesOverview

Page 12: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

A Quick Spin Around the Elephant• PostgreSQL is the most feature-rich open

source database. Full stop.

• Focus on “big database” features

• High-rate OLTP, Data warehousing…

• Easily comparable with proprietary RDBMSes.

• Far more features than we can mention here.

Page 13: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

So, let’s look at…

• Data Integrity

• Security

• Multi-Version Concurrency Control

• Transactional DDL

Page 14: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

What Gets Committed, Stays Committed

• Community has an intense focus on data integrity.

• Not “the first car to the ten-car pileup”

• Near-bulletproof crash recovery.

• Only compromised by (major) hardware failures.

Page 15: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Putting the C in KConsistency.

• Data Integrity includes data quality.

• Sophisticated constraints.

• Single-Column

• Multi-Column

• Foreign-Key

• And more…

Page 16: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Transactional DDL

BEGIN;

DROP TABLE employee_compensation;

ROLLBACK;

Page 17: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Security

• Far and away the most secure open-source database.

• One (1) exploit in the last six years.

• Sophisticated users, roles, groups and permissions.

• Useful even with primitive web framework user management.

Page 18: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Multi-Version Concurrency Control

• Uses versioning and snapshots to isolate concurrent queries and updates.

• Queries see the state of the database at the start of the query or transaction.

• READ COMMITTED or SERIALIZABLE isolation levels.

Page 19: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

That Means…

• Readers don’t block writers.

• Writers don’t block readers (much).

• Writers only block writers if they are writing the same row/object.

Page 20: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

MVCC and You!

• PostgreSQL can handle many concurrent clients.

• Very little locking required for most applications.

• Transactions are not inherently expensive to open, commit or roll back.

Page 21: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Basic Configuration

Page 22: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

A Not-Uncommon Reaction:

196 CONFIGURATION PARAMETERS?WE’RE ALL GOING TO DIE!

Page 23: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Relax.

• For experimenting and basic development, apply straight out of the tin.

• 90% of all installations need to adjust <12 configuration parameters.

• Production use does require some parameter tweaking.

Page 24: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Why Tweak?

• The standard parameter values are very conservative.

• Like, “party like it’s 1999” conservative.

• Fine for development on your laptop.

• But you probably have more than 128MB in your production machine.

Page 25: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Memory-Related

• PostgreSQL expects the OS to do a lot of the heavy cache-lifting.

• Give PostgreSQL plenty of memory, but don’t overdo it.

• shared_buffers, work_mem, maintenance_work_mem

Page 26: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

shared_buffers

• PostgreSQL internal data cache

• Set to 1/4 to 1/3rd of total server memory

• Much over 16GB is usually a waste

• Remember, the OS is caching, too

• Make sure the OS can support the allocation.

Page 27: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

work_mem

• Controls memory used for sorts, joins, etc.

• The server can use many times more than the parameter value

• connections / (1-3 * available memory) is a good starting place

Page 28: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

maintenance_work_mem

• Controls the memory used for VACUUM and related.

• Available RAM / 8.

• Almost never makes sense to go over 2GB.

Page 29: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Integrity-Related

• Improve performance: checkpoint_segments, checkpoint_timeout, wal_buffers

• Accept some risk: synchronous_commit

• Pure madness: fsync

Page 30: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

WAL Background

• Write-Ahead Log of database activity.

• Continuous stream of data changes.

• A checkpoint is a point at which the in-memory changes have been flushed to the data pages

• A checkpoint is where recovery starts, if required.

Page 31: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

checkpoint_segments

• The WAL is written in segments of fixed size (by default, 16MB).

• A checkpoint is done every time “checkpoint_segments” segments have been written.

• Increasing improves performance, at the expense of recovery time.

• 16-128 is typical.

Page 32: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

checkpoint_timeout

• A checkpoint is automatically done each “checkpoint_timeout” seconds.

• Default is usually fine.

• Increase if you start seeing warnings in the logs.

Page 33: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

synchronous_commit

• PostgreSQL waits until all data is flushed before returning from a COMMIT.

• This parameter can defeat that.

• You can lose committed data with this “off.”

• You will not corrupt your database, however.

Page 34: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

fsync

• Do not turn this off.

• No, not for that reason.

• No, not for that reason either.

• Leave it on.

• Always.

• Yes, always.

Page 35: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Connection-Related

• max_connections

• If you are setting this to huge values (>200), it’s time to look into connection pooling.

• pgbouncer, pg_pool

Page 36: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Logging

• PostgreSQL can log just about any db activity.

• Pick a log level and log format that makes sense for your application.

• CSV is handy for analysis tools, such as

• pgFouine

Page 37: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Pitfalls & Gotchas

Page 38: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

SELECT COUNT(*);• PostgreSQL implements this as a full table

scan.

• So, don’t do that.

• Any qualification accelerates it appropriately.

• Does your application really need to do this all the time?

Page 39: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

VACUUM

• Required to find and remove “dead” tuples.

• That MVCC thing? Yeah, OK, it’s not free.

• autovacuum will usually take care of you.

• Manual VACUUM recommended after large data changes.

• Don’t forget to ANALYZE, too!

Page 40: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

In-Place Upgrade

• There isn’t any yet.

• Minor versions (9.0 to 9.0.1) don’t require dump/reload.

• Don’t stick with back versions for this reason alone. Plan for this.

Page 41: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Spec Compliance

• More serious than most databases.

• Even commercial ones.

• Some bad habits may not carry over.

• Some flexibilities may be missing.

• Consider it a personal growth opportunity.

Page 42: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Performance

Page 43: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

PostgreSQL Performance

• Hardware Choices and Configuration

• Way beyond the scope of this talk

• Schema & App Design

• Connection Management

Page 44: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Schema & App Design

• Transactions are cheap.

• Do not fear joins.

• Do not denormalize unless you know you need to.

• Use indexes, but only when they help.

• Wide rows and BLOBs can be slow.

Page 45: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Connection Management• Connections are not free.

• Establishing a connection is definitely not free.

• Use pooling unless you have relatively few clients.

• Look for bad connection situations.

• <IDLE>, <IDLE IN TRANSACTION>

Page 46: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Query Analysis

• ANALYZE

• EXPLAIN, EXPLAIN ANALYZE

• Check for missing indexes

• Check for unused indexes

• http://it.toolbox.com/blogs/database-soup/finding-useless-indexes-28796

Page 47: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Maintenance, Monitoring and Tools.

Page 48: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Low-Maintenance

• Low-growth systems can run on automatic.

• Multi-year uptime (except for version upgrades) entirely possible.

• A little bit of setup goes a long way.

Page 49: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Basics

• VACUUM & ANALYZE regularly

• autovacuum will usually take care of you.

• Rotate and process logs.

• Look for errors and pathological queries.

Page 50: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Backups

• What is not backed up, you do not truly possess.

• pgdump: Hot full backup.

• WAL log shipping / Warm Standby

• Enables point-in-time recovery

• Hot Standby introduced in 9.0!

Page 51: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Development Tools

• psql

• pgAdmin

• phpPgAdmin

Page 52: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Monitoring

• Connection usage.

• Disk usage.

• Pathological queries.

• check_postgres

• pgFouine

Page 53: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

AdvancedFeatures

Page 54: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Extensible

• Data Types

• Indexes

• Operators

• Functions / Triggers

• Languages

Page 55: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Out of the Box…

• PL/pgSQL

• PL/Tcl

• PL/Perl

• PL/Python

Page 56: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Or Define Your Own.CREATE FUNCTION LOL_MAIN_TEST(TEXT)RETURNS BOOLEANLANGUAGE PLLOLCODEAS $$HAI VISIBLE INFO LOL1 FOUND YR WINKTHXBYE$$;

SELECT LOL_MAIN_TEST('IM IN YR DATABUKKIT');

Page 57: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Full-Text Search

• In the PostgreSQL Core

• Multiple languages

• Dictionary / stemming / tokenizing all customizable

• Fully integrated with the database

Page 58: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Other Extensions

• Cryptography

• Hierarchical Data Storage

• Inter-Database Communication

• Check out the contrib/ directory; it rocks.

Page 59: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

PostGIS

• Open-Source Geographic Information System.

• http://postgis.refractions.net/

Page 60: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Replication

• As of 9.0, hot standby!

• Read-only slaves.

• Third-party solutions for master/slave replication.

• Slony

Page 61: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

The Community

Page 62: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Elephants are Everywhere.• World-wide community of developers and

users.

• Not company-centric.

• Extremely supportive.

• Intense focus on the quality of PostgreSQL.

• Strong meritocratic culture.

Page 63: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Mailing Lists

• Very active developer and user lists.

• Listen, contribute, do some research first.

• http://www.postgresql.org/community/lists/

Page 64: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

IRC

• #postgresql on irc.freenode.net

• Language-specific channels, too.

• http://www.postgresql.org/community/irc

Page 65: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Conferences

• Dedicated PostgreSQL conferences world-wide.

• Strong presence at other open-source events, too.

Page 66: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Commercial Support

• Many commercial support organizations.

• http://www.postgresql.org/support/

• Allow me to recommend PGExperts, Inc.

• Proprietary versions and extensions to PostgreSQL, too.

Page 67: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Questions?

Page 69: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

• Cartoons by Chris Lowrance

• http://chrislowrance.net

• Presentation available for download at:

• http://thebuild.com

Page 70: PostgreSQL for Servoy Developers - The Build · PostgreSQL for Servoy Developers Christophe Pettus PostgreSQL Experts, Inc. christophe.pettus@pgexperts.com. Hello. ... • Performance

Thank you!

Christophe PettusPostgreSQL Experts, Inc.

[email protected]