Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit3f487f5

Browse files
committed
pathman: documentation
1 parent530d46d commit3f487f5

File tree

2 files changed

+45
-18
lines changed

2 files changed

+45
-18
lines changed

‎contrib/pathman/README.md‎

Lines changed: 33 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,18 @@ WHERE id = 150
3232

3333
Based on partitioning type and operator the`pathman` searches corresponding partitions and builds the plan.
3434

35+
##Installation
36+
37+
To install pathman run:
38+
```
39+
make install
40+
```
41+
from its directory. Then modify shared_preload_libraries parameter in postgres.conf as following:
42+
```
43+
shared_preload_libraries = 'pathman'
44+
```
45+
It will require to restart the PostgreSQL instance.
46+
3547
##Pathman Functions
3648

3749
###Partitions Creation
@@ -76,64 +88,67 @@ Splits RANGE `partition` in two by `value`.
7688
```
7789
CREATE FUNCTION merge_range_partitions(partition1 TEXT, partition2 TEXT)
7890
```
79-
Merge two adjacent RANGE partitions.Данные из`partition2`копируются в`partition1`, после чего секция`partition2`удаляется.
91+
Merge two adjacent RANGE partitions.Data from`partition2`is copied to`partition1`. Then the`partition2`is removed.
8092
```
8193
CREATE FUNCTION append_partition(p_relation TEXT)
8294
```
83-
Добавляет новую секцию в конец списка секций. Диапазон значений устанавливается равным последней секции.
95+
Appends new partition with the range equal to the range of the previous partition.
8496
```
8597
CREATE FUNCTION prepend_partition(p_relation TEXT)
8698
```
87-
Добавляет новую секцию в начало списка секций.
99+
Prepends new partition with the range equal to the range of the first partition.
88100
```
89101
CREATE FUNCTION disable_partitioning(relation TEXT)
90102
```
91-
Отключает механизм секционирования`pathman`для заданной таблицы и удаляет триггер на вставку. При этом созданные ранее секции остаются без изменений.
103+
Disables`pathman`partitioning mechanism for the specified parent table and removes an insert trigger. Partitions itself remain unchanged.
92104

93-
##Примеры использования
105+
##Examples
94106
###HASH
95-
Рассмотрим пример секционирования таблицы, используяHASH-стратегию на примере таблицы.
107+
Consider an example ofHASH partitioning. First create a table with some integer column:
96108
```
97109
CREATE TABLE hash_rel (
98110
id SERIAL PRIMARY KEY,
99111
value INTEGER);
100112
INSERT INTO hash_rel (value) SELECT g FROM generate_series(1, 10000) as g;
101113
```
102-
Разобьем таблицу`hash_rel` на 100 секций по полю`value`:
114+
Then run create_hash_partitions() function with appropriate arguments:
103115
```
104116
SELECT create_hash_partitions('hash_rel', 'value', 100);
105117
```
106-
Перенсем данные из родительской таблицы в дочерние секции.
118+
This will create new partitions but data will still be in the parent table. To move data to the corresponding partitions use partition_data() function:
107119
```
108120
SELECT partition_data('hash_rel');
109121
```
110122
###RANGE
111-
Пример секционирования таблицы с использованием стратегииRANGE.
123+
Consider an example ofRANGE partitioning. Create a table with numerical or date or timestamp column:
112124
```
113125
CREATE TABLE range_rel (
114126
id SERIAL PRIMARY KEY,
115127
dt TIMESTAMP);
116128
INSERT INTO range_rel (dt) SELECT g FROM generate_series('2010-01-01'::date, '2015-12-31'::date, '1 day') as g;
117129
```
118-
Разобьем таблицу на 60 секций так, чтобы каждая секция содержала данные за один месяц:
130+
Run create_range_partitions() function to create partitions so that each partition would contain data for one month:
119131
```
120132
SELECT create_range_partitions('range_rel', 'dt', '2010-01-01'::date, '1 month'::interval, 59);
121133
```
122-
>Значение`premake` равно 59, а не 60, т.к. 1 секция создается независимо от значения`premake`
123-
124-
Перенсем данные из родительской таблицы в дочерние секции.
134+
It will create 60 partitions (one partition is created regardless of`premake` parameter). Now move data from the parent to partitions.
125135
```
126136
SELECT partition_data('range_rel');
127137
```
128-
Объединим секции первые две секции:
138+
To merge to adjacent partitions run merge_range_partitions() function:
129139
```
130140
SELECT merge_range_partitions('range_rel_1', 'range_rel_2');
131141
```
132-
Разделим первую секцию на две по дате '2010-02-15':
142+
To split partition use split_range_partition() function:
133143
```
134144
SELECT split_range_partition('range_rel_1', '2010-02-15'::date);
135145
```
136-
Добавим новую секцию в конец списка секций:
146+
Now let's create new partition. You can use append_partition() or prepend_partition() functions:
137147
```
138-
SELECT append_partition('range_rel')
139-
```
148+
SELECT append_partition('range_rel');
149+
SELECT append_partition('range_rel');
150+
```
151+
152+
##Author
153+
Ildar Musin <i.musin@postgrespro.ru> Postgres Professional Ltd., Russia
154+
This module is sponsored by Postgres Professional Ltd., Russia

‎contrib/pathman/README.rus.md‎

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,18 @@ CHECK ( id >= 200 AND id < 300 )
3030
WHERE id = 150
3131
```
3232

33+
##Installation
34+
35+
Для установки pathman выполните в директории раширения команду:
36+
```
37+
make install
38+
```
39+
Затем модифицируйте параметр shared_preload_libraries в конфигурационном файле postgres.conf:
40+
```
41+
shared_preload_libraries = 'pathman'
42+
```
43+
Для вступления изменений в силу потребуется перезагрузка сервера PostgreSQL.
44+
3345
##Функции pathman
3446

3547
###Создание секций

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp