pg.ddx.io  pgsql-hackers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Tomas Vondra <tomas.vondra@2ndquadrant.com>
To: Alexander Korotkov <a.korotkov@postgrespro.ru>
To: Julien Rouhaud <julien.rouhaud@dalibo.com>
Cc: Teodor Sigaev <teodor@sigaev.ru>
Cc: Michael Paquier <michael.paquier@gmail.com>
Cc: Robert Haas <robertmhaas@gmail.com>
Cc: Haribabu Kommi <kommi.haribabu@gmail.com>
Cc: Alvaro Herrera <alvherre@2ndquadrant.com>
Cc: Pg Hackers <pgsql-hackers@postgresql.org>
Subject: Re: Pluggable storage
Date: Mon, 26 Jun 2017 21:55:35 +0200
Message-ID: <61caf61f-da05-76f5-0aa2-cdee4dd8efd7@2ndquadrant.com> (raw)
In-Reply-To: <CAPpHfdv7yV2oazbwkr0-dos7fZRivdNuEVModOzEwChxBuDong@mail.gmail.com>
References: <20160824182201.GA232997@alvherre.pgsql>
	<20161013202642.ksiuyx72gu6wgupf@alvherre.pgsql>
	<CAJrrPGfG7BarSFb6KQkOOYVaC6vjQRgG45+J2+TwLHHaFKuwGA@mail.gmail.com>
	<CA+TgmoYQN9xtMopr4Db3UFCqpbfd5DJb0j5apSmWtkyuWRz0Xw@mail.gmail.com>
	<CAB7nPqR6TorHQ_mXmAiB_cL40Vf2+F6hsue-P9HVGoxVxoHyKA@mail.gmail.com>
	<8b2510f0-ab89-dbf1-5b1c-5d686a5e33b8@sigaev.ru>
	<9b5728fc-c266-5f71-9a69-7668ad231e05@2ndquadrant.com>
	<62e28066-8063-e1f5-28dc-651adc11ca1b@dalibo.com>
	<CAPpHfdv7yV2oazbwkr0-dos7fZRivdNuEVModOzEwChxBuDong@mail.gmail.com>
List-Unsubscribe: <mailto:majordomo@postgresql.org?body=unsub%20pgsql-hackers>

Hi,

On 06/26/2017 05:18 PM, Alexander Korotkov wrote:
> Hackers,
> 
> I see that design question for PostgreSQL pluggable storages is very 
> hard.

IMHO it's mostly expected to be hard.

Firstly, PostgreSQL is a mature product with many advanced features, and 
reworking a low-level feature without breaking something on top of it is 
hard by definition.

Secondly, project policies and code quality requirements set the bar 
very high too, I think.

 > BTW, I think it worth analyzing existing use-cases of pluggable
> storages.  I think that the most famous DBMS with pluggable storage API
> is MySQL. This why I decided to start with it. I've added
> MySQL/MariaDB section on wiki page.
> https://wiki.postgresql.org/wiki/Future_of_storage#MySQL.2FMariaDB
> It appears that significant part of MySQL storage engines are misuses.  
> MySQL lacks of various features like FDWs or writable views and so on.  
> This is why developers created a lot of pluggable storages for that 
> purposes.  We definitely don't want something like this in PostgreSQL 
> now.  I created special resume column where I expressed whether it
> would be nice to have something like this table engine in PostgreSQL.
> 

I don't want to discourage you, but I'm not sure how valuable this is.

I agree it's valuable to have a an over-view of use cases for pluggable 
storage, but I don't think we'll get that from looking at MySQL. As you 
noticed, most of the storage engines are misuses, so it's difficult to 
learn anything valuable from them. You can argue that using FDWs to 
implement alternative storage engines is a misuse too, but at least that 
gives us a valid use case (columnar storage implemented using FDW).

If anything, the MySQL storage engines should serve as a cautionary tale 
how not to do things - there's also a plenty of references in the MySQL 
"Restrictions and Limitations" section of the manual:

   https://downloads.mysql.com/docs/mysql-reslimits-excerpt-5.7-en.pdf

regards

-- 
Tomas Vondra                  http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers



view thread (138+ messages)  latest in thread

Message-ID: <61caf61f-da05-76f5-0aa2-cdee4dd8efd7@2ndquadrant.com>
Permalink:  ../61caf61f-da05-76f5-0aa2-cdee4dd8efd7@2ndquadrant.com/
Also on:    postgresql.org/message-id/61caf61f-da05-76f5-0aa2-cdee4dd8efd7@2ndquadrant.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-hackers@postgresql.org
  Cc: tomas.vondra@2ndquadrant.com, a.korotkov@postgrespro.ru, julien.rouhaud@dalibo.com, teodor@sigaev.ru, michael.paquier@gmail.com, robertmhaas@gmail.com, kommi.haribabu@gmail.com, alvherre@2ndquadrant.com
  Subject: Re: Pluggable storage
  In-Reply-To: <61caf61f-da05-76f5-0aa2-cdee4dd8efd7@2ndquadrant.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox