FireflyPGConf.EU 20132013-10-292013-11-014https://www.postgresql.eu/events/pgconfeu2013/schedule/08:3000:30OtherRegistrationhttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/542/09:0008:00DodderPostgreSQL indexingIndexing is a core feature of every database system and it is essential to speed up queries.
However, indexing is a lot more than just looking up a value in a binary tree. PostgreSQL
provides various types of indexes offering you a variety of additional functionality such as
full text indexing, fault tolerant text search or geometric search.
During this course you will learn how to make full use of PostgreSQL indexing and you will
get to know indexing strategies tailored to your needs (via PostgreSQL operator classes, etc.)
In addition to that you will find out, when the optimizer decides to use an index and in which
cases it is wise, not to use an index.
Topics:
* Types of indexes (btree, gist, gin, hash, sp-gist)
* Binary search via btree
* Bitmap scans
* The PostgreSQL cost model and indexing
* Functional indexes
* Indexing LIKE and regular expressions
* Using operator classes (btree_gist, pg_trgm, etc.)
* Full text search
* A hand-tailored indexing strategyhttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/428/Hans-Jürgen Schönig09:0003:30DarglePostgreSQL & PostGISUsing PostGIS with PostgreSQL, covering from introductory to examples
advanced usage. Topics include data loading, mapping with QuantumGIS
and using GIST and SP-GIST to improve performance.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/429/Gianni Ciolli09:0003:30LiffeyPostgreSQL Performance TuningThis talk is designed for advanced PostgreSQL users who want to know how to maximize PostgreSQL performance. It covers every aspect of performance: server settings, caching, sizing operating system resources, optimizer processing, problem queries, storage efficiency, and some hardware selection details. It includes how to size shared memory, how to understand the output of the optimizer, when to restructure queries, and how to configure storage for optimal performance.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/431/Bruce Momjian12:3001:00OtherLunchhttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/544/13:3003:30DargleWriting & using Postgres ExtensionsWhat extensions are available? Where do you get them from?
How to write Extensions, including portability, multi-version compatibility and controls.
Includes discussion of new 9.3 feature background workers.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/430/Dimitri Fontaine13:3003:30LiffeyData Processing Inside PostgreSQLThis talk is best for those who are are familiar with databases and SQL, but want to learn how to move processing from their applications into the database to improve consistency, administration, and performance. Topics covered include advanced SQL features like referential integrity constraints, ANSI joins, views, rules, and triggers. The presentation also explains how to create server-side functions, operators, and custom data types in PostgreSQLhttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/432/Bruce Momjian08:3001:00OtherRegistrationhttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/543/09:3000:15EarlsfortWelcome and openingWelcome and openinghttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/536/Magnus Hagander09:4501:00EarlsfortKeynote: Handling the Spotlight: How PostgreSQL can become the database of choiceOnce reviled by the great powers of the proprietary technology world, Open Source has gone from 'geeky cult' to near World Domination, and is now rapidly conquering Government IT.
And why shouldn't it? Open Source Advocates have long held out the prospect of benefiting society as a whole, and of effecting positive change in Education, Government and even Liberal Democracy itself through the power of the Open Source vision.
But how do we realise this change? How do we talk with influencers and decision-makers in such a way that they understand and promote the software we love?
Is promoting a project like PostgreSQL different to, say, Firefox or LibreOffice in fundamental ways that we need to recognise?
In his talk, Mark will use the real story of the remarkable conversion of the UK Government to promoter of Open Source, Open Standards and Open Data to illustrate these points and more. And with your help to create a new conversation for change in bringing PostgreSQL to the fore with Governments across Europe and the World.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/565/Mark Taylor10:4500:25OtherCoffeehttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/545/11:1000:50EarlsfortWhat's New in PostgreSQL 9.3Postgres 9.3 has (hopefully) recently been released, and we've got some interesting things to play with. Join us in this overview of new features coming in Postgres 9.3, and see what goodies it has in store for you.
There's a ton of stuff lined up for Postgres 9.3, and this is the place to get your first look. We may or may not talk about exciting things like:
performance improvement and memory changes
improved array support
event triggers
lateral support
background workers
and much much more.
https://www.postgresql.eu/events/pgconfeu2013/schedule/session/500/Robert Treat11:1000:50LeesonPostgreSQL for Rails<b>Plea for database driven software in the enviroment of technical engineering.</b>
Axleboxes (the package of wheels and axes) of railway wagons and locomotives have to proof their performance according to the norm DIN EN 12082.
They are only allowed to be mounted, after they passed the required long running ( >600 000 km) approval tests on a test rig.
Lots of parameters have to be controlled, monitored and evaluated in a quite complex way. During the test, all maesurements, calculations and evaluations have to be available online.
This talk is about our database driven software solution. It treats the following topics:
<ul>
<li> Explanation of the application and specification of the required tests.</li>
<li> Database structure, mirroring the technical demands</li>
<li> Dataflow inside the database, giving all the required calculations and evaluations.</li>
<li> Implementation of the dataflow by triggers, procedures and views.
<li>Benefits of a database driven software.</li>
</ul>
Using PostgreSQL as a smart database system - instead of a simple persistanace layer behind an ORM - simplifies software development and makes the application more reliable.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/452/Roland Sonnenschein11:1000:50PembrokeWriting a user-defined datatypeWalk-through of extending PostgreSQL with a user-defined type. The journey begins from the basics, from creating simple domain types over existing types, and continues to implementing a full-blown datatype from scratch in C.
PostgreSQL's advanced index types, GiST, GIN, and SP-GiST, are covered in enough detail to give an understanding of what each of them is good for. Support functions for each of them are shown for the example 'color' datatype.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/465/Heikki Linnakangas12:1000:50EarlsfortPostgreSQL - One of the most important Open Source projectsFor every company the central database system is one of the most important and business critical pieces of software. PostgreSQL has grown into this space in recent years and replaces well know proprietary systems more and more often. It not only fulfills the technical requirements, but also the operations requirements which makes it a strategical choice for a lot of companies, be it for internal IT or one of the database systems of choice that are supported by their own product. All the technical features needed are available nowadays.
https://www.postgresql.eu/events/pgconfeu2013/schedule/session/403/Michael Meskes12:1000:50LeesonIntroduction of pg_statsinfo and pg_stats_reporter ~Statistics Reporting Tool for DBA~How do you analyze the database performance and sign of trouble database? PostgreSQL provides many useful statistcs and DB activities via system views and cotrib modules. But it is difficult to understand detail information and see all of the database condition. Pg_statsinfo and pg_stats_reporter which were made by NTT Corporation are statistics reporting tools as open source software for DBA. They provide more useful statistics information and visual reporting. In this session, I introduce architecture, installation and use case about these tools.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/412/Mitsumasa KONDO12:1000:50PembrokeLATERAL querying in 9.3; keep up with the new features!In this talk we describe LATERAL subqueries, introduced in 9.3,
seeking answers to following questions:
* What is LATERAL?
* Why it is an improvement?
* Does it make queries easier to read?
* How can LATERAL help us?
* Does LATERAL affect performance?
https://www.postgresql.eu/events/pgconfeu2013/schedule/session/488/Gianni Ciolli13:0001:00OtherLunchhttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/546/14:0000:50EarlsfortGoing spatial with PostGIS and moreGeo is everywhere. Smartphones, GPS, crowdsourced maps, LIDAR and many other ways of gathering geo-located data have made the spatial component of usual data a mandatory part of most applications.
PostgreSQL lets you leverage the power of geo-enabled applications, primarily through PostGIS, but also by using some other extensions and features of the database.
This presentations will introduce you to spatial data management, and show you some spatial data processing for various use case.
PostGIS 2.1 has been released mid-2013 and offers many features and new enhancements.
Raster in database is one of the long-awaited features present in version 2.1. Topology is also a complete set of features to deal with a new way of storing geometry information. Data management functions, geometry functions... A lot of new functions has been added to what was already available in the 1.5 series.
Real 3D GIS is now part of PostGIS, and a first set of functions lets you manipulate buildings, terrain and other 3D objects.
PointCloud is another PostgreSQL extension, dedicated to huge point clouds as LIDAR data or smartphones can produce. In association with PostGIS, it is a very powerful tool to efficiently deal with this specific kind of data.
PosgreSQL new features can also be used for spatial data processing : JSON and hstore are among the features we can benefit from.
https://www.postgresql.eu/events/pgconfeu2013/schedule/session/459/Hugo Mercier14:0000:50LeesonWriting a foreign data wrapperThis talk will cover experiences from writing a FDW for Informix and will discuss differences between 9.1 and 9.2, as well as the new writable API with the upcoming 9.3 release, additionally data type mapping and conversion, optimizer support and performance related topics.
The talk tries to give the attendees an overall idea behind the techniques and pitfalls they may experience when they want to write their own.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/485/Bernd Helmle14:0000:50PembrokeDetecting performance bottlenecksIf your database setup feels somewhat slow, it is your task to detect bottlenecks and bring the system back to speed.
Missing indexes, bad memory configurations, stupid queries - all of those things can be responsible for bad behavior.
PostgreSQL provides you with all the information to quickly detect performance issues and to fix them. This session present some of the most common bottlenecks and show a way out of disaster.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/425/Hans-Jürgen Schönig14:5000:30OtherTeahttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/547/15:2000:50LeesonSuccess stories on migrating from Sybase ASE to PostgreSQLWe are going to speak about two successful migrations of business critical Databases from Sybase ASE to PostgreSQL.
The talk explains two different approches of migrating data, distinguished by efford and downtime.
Finally we'd like to speak about the benefits from a 'one year after' point of view.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/451/Achim EiseleJens Wilke15:2000:50EarlsfortNulls Make Things Easier?Nulls are a very useful but also very error-prone relational database feature. This talk is designed to help applications developers better manage their use of nulls. It covers the use of nulls in relational databases, with a focus on Postgres behaviour. It covers three-value logic, comparing nulls, mapping nulls to strings, indexing nulls, and aggregates. https://www.postgresql.eu/events/pgconfeu2013/schedule/session/417/Bruce Momjian15:2000:50PembrokeExplaining the Index of PostgreSQL IndexesPostgreSQL comes built-in with a variety of indexes, some of which are further extensible to build powerful new indexing schemes. But what are all these index types? What are some of the special features of these indexes? What are the size & performance tradeoffs? How do I know which ones are appropriate for my application?
Fortunately, this talk aims to answer all of these questions as we explore the whole family of PostgreSQL indexes: B-tree, expression, GiST (of all flavors), GIN and how they are used in theory and practice.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/406/Jonathan S. Katz16:2000:50EarlsfortPostgreSQL Disaster Recovery with BarmanAre you tired of managing backup and recovery processes of your Postgres server using custom scripts?
Are you worried about being called in the night or worse whilst on holiday to perform a recovery operation of your company's business critical PostgreSQL server?
**Barman, Backup and Recovery Manager**, standardises backup and recovery operations, allowing database administrators and system administrators to easily integrate their PostgreSQL solutions in their *disaster recovery plan*.
Barman is distributed as open source under GNU GPL 3 terms.
Further information available at [www.pgbarman.org](http://www.pgbarman.org/).https://www.postgresql.eu/events/pgconfeu2013/schedule/session/453/Gabriele Bartolini16:2000:50LeesonMulticorn: writing Foreign Data Wrappers in pythonMulticorn is a generic Foreign Data Wrapper which goal is to simplify development of FDWs by writing them in Python.
We will see:
- what is an FDW
- what Multicorn is trying to solve
- how to use it, with a brief tour of the FDWs shipping with Multicorn.
- how to write your own FDW in python, including the new 9.3 write API
- the internals: what Multicorn is doing for you behind the scenes, and what it doesn'thttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/492/Ronan Dunklau16:2000:50PembrokeConduct change from Oracle to PostgreSQLHow large companies and governmental organization in France did the move from Oracle to PostgreSQL. What were the pros and cons of such a move, and in which context it happened.
Such migrations is not only about money, even tough its part of the deal. Each of those entities had to conduct a change. There are technical issues, but those weren't the biggest ones. Knowledge, organization and other human aspects were much bigger issues... One has to be open-minded to succeed completely.
About the technical part of this talk, as I guess it can't be all about methods and blah-blah, we'll cover latests releases of Ora2Pg, developed by Gilles Darold at Dalibo. It handles now a usefull estimation module: it scans every object in the database and gives an estimation in man-days for the migration. It's now part of the process to estimate a total cost of change. We'll show some usefull examples for the audience.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/504/Jean-Paul Argudo09:3000:50PembrokepgBadger v.4YAY! pgBadger will be in v.4 during autumn 2013.
This talk will cover this useful tool, released in 2012. Already 4 versions...
pgBadger will have then with this new version a bootstrap interface, designed by pros and sponsored by Dalibo.
This version of pgBadger is now completely exploitable and shows the results an easiest way. Thanks to bootstrap, it's also compatible on lots of devices, including mobiles ones.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/505/Jean-Paul Argudo09:3000:50LeesonGotcha! Finer points of the postgres query planner and how to use them in your queriesThe topic of the talk will be to discuss lesser known points of the query planner where one can squeeze performance in their queries, such as subquery to join conversions etc. The talk shall also focus on the shortcomings of the query planner and how to avoid them, and where they are unavoidable. This shall also lead in to discussion about the future of the query planner, and how it can be further improved.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/455/Atri Sharma09:3000:50EarlsfortTaking advantage of custom background workersSimilar to the existing extensions, hooks and foreign data wrappers, custom background workers is module infrastructure newly-added in PostgreSQL 9.3 allowing to create plug-ins for the server core in the shape of a process controlled by the PostgreSQL server and running custom code. https://www.postgresql.eu/events/pgconfeu2013/schedule/session/410/Michael Paquier10:2000:30OtherCoffeehttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/548/10:5000:50PembrokeBusiness Intelligence & PerformancePostgreSQL's use in Business Intelligence is growing. This talk discusses the features we already have, together with benchmark analysis. In addition we look at features in active development for 9.4 and beyond, including features as part of the European funded project AXLE.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/516/Simon Riggs10:5000:50EarlsfortDoing PITR Right - There's more than just replicationIs your data important? If so, it needs to be backed up and by far the best way to do that is with Point-in-Time Recovery. This talk will cover the current 'state of the art' regarding PostgreSQL backup, restore, and PITR. We'll bring a database up, throw some data into it, back it up, add some more data, delete some data, then show how to restore up to the point before the data was deleted.
In this talk, we'll also cover how PostgreSQL writes out data and how that stream allows us to create a backup which can be used to go back to any point in time during the database's operation. Understanding this is critical to any production database because when you need to do a restore, you don't want to go back to yesterday's backup and lose all the work that happened today!
https://www.postgresql.eu/events/pgconfeu2013/schedule/session/441/Stephen Frost10:5000:50LeesonMaterialised views now and the futureMaterialised views are now in available in PostgreSQL as of version 9.3, but there are some limitations. This talk will explain what they can be used for, where the current limitations lie, and improvements users can expect to see in 9.4 and beyond.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/498/Thom Brown11:5000:50PembrokeConcurrency in PostgresPostgreSQL implements some fairly involved rules to ensure correct behavior in the face of concurrent activity. Multi-version concurrency control prevents readers from blocking writers and writers from blocking readers, but even without the pessimistic locking of some systems, locking issues abound in many Postgres client applications. These problems are considerably ameliorated by improvements made in Postgres 9.3, where locks acquired when enforcing foreign keys are more granular, making deadlocks far less frequent and lock waits shorter, while still ensuring correct behavior.
Postgres hasn’t always been the most user-friendly when it comes to exposing this information, and allowing users to act upon it to fix performance problems. Getting the most pertinent information about how to fix problems is tricky, and is the subject of ongoing work on the core system.
This talk gives an overview of:
* How Postgres implements the various isolation levels described by the SQL standard, and the visibility rules and exact set of guarantees made by each level.
* The various locks that Postgres acquires on tables, indexes, rows and transactions, and even query predicates, and how all of this fits together with the isolation modes.
* Other ways in which the isolation modes handle conflict resolution.
* How Postgres locks can be represented as a tree, with cascading lock dependencies, and how this information can be interpreted to find backends that block other backends without being blocked themselves (the “real offenders”) using a recursive SQL query.
* Common scenarios in which race condition bugs can be inadvertently added to applications, and how you can avoid them.
* How to write queries to avoid locking issues such as deadlocks.
* New improvements to foreign key locking added to Postgres 9.3, and what they mean for your application.
How to implement UPSERT (i.e. atomic insert-or-update) correctly, in the absence of core functionality to take care of this for you.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/491/Peter Geoghegan11:5000:50LeesonFederation with Foreign Data WrappersDisqus runs the comments section on 75% of the world's web sites. To
handle this volume of data, we use many different data storage and
motion technologies including Memcached, Cassandra, Redis, Storm, and
of course PostgreSQL at the center. Find out how we're federating all
this and what for with foreign data wrappers.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/493/David Fetter11:5000:50EarlsfortPostgres what they really useRunning the largest fleet of Postgres instances in the world we have a lot of requests from users. We have even more data around what users do. We have websites large and small running on our platform including a top 100 website within the US. We'll take a look at some broader characteristics such as:
* Distribution of datasizes
* What extensions get used, i.e. is hstore really a thing people take advantage of
* Frequent problems users encounter
* Anecdotal data around most desired upcoming features/developments (which foreign data wrapper is the most requested)
This talk will be heavily data driven and reveal some actual numbers and distributions on usage. Only in places where hard data is entirely unavailable will more summaries be given.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/483/Craig Kerstiens12:4001:00OtherLunchhttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/549/13:4000:50PembrokeNext generation of GINThis talk presents set of advances which significantly improves GIN index. Their primary target is to make full-text search (FTS) in PostgreSQL to be as fast as it's in stand-alone solutions such as Sphinx and Solr. However it has many other applications.
The set of advances is following:
* Compression of item pointers in index
* Store additional information in posting trees and posting lists
* Fast scan: skip parts of posting trees during scan
* Sorting result in index
These advances in GIN leads to following benefits to GIN indexes:
* Indexes will become about 2 time smaller without any work in opclass.
* Usage of additional information for filtering enables new features for GIN opclasses: better phrase search, better array similarity search, inverse FTS search (search for tsqueries matching tsvector), inverse regex search (search for regexes matching string), better string similarity using positioned n-grams.
* Fast scan dramatically GIN search in "frequest_term & rare_term" case.
* Usage of additional information for sorting in index accelerates ranking in FTS and dramatically reduces its IO.
We present the results of benchmarks for FTS using several datasets (6 M and 15 M documents) and real-life load for PostgreSQL and Sphinx full-text search engines and demonstrate that improved PostgreSQL FTS (with all ACID overhead) outperforms the standalone Sphinx search engine.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/476/Alexander KorotkovOleg Bartunov13:4000:50EarlsfortIndexes: The neglected performance all-rounderProper indexing is a very time and cost-effective way to improve performance. Yet it is often done in a very sloppy way. This talk explains the organizational misconceptions that lead to sloppy indexing and gives advice how to change it. Finally we will show the results of a short online quiz that reveals the state of indexing know-how in the field.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/402/Markus Winand13:4000:50LeesonSwitching Horses Overnight - a Software Manufacturer's View on Replacing an Existing Database Management System with PostgreSQLsynedra IT produces a clinical archive system which uses a relational database system for metadata management. Over 50 systems are currently installed and productive. The OLTP database often contains more than 100 Million rows and is critical for data integrity, availability and performance of the whole system.
Replacing an existing Oracle database system with PostgreSQL is challenging on several levels: The switch itself has to be performed reliably and with minimal downtime. All system components must operate smoothly and with high performance with the new database after the switch. Technical support must quickly adopt the new system to ensure service delivery and the ability to react in case of problems. Finally, the switch should be somehow beneficial from a customer and business point of view.
While the whole task was by no means trivial it was delivered successfully and the transition went surprisingly well in many aspects. Interesting insights could be gained on data migration, SQL dialects, the effects of a database engine on seemingly unrelated coding and PostgreSQL specific performance and tuning.
We would therefore like to relate some preparations, experiences and anecdotes from our journey that might or might not be instructive and uplifiting for the inclined audience.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/484/Robert LichtenbergerStefan Andreatta14:4000:50PembrokeVisualizing PostgresPostgres comes with several introspection tools out of the box. Some are easier to understand than others, but they are all useful. Recent improvements in 9.2's pg_stat_statements make it even easier gain insights into the performance of your application.
This talk will explore the history of data visualization and information display to build a strong foundation. Then take a dive into the built-in postgres tools tools, and what it takes to combine them to provide real-time visualizations of the health your database.
Other topics will include
- What metrics are the most valuable and how to use them
- A deep dive into example application for realtime postgres visibility
- Storage of postgres statistics
- Tools for time series visualization
https://www.postgresql.eu/events/pgconfeu2013/schedule/session/523/Will Leinweber14:4000:50EarlsfortMigrating from MySQL to PostgreSQLA presentation of some tooling I'm building to take care of all the boring steps of the migration in a single easy and fast step: schema, handling types and default values, auto-increment and sequences, data, constraints, indexes.
That feature set actually works already, only missing is a little glue and a user language to drive the tool, and that's in good progress already. The tool would definitely be ready for a full demo at the conference.
Obviously the tool licence of choice is "The PostgreSQL Licence". Actually it's part of the new version of pgloader.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/464/Dimitri Fontaine14:4000:50LeesonMy experience with embedding PostgreSQL At my current company, we embed PostgreSQL based technologies in various applications shipped as shrink-wrapped software. In this session we talk about the experience of embedding PostgreSQL where it is not directly exposed to end-user and the issues encountered on how they were resolved.
We will talk about business reasons,technical architecture of deployments, upgrades, security processes on how to work with embedded PostgreSQL databases. https://www.postgresql.eu/events/pgconfeu2013/schedule/session/510/Jignesh Shah15:3000:30OtherTeahttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/550/16:0000:50EarlsfortLightning talksLightning Talks - the high intensity part of conference which only uses 5 minutes of attention span at a time.
The rules for Lightning Talks are easy: you can talk about anything, but not longer than 5 minutes. The audience really prefers the talks to be related to PostgreSQL (the worlds most advanced OpenSource Database, the project, the community, the conference, the ecosystem)
To optimally prepare for your awesome Lightning Talk: give your presentation as HTML, OpenOffice, PDF, PPT or Prezi to Harald Armin Massa hours before the scheduled time. If you cannot do that, please make sure your laptop/tablet/mobilephone is able to communicate with the projector, especially that you have all necessary adapters and Jobs-plugs and you have the correct drivers, settings and licences.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/537/Harald Armin Massa09:3000:50PembrokeAgile Oracle to PostgreSQL migrationsMigrating an Oracle database to Postgres is never an automated operation. And it rarely (never?) involve just the database.
Experience brought us to develop an agile methodology for the migration process, involving schema migration, data import, migration of procedures and queries up to the generation of unit tests for QA.
Pitfalls, technologies and main migration opportunities will be outlined, focusing on the reduction of total costs of ownership and management of a database solution in the middle-long term (without reducing quality and business continuity requirements).https://www.postgresql.eu/events/pgconfeu2013/schedule/session/502/Gabriele Bartolini09:3000:50EarlsfortEpic fails in the RDBMS worldEntertainment is important in this speech - or should i say infotainment? The serious subjects of placing products on the ACID-continuum and the (dis)advantages of breaking RDBMS principles are illustrated by firsthand horror-stories from my 12+ years as a DBA. When will things break when you rub against the RDBMS-framework, such as choosing a wrong data-type, inserting several values in one column, the EAV model or disabling referential integrity are told with rolling eyes anecdotes. What are the dangers of not knowing the RDBMS rules?
Although there will be references to Postgresql functionality and parameters, the lessons from this fun speech are applicable to all RDBMS.
This speech will be accompanied with a reader with further examples.
"A wise man learns from the mistake of others. A fool of his own."https://www.postgresql.eu/events/pgconfeu2013/schedule/session/474/Willem Leenen09:3000:50LeesonPagination done the PostgreSQL wayFetching results in a page-wise manner is still a very common requirement—even when using an ‘infinite scrolling’ user interface. This session explains how to use one of PostgreSQL’s unique capabilities to implement these queries in a way that outperforms the traditional LIMIT/OFFSET approach.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/401/Markus Winand10:2000:30OtherCoffeehttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/551/10:5000:50EarlsfortUsing Postgres FDW w/ a sharded PostgreSQL DatabasePostgreSQL 9.3 will be the first PG major release to include an in-core Foreign Data Wrapper for talking to other PostgreSQL databases- and it supports *writing* to those databases through the FDW. This talk will discuss how to set up and use the Postgres FDW with a 32-way sharded PostgreSQL database and go over pros, cons, and limitations.
Once you've gone beyond being able to (reasonably) acquire single-image (single-system) hardware for your master server, it's time to shift to a sharded database- but how do you manage and deal with all of those shards? We'll talk about how you can use the Postgres FDW to bring all those shards back together- where it works and where it doesn't, and discuss the possible future for the Postgres FDW and how it might be changed to work better.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/440/Stephen Frost10:5000:50LeesonPostgres from Vision to Reality, ABNAMRO Client caseClient Case.
Implementation of a new reporting system on Postgres. Postgres was chosen above Oracle. Oracle was the standard for many years in the organisation with very high standards The Postgres environment had to match the Oracle standards.
Project started with Oracle, was later converted during implementation to Postgres.
Characteristics:
24X7 Availability
Very Large database
Performance very important
Implementation
OS Clustering
Streaming Replication
Backup & recovery
Monitoring
Partitioned tables
This presentation explains how the project is implemented. What problems where encountered during implementation and how the customer was convinced that the project could make a success.
https://www.postgresql.eu/events/pgconfeu2013/schedule/session/519/Rob Sijmons10:5000:50PembrokeUseful PostgreSQL Extensions -- the extensions behind the scenesPostgreSQL tarball comes with a bunch of extensions (a.k.a. contrib modules) -- but are they the only ones?
Of course, not.
There are lots of other extensions around, which are very useful in lots of areas.
This talk will mention about those extensions, their usage patterns with some examples.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/489/Devrim Gündüz11:5000:50EarlsfortPostgres versus an anonymous database from RedwoodPostgres is often compared with Oracle but how does it really stack up?
In some ways Postgres is much more comfortable to use but in other areas Oracle has dedicated enormous efforts to solving real-world problems that Postgres doesn't have a good answer for.
Understanding how does Open Source projects prioritize work differently from a large company with customers to please can explain some of these differences.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/508/Gregory Stark11:5000:50LeesonPostgreSQL Backups, the good the bad and the uglyA discussion of the various backup techniques available to PostgreSQL including pg_dump, pg_dumpall, pg_basebackup and system utilities. Includes information on creating your own backup scripts and detailed information on best practices usage for each utility.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/522/Joshua D. Drake11:5000:50PembrokeBinary storage for nested data structures and application to hstore data type.We present a binary storage for nested data structures with arrays support and its application to nested hstore. We consider this storage as a step forward true json data type.
Recently, PostgreSQL got json data type, which basically is a string storage with validity checking for stored values and some related functions. To be a real data type, it has to have a binary representation, development of which could be a big project if started from scratch. Hstore is a popular data type, we developed years ago to facilitate working with semi-structured data in PostgreSQL. It is mature and widely used data type with indexing support. Our idea is to implement a binary storage for nested data structures with array support and use it to develop nested hstore data type as well as for json. The prototype was presented at PGCon-2013 and it proves the benefit of using such storage for hstore both in performance and functionality. Now we present an improved storage with types support, which makes possible to use it as storage layer for json. Also, we show, that hstore can get a great performance gain (an order of magnitude) from new GIN fast scan algorithm.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/490/Oleg Bartunov12:4001:00OtherLunchhttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/552/13:4000:50PembrokeWiretapping the Wire Protocol: automatic data visualization for psql with Cartographer and FEMEBEWhile psql is a great ad-hoc query tool and offers a very useful admin interface, command line tools have some inherent shortcomings, especially in terms of data visualization. However, pure GUI tools have to start from scratch to provide a fluid keyboard-driven interface, and many end up with a frustrating, sub-par experience.
Cartographer explores the idea of mitigating these issues by providing simple, automated data visualization of the results of psql queries. Your interaction with the database is still through psql, but at any point, you can switch to a separate window listening in on your session. From there, you'll see an automatic chart for your latest result set (when appropriate), your query history, and other data visualization options (as fitting).
This talk will then discuss the more general idea of shimming in at the protocol level to build Postgres tools, with Cartographer as an example. The Postgres wire protocol is well documented and fairly straightforward, and the Go FEMEBE library makes it easy to build proxies and other similar tools.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/497/Maciek Sakrejda13:4000:50LeesonElephants in fashionPostgreSQL plays a crucial role in our infrastructure, storing everything from customer information to article data, finding it's way even in our real-time warehouse management systems. Starting from version 9.0 we have been using every release of PostgreSQL in production and still loving it.
We want to share how we deploy, monitor and use PostgreSQL databases to power the biggest fashion e-commerce platform in Europe.
Among the challenges, we are going to talk about are:
- controlling and monitoring more than 100 database instances in several data centers;
- running our databases with minimal downtimes;
- managing hundreds of database changes done by hundreds of developers every week.
https://www.postgresql.eu/events/pgconfeu2013/schedule/session/512/Valentine Gogichashvili13:4000:50EarlsfortHierarchies Without MastersIn this talk we describe Narugn, a lightweight distributed computer.
Narugn is implemented on PostgreSQL by an SQL extension (about 30 KB)
which requires PL/Proxy.
The resulting cluster of PostgreSQL databases is heterogeneous,
elastic, resilient, connected by small networks, and there are no
privileged nodes.
Narugn provides a framework to implement distributed algorithms, where
capacity (either storage or CPU) can easily be pooled together. It
implements a small number of core functions, which allow propagation
of more sophisticated user-space code.
Two user-space applications are presented:
1. integer factorisation involving large prime numbers, to demonstrate
a simple CPU-intensive tasks;
2. distributed large hierarchies (trees), to demonstrate storage
pooling.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/486/Gianni Ciolli14:3000:30OtherTeahttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/553/15:0000:20EarlsfortPostgreSQL FuturesEach year we look forwards to the new features emerging in PostgreSQL in the next release and beyond. We look at features for developers, for architects and for administrators. We use insights derived from voting, expert users and from expert analysts in the cloud, large server and other environments. Go Postgres!https://www.postgresql.eu/events/pgconfeu2013/schedule/session/517/Simon Riggs15:2500:20EarlsfortPostgreSQL in 5 years - Expectations from the market placePostgreSQL has had a tremendously successful trajectory in recent
years, and we've all read the news to that effect. But there's another
side to the PostgreSQL success story, and that is the mounting
expectations on its future road map. The analysts are weighing in
with their predictions on the future of database technology.
In-memory, key-value, cloud, mobile, database appliances...the
database landscape is rapidly evolving. In this keynote, Tom
Kincaid, Vice President of Products and Engineering at EnterpriseDB,
will share research from several industry analysts about the future of
database technology, along with his own opinions of how PostgreSQL
should adapt to this changing eco-system of NoSQL, NewSQL and
traditional RDBMS.https://www.postgresql.eu/events/pgconfeu2013/schedule/session/525/Keith Alsheimer15:5000:40EarlsfortClosingClosing sessionhttps://www.postgresql.eu/events/pgconfeu2013/schedule/session/535/Dave PageMagnus Hagander