Performance of Inherits versus Views

Поиск
Список
Период
Сортировка
От dex
Тема Performance of Inherits versus Views
Дата
Msg-id AIEFJBJIIGJICIKAMAAIEECJCFAA.dex@bridge3.com
обсуждение исходный текст
Список pgsql-performance
Hello,

Is it more efficient to use a schema with Inherits or
schema with Views.  I can see logically how to use both
for my case and I'm trying to make a decision.  I would
guess that the overhead of the queries against
inherited tables is higher than queries against views,
but I don't know.

At the bottom of this message, I've included the cities /
capitals examples implemented both as schema using
inheritance and as schema using views.

Using the example, I could make queries such as:

SELECT name FROM capitals; -- capitals in inherited

or

SELECT name FROM capital_cities; -- capital cities is a view

But which one would be faster?  In my real world example,
I will either have one small base class table (i.e. cities in
the example) and many direct descendents of that base
table (e.g. capitals, beaches, national parks, suburbs
in the example).  Or, it could be implemented as one larger
(but not huge) lookup table with many views against
that lookup table.

What would you do?

Thanks!

--dex


--
--  Schema with Inherits
--
CREATE TABLE cities (
    name            text,
    population      float,
    altitude        int     -- (in ft)
  );

  CREATE TABLE capitals (
    state           char(2)
  ) INHERITS (cities);


--
--  Schema with View
--
CREATE TABLE all_cities (
    name            text,
    population      float,
    altitude        int,
    state           char(2)
);

CREATE VIEW just_cities AS SELECT
    all_cities.name,
    all_cities.population,
    all_cities.altitude
FROM all_cities;

-- or perhaps with a where clause, as in
CREATE VIEW capital_cities AS SELECT
    all_cities.name,
    all_cities.population,
    all_cities.altitude
FROM all_cities WHERE (all_cities.state IS NOT NULL);


В списке pgsql-performance по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: dum query plan: more info.
Следующее
От: Victor Danilchenko
Дата:
Сообщение: Query speed problems