pgcopydb v0.18 đź”—
Hot off the press: pgcopydb v0.18 is out! It’s the biggest release the project has had — 88 commits since v0.17, which shipped in August 2024. I took [...]
a collection of dev rss feeds - blogroll
Posts
Hot off the press: pgcopydb v0.18 is out! It’s the biggest release the project has had — 88 commits since v0.17, which shipped in August 2024. I took [...]
Dimitri, picture by Oleg Bartunov I am a PostgreSQL developer, author, and open-source builder based near Paris. Most of what I have done professional [...]
High-Availability comes with some impact on your architecture choices, in particular when applied to RDBMS such as Postgres. One such impact is the id [...]
We just released pg_auto_failover version 1.6.3 on GitHub, and the binary packages should be already available at the usual PGDG and CitusData places, [...]
The MACI French podcast honoured me with an invitation to a guest appearance on their weekly schedule. As you can imagine, we talked about many things [...]
In this PodCast Episode we talk about newsworthy items selected by the MACI team, and then about some of my work such as my book The Art of PostgreSQL [...]
Among a lot of other changes, the year 2020 brings Online Conferences to us. In the Postgres community too we now record our talks at home and send a [...]
In this interview we dive in my book The Art of PostgreSQL and then in the High Availability and automated failover solution that I work on, pg_auto_f [...]
Postgres has extensions, and that’s awesome! Of course as the author of CREATE EXTENSION I’m a little biased… just remember that the ability to extend [...]
As a developer using PostgreSQL one of the most important tasks you have to deal with is modeling the database schema for your application. In order t [...]
PostgreSQL connection strings embedded in your application can take two different forms: the key-value notation or the postgresql:// URI scheme. When [...]
I did it again! Today I am releasing the new edition of my book, with a new title: “The Art of PostgreSQL”. I’m very happy (and quite excited) to decl [...]
PostgreSQL is the World’s Most Advanced Open Source Relational Database and by the end of this talk you will understand what that means for you, an ap [...]
As a developer using PostgreSQL one of the most important tasks you have to deal with is modeling the database schema for your application. In order t [...]
Le domaine des bases de données se transforme depuis quelques années, avec en particulier de nouvelles offres autour des notions de NoSQL… Au point qu [...]
An SQL Injection is a security breach, one made famous by the Exploits of a Mom xkcd comic episode in which we read about little Bobby Tables: Post [...]
As a developer using PostgreSQL one of the most important tasks you have to deal with is modeling the database schema for your application. In order t [...]
Python is often used to maintain application backends. When the backend should implement user oriented workflows, it may rely on a RDBMS component to [...]
We have loaded Open Street Map points of interests in the article The Most Popular Pub Names — which compares PostgreSQL with MongoDB for simple geogr [...]
PostgreSQL is a relational database management system. It’s even the world’s most advanced open source one of them. As such, as its core, Postgres sol [...]
A previous article in the PostgreSQL Concurrency series covered how to manage concurrent retweets in an efficient way: in Computing and Caching, we le [...]
This article fits in the PostgreSQL Concurrency series, where we installed a tweeter like application schema and had all the characters from Shakespea [...]
This article fits in the PostgreSQL Concurrency series, where we installed a tweeter like application schema and had all the characters from Shakespea [...]
In the previous article of the series Modeling for Concurrency, we saw how to model your application for highly concurrent activity. It was a follow-u [...]
Let’s continue to dive in PostgreSQL Concurrency. In the previous article of the series, Modeling for Concurrency, we saw how to model your applicatio [...]
Let’s continue to dive in PostgreSQL Concurrency. Last week’s article PostgreSQL Concurrency: Isolation and Locking was a primer on PostgreSQL isolati [...]
PostgreSQL is a relational database management system. It’s even the world’s most advanced open source one of them. As such, as its core, Postgres sol [...]
PostgreSQL is a relational database management system. It’s even the world’s most advanced open source one of them. As such, as its core, Postgres sol [...]
Today it’s time to conclude our series of PostgreSQL Data Types articles with a recap. The series cover lots of core PostgreSQL data types and shows h [...]
Le domaine des bases de données se transforme depuis quelques années, avec en particulier de nouvelles offres autour des notions de NoSQL… Au point qu [...]
Continuing our series of PostgreSQL Data Types today we’re going to introduce the PostgreSQL Point type. In order to put the Point datatype in a conte [...]
Continuing our series of PostgreSQL Data Types today we’re going to introduce the PostgreSQL ENUM type. This data type has been added to PostgreSQL in [...]
Continuing our series of PostgreSQL Data Types today we’re going to introduce the PostgreSQL JSON type. PostgreSQL has built-in support for JSON with [...]
Continuing our series of PostgreSQL Data Types today we’re going to introduce the PostgreSQL XML type. The SQL standard includes a SQL/XML which intro [...]
Continuing our series of PostgreSQL Data Types today we’re going to introduce the PostgreSQL array data types. Arrays can be used to denormalize data [...]
Continuing our series of PostgreSQL Data Types today we’re going to introduce the PostgreSQL ranges data type. Range types are a unique feature of Pos [...]
Continuing our series of PostgreSQL Data Types today we’re going to introduce network address types. PostgreSQL includes support for both cidr, inet, [...]
Continuing our series of PostgreSQL Data Types today we’re going to introduce date and time based processing functions. Once the application’s data, o [...]
Continuing our series of PostgreSQL Data Types today we’re going to introduce some of the PostgreSQL text processing functions. There’s a very rich se [...]
Continuing our series of PostgreSQL Data Types today we’re going to introduce the PostgreSQL text data type. The first notion to understand when proce [...]
Today, we’re going to begin a dive into the PostgreSQL Data Types. As my colleague Will Leinweber said recently in his talk Constraints: a Developer’s [...]
PostgreSQL is the world’s most advanced open source database, and per the PostgreSQL Wikipedia page it is an object-relational database management sys [...]
As a developer using PostgreSQL one of the most important tasks you have to deal with is modeling the database schema for your application. In order t [...]
In our previous article we saw three classic Database Modelization Anti-Patterns. The article also contains a reference to a Primary Key section of my [...]
Next week we see two awesome PostgreSQL conferences in Europe, back to back, with a day in between just so that people may attend both! In chronologic [...]
Current trend in software deployments is to rely on open source software for entire production stacks. You can find open source software in the core t [...]
Today I want to react to an article that claims that Relational Algebra Is the Root of SQL Problems in which the author hand-waves the following posit [...]
In another article here, entitled on JSON and SQL, we saw in great details how to import a data set only available as a giant JSON file. Then we norma [...]
It seems to be usual nowadays to review the previous year, and readers apparently like Top-N Lists — that’s you now, so let’s hope that my understandi [...]
You might have read it in the news already in Citus’ blog post by Sumedh Pathak: PostgreSQL Expert Dimitri Fontaine joins Citus Data. I am very happy [...]
After having been involved in many migration projects over the last 10 years, I decided to publish the following White Paper in order to share my lear [...]
pgDay Paris 4th edition happens March 15, 2018! And the Call for Papers is still open, as it closes with the year: the submission deadline is December [...]
PostgreSQL ships with an interactive console with the command line tool named psql. It can be used both for scripting and interactive usage and is mor [...]
Florent Fourcot has read Mastering PostgreSQL in Application Development and has seen tremendous inprovements in his production setup from reading the [...]
The Enterprise Edition of Mastering PostgreSQL in Application Development ships with a docker image that hosts both a PostgreSQL server instance with [...]
The PostgreSQL community made the explicit choice some times ago that they would not use the infamous master and slave terminology. Instead, the docum [...]
Today I am very pleased to announce the release of the book Scaling Python from my good friend Julien Danjou! As Julien says, Python applications can [...]
In How to Write SQL we saw how to write SQL queries as separate .sql files, and we learnt about using query parameters with the psql syntax for that ( [...]
In our article Exploring a Data Set in SQL we discovered a data set related to music: the Chinook sample database. Our discovery led us to find albums [...]
Now that my book Mastering PostgreSQL in Application Development is released (and selling well, thanks guys!), I’ve had some questions about the title [...]
Today is the day my book Mastering PostgreSQL in Application Development launches! I’m all excited that everybody interested is now able to actually r [...]
pgloader, your migration companion Migrating data from another RDBMS to PostgreSQL should be really easy. After all it’s all relations and tables an [...]
PostgreSQL 10 is now available for everyone to use, and hinted by David Fetter I had to review my previous article on Json and SQL to adapt to Set Ret [...]
PostgreSQL has had proper json support for a while now. The unique extensibility approach of the PostgreSQL system allows it to enable native SQL frie [...]
Mastering PostgreSQL in Application Development is the full title of the book I am currently writing. Running the PostgreSQL is YeSQL series of blog p [...]
There’s a very rich set of PostgreSQL functions to process text, you can find them all at the String Functions and Operators documentation chapter, wi [...]
In a previous article here we saw How to Write SQL in your application code. The main idea in that article is to maintain your queries in separate SQL [...]
Today pgloader v3.4.1 is released and available! This new release comes with 110 commits as show in github compare view. This release of pgloader is f [...]
The reason why I like Unicode a lot is because it allows me to code in text based environments and still have nice output. Today, we’re going to play [...]
The modern calendar is a trap for the young engineer’s mind. We deal with the calendar on a daily basis and until exposed to its insanity it’s rather [...]
Business logic is supposed to be the part of the application where you deal with customer or user facing decisions and computations. It is often argue [...]
Sometimes you need to dive in an existing data set that you know very little about. Let’s say we’ve been lucky to have had a high level description of [...]
Kris Jenkins cooked up a very nice way to embed SQL in your code: YeSQL for Clojure. The main idea is that you should be writing your SQL queries in . [...]
A recent interview question that I had to review was spelled like this: Find missing int element into array 1..100 Of course at first read I got it wr [...]
I am writing a book to share my knowledge about how to best use PostgreSQL as an application developer. If you’ve evered ask yourself how much should [...]
PostgreSQL Conference US took place in New York City and I had the pleasure to be a speaker there. I presented there a talk about why You’d Better Hav [...]
You’d better have tested backups explains why you must implement an automated recovery solution rather than merely backup scripts. Noboday cares about [...]
I had the pleasure to be invited to speak at All Your Base Conference 2015 about PostgreSQL (of course). The conference gathers together lots of user [...]
The database landscape has changed a lot in the recent years. The NoSQL movement has taken the world by storm and you may wonder if there is still roo [...]
J’ai eu le plaisir de présenter PostgreSQL au Java User Group de Montpellier le 20 mai dernier dans le cadre d’une soirée PostgreSQL is YeSQL. L’accue [...]
PostgreSQL Extensions is a tutorial that shows how to solve some real use cases with a practical use of Extension. The PostgreSQL is YeSQL! presentati [...]
Common Lisp users are very happy to use Quicklisp when it comes to downloading and maintaining dependencies between their own code and the librairies [...]
Le 21 avril prochain se tient le premier pgDay Paris: une conférence PostgreSQL d’une journée complète. Il s’agit de 8 conférences sur votre base de d [...]
The PostgreSQL for Developers talk begins with a simple use case for developers to solve entirely in SQL. Discover SQL window functions if you don’t k [...]
I was lucky to participate as a speaker to the Nordic PostgreSQL Day 2015 and it’s been another awesome edition of the conference. Really smooth, ever [...]
The FOSDEM 2015 edition has been awesome this year, the usual mix of meeting with old friends, talking about interesting topics, seeing tremendous act [...]
Backups are not interesting. Don’t make backups. Instead, set-up an all automatic data restoring facility, that you can use in nightly scripts or inte [...]
Thanks to the Postgres Weekly issue #89 and a post to Hacker News front page (see Pgloader: A High-speed PostgreSQL Swiss Army Knife, Written in Lisp [...]
PostgreSQL comes with an awesome bulk copy protocol and tooling best known as the COPY and \copy commands. Being a transactional system, PostgreSQL CO [...]
You’d better have tested backups explains why you must implement an automated recovery solution rather than merely backup scripts. Noboday cares about [...]
Mercredi 8 octobre se tiendra le prochain Meetup PostgreSQL à Paris dans les locaux de Mozilla Europe, dont la capacité est de 90 personnes ! Venez no [...]
A ligthning talk about pgcharts, a tool to turn your SQL queries into charts, and share the result. The PostgreSQL for Developers talk begins with a s [...]
En juin dernier se tenait le PHP Tour 2014 à Lyon, où j’ai eu le plaisir de présenter une conférence sur PostgreSQL en 2014. [...]
Next month, Postgres Open 2014 is happening in Chicago, and I’ll have the pleasure to host a tutorial about PostgreSQL Extensions Writing & Using Post [...]
Earlier this year we did compare compare Aggregating NBA data, PostgreSQL vs MongoDB then talked about PostgreSQL, Aggregates and histograms where we [...]
A lightning talk about pgLoader and the wide range of input formats it accepts, from CSV to advanced database migration from MS SQL or MySQL to Postgr [...]
En début de semaine se tenait le PHP Tour 2014 à Lyon, et j’ai eu le privilège d’y être invité afin de présenter comment Utiliser PostgreSQL en 2014. [...]
Une présentation des particularités de PostgreSQL, et pourquoi ce système de gestion de bases de données relationnelles reste d’actualité quand on fai [...]
Ce mois-ci est particulièrement actif en terme de conférences françaises, puisqu’après un détour à Toulon pour les PGDay.fr nous avons un Meetup à Par [...]
Une présentation de pgloader, utilitaire de chargement de données qui prend égalemment en charge des migrations complètes depuis MySQL ou encore MS SQ [...]
pgloader loads data into PostgreSQL. The new version is stable enough nowadays that it’s soon to be released, the last piece of the 3.1.0 puzzle being [...]
A lightning talk about pgloader and why I chose to rewrite it enterily, switching from Python to Common Lisp. TL;DR — I wanted a Modern Programming La [...]
A couple of week ago I had the chance to participate into the PGConf NYC 2014 Conference, one of the biggest conferences about PostgreSQL worldwide. I [...]
Hier soir se déroulait le troisième Meetup PostgreSQL à Paris, et je crois pouvoir dire que tous les participants étaient ravis de cette édition. Malh [...]
The PostgreSQL for Developers talk begins with a simple use case for developers to solve entirely in SQL. Discover SQL window functions if you don’t k [...]
Last week some PostgreSQL users, contributors and advocates have organized a really great conference in Stockholm, Sweden, where I had the please to g [...]
PostgreSQL is YeSQL! is a presentation that targets developers and show some advanced SQL everybody should be familiar with… but usually aren’t. [...]
In our previous article Aggregating NBA data, PostgreSQL vs MongoDB we spent time comparing the pretty new MongoDB Aggregation Framework with the deca [...]
When reading the article Crunching 30 Years of NBA Data with MongoDB Aggregation I coulnd’t help but think that we’ve been enjoying aggregates in SQL [...]
Back from the FODESM 2014 Conference, here’s the slides I’ve been using for the Advanced Extension Use Cases talk I gave, based on the ongoing work to [...]
This talk is about Advanced Uses Cases for PostgreSQL Extensions. It shows how to use extensions to solve practical problems such as geolocation or te [...]
This year again the PostgreSQL community is organising a FOSDEM PGDay rigth before the main event. Have a look at the PostgreSQL FOSDEM Schedule, it’s [...]
Notre première rencontre des utilisateurs Parisiens de PostgreSQL avait eu lieue le 28 novembre 2013 et a fait l’objet d’un billet de présentation ici [...]
The code of El-Get has been pretty stable for a long time now. About the whole set of patches against the 4.x series has been about bug fixing corner [...]
Comme annoncé dans un mail sur la liste de diffusion pgsql-fr-generale j’ai le plaisir de démarrer un groupe de rencontres PostgreSQL à Paris ! Les dé [...]
A long time ago we talked about how to Import fixed width data with pgloader, following up on other stories still online at Postgres OnLine Journal an [...]
As presented at the PostgreSQL Conference Europe the new version of pgloader is now able to fully migrate a MySQL database, including discovering the [...]
Last week I had the pleasure to present two talks at the awesome PostgreSQL Conference Europe. The first one was actually a tutorial about Writing & u [...]
The first talk covers migrating from MySQL to PostgreSQL in a single command line thanks to pgloader, your migration companion. The second talk is a 3 [...]
In our Tour of Extensions today’s article is about advanced tag indexing. We have a great data collection to play with and our goal today is to be abl [...]
At the Open World Forum two weeks ago I had the pleasure to meet with Colin Charles. We had a nice talk about the current state of both MariaDB and Po [...]
PostgreSQL is an all round impressive Relational DataBase Management System which implements the SQL standard (see the very useful reference page Comp [...]
Last Friday I had the chance to be speaking at the Open World Forum in the NewSQL track, where we had lots of interest and excitement around the NoSQL [...]
Une présentation qui montre que PostgreSQL est déjà web-scale, avec un rappel de l’histoire du projet et quelques exemples pratiques montrant des cas [...]
In our previous article about Loading Geolocation Data, we did load some data into PostgreSQL and saw the quite noticable impact of a user transformat [...]
As I’ve been mentionning in the past already, I’m currently rewriting pgloader from scratch in Common Lisp. In terms of technical debt that’s akin to [...]
Have you heard about the Open World Forum conference that takes place in Paris, October 3-5, 2013? I’ll be presenting a talk about PostgreSQL in the t [...]
The following story is only interesting to read if you like it when bad things happen, or if you don’t have a trustworthy backup policy in place. By t [...]
In our ongoing Tour of Extensions we played with earth distance in How far is the nearest pub? then with hstore in a series about trigger, first to ge [...]
In a previous article about Trigger Parameters we have been using the extension hstore in order to compute some extra field in our records, where the [...]
Sometimes you want to compute values automatically at INSERT time, like for example a duration column out of a start and an end column, both timestamp [...]
There was SQL before window functions and SQL after window functions: that’s how powerful this tool is. Being that of a deal breaker unfortunately mea [...]
About the only time when I will accept to work with MySQL is when you need help to migrate away from it because you decided to move to PostgreSQL inst [...]
In our recent article about The Most Popular Pub Names we did have a look at how to find the pubs nearby, but didn’t compute the distance in between t [...]
In his article titled The Most Popular Pub Names Ross Lawley did show us how to perform some quite interesting geographic queries against MongoDB, usi [...]
After spending an awesome week in San Francisco, CA I’m lucky enough to be spending another week in the USA, in Portand, OR. The main excuse for showi [...]
The migration of a complex system and architecture from MySQL and Java to PostgreSQL and PHP, with plenty details about the context and the trade-offs [...]
The PostgreSQL for Developers talk begins with a simple use case for developers to solve entirely in SQL. Discover SQL window functions if you don’t k [...]
Those days feel really lucky to me. I’m currently visiting friends and customers in San Francisco, and really enjoying my trip here! Of course Josh Be [...]
A presentation of Skytools version 3, the replication toolset from Skype that includes Londiste and PGQ. [...]
Last week was held the CHAR(13) conference in a great venue in the UK countryside. Not only did we discover UK under good weather conditions and some [...]
This blog of mine is written in the very good Emacs Muse format, that I find much more friendly to writing articles than both org-mode and markdown-mo [...]
In a recent article here we’ve been talking about how do do Batch Updates in a very efficient way, using the Writable CTE features available in Postgr [...]
In a recent article Craig Kerstiens from Heroku did demo the really useful crosstab extension. That function allows you to pivot a table so that you c [...]
Recently I’ve been to some more conferences and didn’t take the time to blog about them, even though I really did have great fun over there. So I felt [...]
Tonight I had the pleasure to present a talk at the Dublin PostgreSQL User Group using remote technologies. The talk is about how to make the most ouf [...]
Une conférence qui s’attache aux usages de PostgreSQL avec de très gros volumes de données, intitulée Vers le PetaByte avec PostgreSQL. [...]
Last week came with two bank holidays in a row, and I took the opportunity to design a command language for pgloader. While doing that, I unexpectedly [...]
In this article, we want to find the town with the greatest number of inhabitants near a given location. A very localized example We first need to fin [...]
Yes it did happen, for real, in London: the Emacs Conference. It was easter week-end. Yet the conference managed to have more than 60 people meet toge [...]
An history of el-get, the Emacs library that helps you to manage the external elisp bits and pieces upon which you depend! [...]
Hier se tenait la cinquième édition de la conférence organisée par dalibo, où des intervenants extérieurs sont régulièrement invités. Le thème hier ét [...]
Une présentation en français qui traite des performances avec PostgreSQL, er rappelle la loi d’Amdahl dans le contexte des performances de requêtes SQ [...]
In the previous article here we talked about how to properly update more than one row at a time, under the title Batch Update. We did consider perform [...]
Performance consulting involves some tricks that you have to teach over and over again. One of them is that SQL tends to be so much better at dealing [...]
The Emacs Conference is happening, it’s real, and it will take place at the end of this month in London. Check it out, and register at Emacs Conferenc [...]
In the article from yesterday we talked about PostgreSQL HyperLogLog with some details. The real magic of that extension has been skimmed over though, [...]
If you’ve been following along at home the newer statistics developments, you might have heard about this new State of The Art Cardinality Estimation [...]
While making progress with both Event Triggers and Extension Templates, I needed to make a little break. My current keeping sane mental exercise seems [...]
I’ve discovered recently another Emacs facility that I since then use several times a day, and I wonder how I did without it before: C-M-SPC runs the [...]
Some skytools related new today, it’s been a while. For those who where at my FOSDEM’s talk about Implementing High Availability you might have heard [...]
This year’s FOSDEM has been a great edition, in particular the FOSDEM PGDAY 2013 was a great way to begin a 3 days marathon of talking about PostgreSQ [...]
The first talk is a presentation of PostgreSQL High-Availability solutions, with different Architectures presented in their context. All the Architect [...]
The previous article FOSDEM 2013 said to be careful with the PostgreSQL devroom schedule because one of my talks there might get swapped with a slot o [...]
This year again I’m going to FOSDEM, and to the extra special PostgreSQL FOSDEM day. It will be the first time that I’m going to be at the event for t [...]
pgloader is a tool to help loading data into PostgreSQL, adding some error management to the COPY command. COPY is the fast way of loading data into P [...]
Another day, another migration from MySQL to PostgreSQL… or at least that’s how it feels sometimes. This time again I’ve been using some quite old scr [...]
Thanks to Mickael on twitter I got to read an article about loosing scope with some common programming languages. As the blog article Lost in scope re [...]
In a recent article titled Inline Extensions we detailed the problem of how to distribute an extension’s package to a remote server without having acc [...]
We’ve been having the CREATE EXTENSION feature in PostgreSQL for a couple of releases now, so let’s talk about how to go from here. The first goal of [...]
I’ve been asked about how to integrate the ack tool (you know, the one that is better than grep) into Emacs today. Again. And I just realized that I d [...]
A while ago I stumbled upon Happy Numbers as explained in programming praxis, and offered an implementation of them in SQL and in Emacs Lisp. Yeah, I [...]
Following some tweet I found myself desultory watching an episode of the awesome VimGolf in Emacs video series by Tim Visher. Those series are about p [...]
It’s hard to read my blog yet not know I’m using Emacs. It really is a great tool and has a lot to compare to PostgreSQL in terms of extensibility, do [...]
Thanks to Mickael on twitter I ran into that article about implementing a very basic Hello World! program as a way to get into a new concurrent langua [...]
As Guillaume says, we’ve been enjoying a great evening conference in Lyon 2 days ago, presenting PostgreSQL to developers. He did the first hour prese [...]
The PostgreSQL for Developers talk begins with a simple use case for developers to solve entirely in SQL. Discover SQL window functions if you don’t k [...]
Last week was PostgreSQL Conference Europe 2012 in Prague, and it’s been awesome. Many thanks to the organisers who did manage to host a very smooth c [...]
The first talk is about a PostgreSQL Migration (from MySQL) of the Fotolog web site with 32 millions of users, 1 billion photos and 10 billion comment [...]
It’s been a long time since I last had some time to spend on the prefix PostgreSQL extension and its prefix_range data type. With PostgreSQL 9.2 out, [...]
I’ve been given a nice puzzle that I think is a good blog article opportunity, as it involves some thinking and window functions. [...]
The talk is about a PostgreSQL Migration (from MySQL) of the Fotolog web site with 32 millions of users, 1 billion photos and 10 billion comments on t [...]
PostgreSQL 9.2 is released! It’s an awesome new release that I urge you to consider trying and adopting, an upgrade from even 9.1 should be very well [...]
Please welcome the new stable version of El-Get, the much awaited version 4.1 has now been branched for your pleasure. It’s packed with lots of featur [...]
I stumbled onto an interesting article about performance when using python, called Python performance the easy(ish) way, where the author tries to get [...]
The PostgreSQL community host a number of conferences all over the year, and the next ones I’m lucky enough to get to are approaching fast now. First, [...]
Peter Norvig published a while ago a very nice article titled Solving Every Sudoku Puzzle wherein he presents a programmatic approach to solving that [...]
The french PostgreSQL Conference, pgday.fr, was yesterday in Lyon. We had a very good time and a great schedule with a single track packed with 7 talk [...]
Présentation des différentes options afin d’implémenter Disponibilité et Durabilité avec PostgreSQL. Les différentes Architectures possibles en 2012 e [...]
A friend of mine just asked me for advice to tweak some Emacs features, and I think that’s really typical of using Emacs: rather than getting used to [...]
Last week was the annual PostgreSQL Hackers gathering in Canada, thanks to the awesome pgcon conference. This year’s issue has been packed with good t [...]
The talk is about a PostgreSQL Migration (from MySQL) of a the Fotolog web site with 32 millions of users, 1 billion photos and 10 billion comments on [...]
Now that you’re all using the wonders of Cooperative Consumers to help you efficiently and reliably implement your business constraints and offload th [...]
While working a new PostgreSQL architecture for an high scale project that used to be in the top 10 of internet popular web sites (in terms of visitor [...]
PostgreSQL 9.1 includes proper extension support, as you might well know if you ever read this very blog here. Some hosting facilities are playing wit [...]
J’ai eu la chance hier soir de participer à la Battle Language à la Marmite, où j’avais proposé de parler de Emacs Lisp, proposition qui s’est transfo [...]
It seems that if you search for a munin plugin for pgbouncer it’s easy enough to reach an old page of mine with an old version of my plugin, and a bro [...]
La conférence européenne à Amsterdam était un très bon évènement de la communauté, avec une organisation impeccable dans un hôtel accueillant. J’ai eu [...]
Another great conference took place last week, PostgreSQL Conference Europe 2011 was in Amsterdam and plenty of us PostgreSQL geeks were too. I attend [...]
Extensions are good for Business Logic addresses how to package and deploy your own PostgreSQL Extension to production, and implement business logic i [...]
I’ve been asked about my opinion on backup strategy and best practices, and it so happens that I have some kind of an opinion on the matter. I tend to [...]
La conférence PostgreSQL annuelle en Europe a lieu la semaine prochaine à Amsterdam, et j’espère que vous avez déjà vos billets, car cette édition s’a [...]
In the news recently stored procedures where used as an excuse for moving away logic from the database layer to application layer, and to migrate away [...]
The next PostgreSQL conference is approaching very fast now, I hope you have your ticket already: it’s a very promissing event! If you want some help [...]
Dans moins d’un mois se tient la conférence européenne PostgreSQL, pgconf.eu. Il s’agit de quatre jours consacrés à votre SGBD préféré, où vous pourre [...]
Let’s begin the Skytools 3 documentation effort, which is long overdue. The code is waiting for you over at github, and is stable and working. Why is [...]
The el-get project releases its new stable version, 3.1. This new release fixes bugs, add a host of new recipes (we have 420 of them and counting) and [...]
PostgreSQL 9.1 est dans les bacs ! Vous n’avez pas encore cette nouvelle version en production ? Pas encore évalué pourquoi vous devriez envisager de [...]
Nous avons parlé la dernière fois les règles d' échappement de chaînes avec PostgreSQL, et mentionné qu’utiliser ces techniques afin de protéger les d [...]
After talking about it for a very long time, work finally did begin! I’m talking about the apt.postgresql.org build system that will allow us, in the [...]
On the PostgreSQL Hackers mailing lists, Andrew Dunstan just proposed some new options for pg_dump and pg_restore to ease our lives. One of the answer [...]
You can find skytools3 in debian experimental already, it’s in release candidate status. What’s missing is the documentation, so here’s an idea: I’m g [...]
As of pretty recently, pgfincore is now in debian, as you can see on its postgresql-9.0-pgfincore page. The reason why it entered the debian archives [...]
Parmis les nouveautés de la prochaine version de PostgreSQL, la fameuse 9.1, il faut signaler le changement de valeur par défaut de la variable standa [...]
From the first days of el-get is was quite clear for me that we would reach a point where users would want a nice listing including descriptions of th [...]
En reprenant le contenu des articles de la série sur pgloader, j’ai pris le temps de compiler un tutoriel complet, en anglais. Si j’en crois les quelq [...]
To finish up the pgloader series, I’ve compiled all the information into a single page, the long awaited pgloader tutorial. That should help lots of u [...]
Dans la série de nos articles sur pgloader, l’article du jour décrit comment insérer des valeurs constantes (absentes du fichier de données) pendant l [...]
The previous articles in the pgloader series detailed How To Use PgLoader then How to Setup pgloader, then what to expect from a parallel pgloader set [...]
Using Emacs we get to manage a larger and larger setup file (either ~/.emacs or ~/.emacs.d/init.el), sometime with lots of dependencies, and some sub- [...]
Back to our series about pgloader. The previous articles detailed How To Use PgLoader then How to Setup pgloader, then what to expect from a parallel [...]
Dans la série de nos articles sur pgloader, le dernier venu détaille comment utiliser la fonction de reformatage de cet outil. Dans le cadre d’utilisa [...]
Tsung is an open-source multi-protocol distributed load testing tool and a mature project. It’s been available for about 10 years and is built with th [...]
This article continues the series that began with How To Use PgLoader then detailed How to Setup pgloader. We have some more fine points to talk about [...]
Dans la série des articles sur pgloader, nous détaillons cette fois la configuration du paraléllisme de chargement des données. Une fois de plus, je v [...]
Je viens de publier un billet en anglais intitulé How to Setup pgloader, qui complète l’écriture en cours d’un tutoriel pgloader plus complet. Une foi [...]
In a previous article we detailed how to use pgloader, let’s now see how to write the pgloader.conf that instructs pgloader about what to do. [...]
Emacs comes with a pretty good implementation of a terminal emulator, M-x term. Well not that good actually, but given what I use it for, it’s just wh [...]
When you do partition your tables monthly, then comes the question of when to create next partitions. I tend to create them just the week before next [...]
C’est une question qui revient régulièrement, et à laquelle je pensais avoir apporté une réponse satisfaisante avec les exemples pgloader. Ce document [...]
This question about pgloader usage coms in quite frequently, and I think the examples README goes a long way in answering it. It’s not exactly a tutor [...]
I stumbled upon the following cheat sheet for Emacs yesterday, and it’s worth sharing. I already learnt or discovered again some nice default chords, [...]
La conférence CHAR(11) étant maintenant terminée, il est d’usage de publier les slides utilisés. J’ai présenté Skytools 3.0 dont la prochaine version [...]
In case you’re wondering, here are the slides from the CHAR(11) talk I gave, about Skytools 3.0, soon to be released. That means as soon as I have eno [...]
A breadcrumb is a navigation aid. I just added one to this website, so that it gets easier to browse from any article to its local and parents indexes [...]
Quelle meilleure occupation dans le train du retour de CHAR(11) que de se faire reporteur pour l’occasion ? En réalité, dormir serait une idée tant le [...]
CHAR(11) finished somewhen in the night leading to today, if you consider the social events to be part of it, which I definitely do. This conference h [...]
A presentation of Skytools 3, the third major version of the replication and load-balancing solution from Skype. This covers both Londiste and PGQ. [...]
Most of you are probably reading my posts directly in their RSS reader tools (mine is gnus thanks to the Gwene service), so you probably missed it, bu [...]
La semaine prochaine déjà se tient CHAR(11), la conférence spécialisée sur le Clustering, la Haute Disponibilité et la Réplication avec PostgreSQL. C’ [...]
We still have this problem to solve with extensions and their packaging. How to best organize things so that your extension is compatible with before [...]
In this blog article, you’re shown a quite long function that loop through your buffers to find out if any of them is associated with a file whose ful [...]
While Magnus is all about PG Conf EU already, you have to realize we’re just landed back from PG Con in Ottawa. My next stop in the annual conferences [...]
We’ve spotted a little too late for our own taste a discrepancy in the source tree: a work in progress patch landed in git just before to release el-g [...]
Current el-get status is stable, ready for daily use and packed with extra features that make life easier. There are some more things we could do, as [...]
A talk about the then ongoing effort to implement support for Extensions in PostgreSQL. My patch was committed in 9.1 and is the basis for the create [...]
It’s this time of the year again, the main international PostgreSQL Conference is next week in Ottawa, Canada. If previous years are any indication, t [...]
If you’ve not been following along, you might have missed it: it appears to me that even today, in 2011, mail systems work much better when setup the [...]
Let’s say you need to ALTER TABLE foo ALTER COLUMN bar TYPE bigint;, and PostgreSQL is helpfully telling you that no you can’t because such and such v [...]
While currently too busy at work to deliver much Open Source contributions, let’s debunk an old habit of PostgreSQL extension authors. It’s all down t [...]
A while ago I’ve been fixing and publishing pgsql-linum-format separately. That allows to number PL/whatever code lines when editing from Emacs, and i [...]
Following up on the very popular emacs-starter-kit, I’m now proposing the emacs-kicker. It’s about the .emacs file you’ve seen in older posts here, wh [...]
I’ve been working on skytools3 packaging lately. I’ve been pushing quite a lot of work into it, in order to have exactly what I needed out of the box, [...]
If you don’t remember about what pg_staging is all about, it’s a central console from where to control all your PostgreSQL databases. Typically you us [...]
If you’ve not been following closely you might have missed out on extensions integration. Well, Tom spent some time on the patches I’ve been preparing [...]
I’m using Desktop Save Mode so that Emacs knows to open again all the buffers I’ve been using. That goes quite well with how often I start Emacs, that [...]
This year we were in the main building of the conference, and apparently the booth went very well, solding lots of PostgreSQL merchandise etc. I had t [...]
The tale of the development of the Extension support for PostgreSQL, by the patch series author, yours truly. [...]
A quick blog entry to say that yes: And I will even do my Extension’s talk which had a success at pgday.eu. The talk will be updated to include the la [...]
It so happens that a colleague of mine wanted to start using Emacs but couldn’t get to it. He insists on having proper color themes in all application [...]
Yes, you read it well, el-get currently features 174 recipes, and is now reaching the 1.1 release. The reason for this release is mainly that I have t [...]
A talk about the then ongoing effort to implement support for Extensions in PostgreSQL. My patch was committed in 9.1 and is the basis for the create [...]
You certainly know that implementing dynamic triggers in PLpgSQL is impossible. But I had a very bad night, being up from as soon as 3:30 am today, so [...]
Hannu just gave me a good idea in this email on -hackers, proposing that pg_basebackup should get the xlog files again and again in a loop for the who [...]
After reading Simon’s blog post, I can’t help but try to give some details about what it is exactly that I’m working on. As he said, there are several [...]
These days, thanks to my community oriented job, I’m working full time on a PostgreSQL patch to terminate basic support for extending SQL. First thing [...]
The PostgreSQL IRC channel is a good place to be, for all the very good help you can get there, because people are always wanting to remain helpful, b [...]
Yeah I’m back on working on my part of the extension thing in PostgreSQL. First step is a little one, but as it has public consequences, I figured I’d [...]
It’s been a week since the last commits in the el-get repository, and those were all about fixing and adding recipes, and about notifications. Nothing [...]
The major reason why I dislike perl so much, and ruby too, and the thing I’d want different in the Emacs Lisp API so far is how they set developers mi [...]
The previous article about M-x mailq has raised several mails asking me details about the Postfix setup I’m talking about. The problem we’re trying to [...]
Nowadays, most people would think that email is something simple, you just setup your preferred client (that’s called a MUA) with some information suc [...]
I wanted to play with the idea of using the whole keyboard for my switch-window utility, but wondered how to get those keys in the right order and all [...]
The drawback of hosting a static only website is, obviously, the lack of comments. What happens actually, though, is that I receive very few comments [...]
So, when 8.4 came out there was all those comments about how getting window functions was an awesome addition. Now, it seems that a lot of people seek [...]
Although the new asynchronous replication facility that ships with 9.0 ain’t released to the wide public yet, our hackers hero are already working on [...]
Yes, that’s another el-get related entry. It seems to take a lot of my attention these days. After having setup the git repository so that you can upd [...]
After discovering the excellent Gwene service, which allows you to subscribe to newsgroups to read RSS content ( blogs, planets, commits, etc), I came [...]
A very good remark from some users: installing and managing el-get should be simpler. They wanted both an easy install of the thing, and a way to be a [...]
The idea of the day ain’t directly from me, I’m just helping with a very thin subpart of the problem. The problem, I can’t say much about, let’s just [...]
I’ve been receiving some requests for el-get, some of them even included a patch. So now there’s support for bzr, CSV and http-tar, augmenting the exi [...]
Thanks to you readers of Planet Emacsen taking the time to try those pieces of emacs lisp found in my blog, and also the time to comment on them, some [...]
We’re using constants in some constraints here, for example in cases where several servers are replicating to the same federating one: each origin ser [...]
In trying to help an extension debian packaging effort, I’ve once again proposed to handle it. That’s because I now begin to know how to do it, as you [...]
Some user on IRC was reading the releases notes in order to plan for a minor upgrade of his 8.3.3 installation, and was puzzled about potential needs [...]
I’ve been using emacs for a long time, and a long time it took me to consider learning Emacs Lisp. Before that, I didn’t trust my level of understandi [...]
Today I’m being told once again about SQLite as an embedded database software. That one ain’t a database server but a software library that you can us [...]
This time, we are trying to figure out where is the bulk of the data on disk. The trick is that we’re using DDL partitioning, but we want a “nice” vie [...]
Thanks to amazing readers of planet emacsen, two annoyances of switch-window.el have already been fixed! The first is that handling of C-g isn’t exact [...]
So it’s Sunday and I’m thinking I’ll get into el-get sometime later. Now is the time to present dim-switch-window.el which implements a visual C-x o. [...]
If you don’t know about ClusterSSH, it’s a project that builds on M-x term and ssh to offer a nice and simple way to open remote terminals. It’s avail [...]
Those are my two all times favorite Open Source Software. Or Free Software in the GNU sense of the world, as both the BSD and the GPL are labeled free [...]
There’s currently a thread on hackers about bg worker: overview and a series of 6 patches. Thanks a lot Markus! This is all about generalizing a conce [...]
Nowadays to analyze logs and provide insights, the more common tool to use is pgfouine, which does an excellent job. But there has been some improveme [...]
There’s a big trend nowadays about using column storage as opposed to what PostgreSQL is doing, which would be row storage. The difference is that if [...]
At CHAR(10) Markus had a talk about Using MVCC for Clustered Database Systems and explained how Postgres-R does it. The scope of his project is to mai [...]
It surely does not feel like a full month and some more went by since we were enjoying PGCon 2010, but in fact it was already the time for CHAR(10). T [...]
This year’s edition has been the best pgcon ever for me. Granted, it’s only my third time, but still :) As Josh said the “Hall Track” in particular wa [...]
2 years of londiste is a talk that summarize what we’ve found in this project after having been using it for 2 years in production. From the community [...]
So, following previous blog entries about importing fixed width data, from Postgres Online Journal and David (perl) Fetter, I couldn’t resist followin [...]
Yes. This pgloader project is still maintained and somewhat active. Development happens when I receive a complaint, either about a bug in existing cod [...]
This time we’re having a database where sequences were used, but not systematically as a default value of a given column. It’s mainly an historic bad [...]
Now you know what piece of software is used to publish this blog. I really like it, the major mode makes it a great experience to be using this tool, [...]
So, if you followed the previous blog entry, now you have a new database containing all the static tables encoded in UTF-8 rather than SQL_ASCII. Beca [...]
It happens that you have to manage databases designed by your predecessor, and it even happens that the team used to not have a DBA. Those histerical [...]
So, after restoring a production dump with intermediate filtering, none of our sequences were set to the right value. I could have tried to review the [...]
One of the most important feedback I got about the presentation of pgstaging were the lack of pictures, something like a bird-view of how you operate [...]
At pgday there was this form you could fill to give speakers some feedback about their talks. And that’s a really nice way as a speaker to know what t [...]
So I had two bug reports about prefix in less than a week. It means several things, one of them is that my code is getting used in the wild, which is [...]
So there it is, this newer contribution of mine that I presented at PGDay is now in debian NEW queue. pg_staging will empower you with respect to what [...]
moment. Lots of attendees, lots of quality talks ( slides are online), good food, great party: all the ingredients were there! It also was for me the [...]
2 years of londiste is a talk that summarize what we’ve found in this project after having been using it for 2 years in production. From the community [...]
As you might have noticed, this little blog of mine is not compromising much and entirely maintained from Emacs. Until today, I had to resort to term [...]
So there it is, at long last, the final 1.0.0 release of prefix! It’s on its way into the debian repository (targetting sid, in testing in 10 days) an [...]
So you have a rolodex like database in your Emacs, or you have this phone number in a mail and you want to call it. It happens you have VoIP setup and [...]
After having used elscreen for a long time, I’m now a very happy user of escreen, which feels much better integrated and allows to have one ring of re [...]
The function didn’t allow for using more than one mailrc file, which isn’t a good idea, so I’ve just added that. Oh and for gnus integration what I ne [...]
So I’ve been adviced to use ~/.mailrc for keeping a basic address book in Emacs, for use within gnus for example. I had to resort to the manual to fin [...]
It seems like debian developers are back from annual conference and holiday, so they have had a look at the NEW queue and processed the packages in th [...]
First, here’s a way to insert at current position the last message printed into the minibuffer… well not exactly, in *Messages* buffer in fact. I was [...]
At long last, here it is. With binary versions both for postgresal-8.3 and postgresal-8.4! Unfortunately my other packaging efforts are still waiting [...]
I’ve been having problem with building both postgresql-8.3-prefix and postgresql-8.4-prefix debian packages from the same source package, and fixing t [...]
At long last, after millions and millions of queries just here at work and some more in other places, the prefix project is reaching 1.0 milestone. Th [...]
I can’t really compare PgCon 2009 with previous years versions, last time I enjoyed the event it was in 2006, in Toronto. But still I found the experi [...]
A Lightning Talk about PGQ, the Skytools solution for managing queues in PostgreSQL. [...]
On the performance mailing list, a recent thread drew my attention. It devired to be about using a connection pool software and prepared statements in [...]
It’s time for Skytools news again! First, we did improve documentation of current stable branch with hosting high level presentations and tutorials on [...]
The prefix project is about matching a literal against prefixes in your table, the typical example being a telecom routing table. Thanks to the excell [...]
The problem was raised this week on IRC and this time again I felt it would be a good occasion for a blog entry: how to load an XML file content into [...]
In this russian page you’ll see a nice presentation of Skype databases architectures by Asko Oja himself. It’s the talk at Russian PostgreSQL Communit [...]
One of the difficulties in getting to understand and configure londiste reside in the relation between the ticker and the replication. This question w [...]
In the page about Skytools I’ve encouraged people to ask some more questions in order for me to be able to try and answer them. That just happened, as [...]
As it happens, I’ve got some environments where I want to make sure HOT ( aka Heap Only Tuples) is in use. Because we’re doing so much updates a secon [...]
So, you’re using londiste and the ticker has not been running all night long, due to some restart glitch in your procedures, and the on call admin did [...]
Watch Kevin Kelly’s Talk here, it’s about trying to predict what the Internet will look like 5 thousands days from now. [...]
If you want to live on the bleeding edge, it’s easy enough to get a non existing release of GNU Emacs under debian sid, thanks to http://emacs.oreboke [...]
Oh and check out the skytools page too. Emacs Muse is so great a project that instead of just working on how to publish a website with this tool, I fo [...]
So finaly a blogging software for geeks exists? The problem with communication is that you think it happened. [...]
This is a test of a fake entry to see how muse will manage this. With some SQL inside: SELECT * FROM planet.postgresql.org WHERE author = "dim"; [...]
My first PostgreSQL Conference ever, and I was a speaker… thanks to this very welcoming community! The first presentation is a Lightning Talk about PG [...]
On JSON and SQL See the articles: http://tapoueh.org/blog/2017/09/on-json-and-sql/ http://tapoueh.org/blog/2017/10/set-returning-fonctions-and-postgre [...]