Где временные таблицы хранятся в базе данных GreenPlum? - PullRequest
0 голосов
/ 05 июля 2018

В MS SQL Server Временные таблицы хранятся в База данных tempdb .

Есть ли в GreenPlum аналогичное специальное место для временных таблиц? Или временная таблица просто хранится в текущей базе данных и схеме, в которой я делаю обычные транзакции?

1 Ответ

0 голосов
/ 05 июля 2018

Временные таблицы в Greenplum хранятся в базе данных, в которой они были созданы, но во временной схеме, которая действует в течение сеанса, в котором была создана таблица.

т.е.

[gpadmin@mdw:~] $ createdb temp
[gpadmin@mdw:~] $ psql temp
temp=# create temporary table test_temp(a int) distributed by (a);
CREATE TABLE
    Time: 50.516 ms
    temp=# \d
                     List of relations
       Schema   |   Name    | Type  |  Owner  | Storage
    ------------+-----------+-------+---------+---------
     pg_temp_11 | test_temp | table | gpadmin | heap
    (1 row)

temp=# \dn
       List of schemas
        Name        |  Owner
--------------------+---------
 gp_toolkit         | gpadmin
 information_schema | gpadmin
 pg_aoseg           | gpadmin
 pg_bitmapindex     | gpadmin
 pg_catalog         | gpadmin
 pg_temp_11         | gpadmin
 pg_toast           | gpadmin
 pg_toast_temp_11   | gpadmin
 public             | gpadmin
(9 rows)

temp=#

temp=# \q

[gpadmin@mdw:~] $ psql temp
Timing is on.
psql (8.3.23)
Type "help" for help.

temp=# \d
No relations found.
temp=# \dn
       List of schemas
        Name        |  Owner
--------------------+---------
 gp_toolkit         | gpadmin
 information_schema | gpadmin
 pg_aoseg           | gpadmin
 pg_bitmapindex     | gpadmin
 pg_catalog         | gpadmin
 pg_toast           | gpadmin
 public             | gpadmin
(7 rows)

temp=#

Это отвечает на ваш вопрос?

...