From e350d3d988c2fbb13790425e828634df29fc4321 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Fri, 11 Oct 2002 17:45:40 +0000 Subject: [PATCH] Update Russian FAQ. --- doc/FAQ_russian | 33 ++++++++++++++++++++++---------- doc/src/FAQ/FAQ_russian.html | 37 +++++++++++++++++++++++++----------- 2 files changed, 49 insertions(+), 21 deletions(-) diff --git a/doc/FAQ_russian b/doc/FAQ_russian index 8273e70945f..2b2d9d073bf 100644 --- a/doc/FAQ_russian +++ b/doc/FAQ_russian @@ -1,7 +1,7 @@ Ответы на часто задаваемые вопросы по PostgreSQL - Дата последнего обновления: Среда 22 Августа 19:20:40 EDT 2002 + Дата последнего обновления: Среда 9 Октября 23:14:53 EDT 2002 Английский вариант сопровождает: Брюс Момьян (Bruce Momjian) (pgman@candle.pha.pa.us) @@ -109,6 +109,7 @@ 4.25) Как мне вернуть из функции несколько записей? 4.26) Почему я не могу надежно создавать/удалять временные таблицы в функциях PL/PgSQL? + 4.27) Какие опции репликации существуют? Расширения PostgreSQL @@ -269,7 +270,7 @@ 1.7) Какая последняя версия? - Последний выпуск PostgreSQL - это версия 7.2.2. + Последний выпуск PostgreSQL - это версия 7.2.3. Мы планируем выпускать новые версии каждые четыре месяца. @@ -725,8 +726,8 @@ 4.5) Каковы максимальные размеры для записей, таблиц и базы данных? Существуют следующие ограничения: - Максимальный размер базы? неограничен (существуют базы на 60 G -B) + Максимальный размер базы? неограничен (существуют базы на 1 TB +) Максимальный размер таблицы? 16 TB Максимальный размер записи? 1.6 TB Максимальный размер поля? 1 GB @@ -1100,17 +1101,21 @@ CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP ); В настоящий момент, мы связываем позапросы для внешних запросов через последовательный перебор результата подзапроса для каждой записи - внешнего запроса. Попробуйте заменить IN на EXISTS: + внешнего запроса. Если подзапрос возвращает только несколько записей и + внешний запрос возвращает много записей, IN работает наиболее быстро. + Чтобы увеличить скорость в других запросах, замените IN на EXISTS: SELECT * FROM tab - WHERE col1 IN (SELECT col2 FROM TAB2) + WHERE col IN (SELECT subcol FROM subtab) на: SELECT * FROM tab - WHERE EXISTS (SELECT col2 FROM TAB2 WHERE col1 = col2) + WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col) - Мы надеемся убрать это ограничение в будущем выпуске. + Чтобы такая конструкция работала быстро, колонка subcol должна быть + проиндексирована. Мы надеемся убрать это ограничение в будущем + выпуске. 4.23) Как мне выполнить внешнее связывание? @@ -1149,8 +1154,10 @@ SELECT * для базы данных, непонятно даже, как должен себя вести такой межбазовый запрос. - Разумеется, клиент может одновременно устанавливать соедиенения с - различными базами данных и таких образом объединять информацию из них. + /contrib/dblink позволяет запросы между базами, используя вызовы + функций. Разумеется, клиент может одновременно устанавливать + соедиенения с различными базами данных и таких образом объединять + информацию из них. 4.25) Как мне вернуть из функции несколько записей? @@ -1170,6 +1177,12 @@ SELECT * временную таблицу. Чтобы решить эту проблему, используйте EXECUTE для доступа к временным таблицам в PL/PgSQL. Использование этого оператора заставит запрос перегенерироваться каждый раз. + + 4.27) Какие опции репликации существуют? + + Есть несколько решений для репликации типа master/slave. Они допускают + использование только одного сервера для внесения изменений в базу + данных, а slave серверы просто позволяют читать данные из базы. _________________________________________________________________ Расширения PostgreSQL diff --git a/doc/src/FAQ/FAQ_russian.html b/doc/src/FAQ/FAQ_russian.html index 744e522a2c4..a5c22f0a471 100644 --- a/doc/src/FAQ/FAQ_russian.html +++ b/doc/src/FAQ/FAQ_russian.html @@ -14,7 +14,7 @@ alink="#0000ff">

Ответы на часто задаваемые вопросы по PostgreSQL

-

Дата последнего обновления: Среда 22 Августа 19:20:40 EDT 2002

+

Дата последнего обновления: Среда 9 Октября 23:14:53 EDT 2002

Английский вариант сопровождает: Брюс Момьян (Bruce Momjian) (pgman@candle.pha.pa.us)
@@ -142,6 +142,7 @@ 4.25) Как мне вернуть из функции несколько записей?
4.26) Почему я не могу надежно создавать/удалять временные таблицы в функциях PL/PgSQL?
+ 4.27) Какие опции репликации существуют?

Расширения PostgreSQL

5.1) Я написал функцию определяемую пользователем. @@ -324,7 +325,7 @@

1.7) Какая последняя версия?

-

Последний выпуск PostgreSQL - это версия 7.2.2.

+

Последний выпуск PostgreSQL - это версия 7.2.3.

Мы планируем выпускать новые версии каждые четыре месяца.

@@ -874,7 +875,7 @@

Существуют следующие ограничения:

-    Максимальный размер базы?              неограничен (существуют базы на 60 GB)
+    Максимальный размер базы?              неограничен (существуют базы на 1 TB)
     Максимальный размер таблицы?           16 TB
     Максимальный размер записи?            1.6 TB
     Максимальный размер поля?              1 GB
@@ -1317,12 +1318,15 @@ BYTEA           bytea           
 
     

В настоящий момент, мы связываем позапросы для внешних запросов через последовательный перебор результата подзапроса для каждой - записи внешнего запроса. Попробуйте заменить IN на + записи внешнего запроса. Если подзапрос возвращает только несколько + записей и внешний запрос возвращает много записей, + IN работает наиболее быстро. Чтобы + увеличить скорость в других запросах, замените IN на EXISTS:

 SELECT *
     FROM tab
-    WHERE col1 IN (SELECT col2 FROM TAB2)
+    WHERE col IN (SELECT subcol FROM subtab)
 
 
@@ -1330,10 +1334,12 @@ BYTEA bytea
 SELECT *
     FROM tab
-    WHERE EXISTS (SELECT col2 FROM TAB2 WHERE col1 = col2)
+    WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col)
 
 
+ Чтобы такая конструкция работала быстро, колонка subcol + должна быть проиндексирована. Мы надеемся убрать это ограничение в будущем выпуске.

4.23) Как мне выполнить внешнее связывание?

@@ -1384,8 +1390,10 @@ BYTEA bytea Поскольку PostgreSQL загружает системные каталоги специфичные для базы данных, непонятно даже, как должен себя вести такой межбазовый запрос.

-

Разумеется, клиент может одновременно устанавливать соедиенения с - различными базами данных и таких образом объединять информацию из них.

+

/contrib/dblink позволяет запросы между базами, используя + вызовы функций. Разумеется, клиент может одновременно устанавливать + соедиенения с различными базами данных и таких образом объединять + информацию из них.

4.25) Как мне вернуть из функции несколько записей?

@@ -1397,15 +1405,22 @@ BYTEA bytea

4.26) Почему я не могу надежно создавать/удалять временные таблицы в функциях PL/PgSQL?

- PL/PgSQL кэширует содержимое функции и один из негативных эффектов этого +

PL/PgSQL кэширует содержимое функции и один из негативных эффектов этого состоит в том, что если функция PL/PgSQL обращается к временной таблице и эта таблица позднее удаляется и пересоздается, а функция затем вызывается снова, то ее вызов приведет к ошибке, потому что скэшированное содержимое функции содержит указатель на старую временную таблицу. Чтобы решить эту проблему, используйте EXECUTE для доступа к временным таблицам в PL/PgSQL. Использование этого оператора заставит запрос - перегенерироваться каждый раз. -


+ перегенерироваться каждый раз.

+ +

4.27) Какие опции репликации существуют?

+ +

Есть несколько решений для репликации типа master/slave. Они допускают + использование только одного сервера для внесения изменений в базу данных, + а slave серверы просто позволяют читать данные из базы.

+ +

Расширения PostgreSQL