*** FAQ_russian.html.old	Sun Apr 11 22:37:38 2004
--- FAQ_russian.html	Sun Apr 11 23:27:02 2004
***************
*** 12,18 ****
    <BODY bgcolor="#ffffff" text="#000000" link="#ff0000" vlink="#a00000" alink="#0000ff">
      <H1>Ответы на часто задаваемые вопросы по PostgreSQL</H1>
  
!     <P>Дата последнего обновления: Суббота 7 февраля 22:16:21 EDT 2004</P>
  
      <P>Английский вариант сопровождает: Брюс Момьян (Bruce Momjian) (<A href=
      "mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</A>)<BR>
--- 12,18 ----
    <BODY bgcolor="#ffffff" text="#000000" link="#ff0000" vlink="#a00000" alink="#0000ff">
      <H1>Ответы на часто задаваемые вопросы по PostgreSQL</H1>
  
!     <P>Дата последнего обновления: Воскресение 11 апреля 23:28:03 EDT 2004</P>
  
      <P>Английский вариант сопровождает: Брюс Момьян (Bruce Momjian) (<A href=
      "mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</A>)<BR>
***************
*** 142,148 ****
  
      <H2 align="center">Расширения PostgreSQL</H2>
      <A href="#5.1">5.1</A>) Я написал функцию определяемую пользователем.
!     Когда я запускаю ее в <I>psql</I>, почему я получаю dump core?<BR>
       <A href="#5.2">5.2</A>) Как я могу внести некоторые классные новые
       типы и функции в PostgreSQL?<BR>
       <A href="#5.3">5.3</A>) Как мне написать C функцию, возвращающую
--- 142,148 ----
  
      <H2 align="center">Расширения PostgreSQL</H2>
      <A href="#5.1">5.1</A>) Я написал функцию определяемую пользователем.
!     Когда я запускаю ее в <I>psql</I>, почему я получаю core dump?<BR>
       <A href="#5.2">5.2</A>) Как я могу внести некоторые классные новые
       типы и функции в PostgreSQL?<BR>
       <A href="#5.3">5.3</A>) Как мне написать C функцию, возвращающую
***************
*** 168,174 ****
  
      <P>Разработку PostgreSQL выполняет команда разработчиков, все участники
      которой подписаны на список рассылки разработчиков. В настоящее время,
!     их координатором является Марк Форнай (Marc G. Fournier) (<A href=
      "mailto:scrappy@PostgreSQL.org">scrappy@PostgreSQL.org</A>). (См.
      секцию <A href="#1.6">1.6</A> о том, как подключиться к разработке).
      Эта команда теперь отвечает за всю разработку PostgreSQL. Данный
--- 168,174 ----
  
      <P>Разработку PostgreSQL выполняет команда разработчиков, все участники
      которой подписаны на список рассылки разработчиков. В настоящее время,
!     их координатором является Марк Фурнье (Marc G. Fournier) (<A href=
      "mailto:scrappy@PostgreSQL.org">scrappy@PostgreSQL.org</A>). (См.
      секцию <A href="#1.6">1.6</A> о том, как подключиться к разработке).
      Эта команда теперь отвечает за всю разработку PostgreSQL. Данный
***************
*** 335,341 ****
  
      <H4><A name="1.7">1.7</A>) Какая последняя версия?</H4>
  
!     <P>Последний выпуск PostgreSQL - это версия 7.4.1</P>
  
      <P>Мы планируем выпускать новые версии каждые 6-8 месяцев.</P>
  
--- 335,341 ----
  
      <H4><A name="1.7">1.7</A>) Какая последняя версия?</H4>
  
!     <P>Последний выпуск PostgreSQL - это версия 7.4.2</P>
  
      <P>Мы планируем выпускать новые версии каждые 6-8 месяцев.</P>
  
***************
*** 436,443 ****
  
        <DD>PostgreSQL имеет большинство возможностей представленных
        в больших коммерческих <SMALL>СУБД</SMALL>, такие как: транзакции,
!       подзапросы, триггеры, обзоры (views), внешний ключ ссылочной
!       целостности и разные блокировки. У нас есть некоторые возможности,
        которых нет у них: типы, определяемые пользователем, механизм
        наследования, правила и конкуретное многоверсионное управление
        для работы с содержимым блокировок.<BR>
--- 436,443 ----
  
        <DD>PostgreSQL имеет большинство возможностей представленных
        в больших коммерческих <SMALL>СУБД</SMALL>, такие как: транзакции,
!       подзапросы, триггеры, представления, ссылочной
!       целостности вторичного ключа и разные блокировки. У нас есть некоторые возможности,
        которых нет у них: типы, определяемые пользователем, механизм
        наследования, правила и конкуретное многоверсионное управление
        для работы с содержимым блокировок.<BR>
***************
*** 448,454 ****
  
        <DD>PostgreSQL имеет производительность схожую с другими коммерческими
        СУБД и с СУБД с открытым исходным кодом, в каких-то аспектах работая
!       быстрее чем они, в каких-то медленее. В сравнении с MySQL или линейными
        СУБД, мы быстрее, когда пользователей много, а также на комплексных
        запросах и чтении/записи загрузки запроса. MySQL быстрее для простых
        SELECT запросов, выполняемых небольшим количеством пользователей.
--- 448,454 ----
  
        <DD>PostgreSQL имеет производительность схожую с другими коммерческими
        СУБД и с СУБД с открытым исходным кодом, в каких-то аспектах работая
!       быстрее чем они, в каких-то медленее. В сравнении с MySQL или обыденнее
        СУБД, мы быстрее, когда пользователей много, а также на комплексных
        запросах и чтении/записи загрузки запроса. MySQL быстрее для простых
        SELECT запросов, выполняемых небольшим количеством пользователей.
***************
*** 509,515 ****
  
      <P>PostgreSQL имеет одноранговую инфраструктуру с того самого времени
      как мы начали разработку в 1996 году. Мы должны благодарить за
!     это Марка Фоная (Marc Fournier), который создал эту инфраструктуру и
      управляет ей на протяжении этих лет.</P>
  
      <P>Качественная инфраструктура очень важна для проектов с открытым
--- 509,515 ----
  
      <P>PostgreSQL имеет одноранговую инфраструктуру с того самого времени
      как мы начали разработку в 1996 году. Мы должны благодарить за
!     это Марка Фурнье (Marc Fournier), который создал эту инфраструктуру и
      управляет ей на протяжении этих лет.</P>
  
      <P>Качественная инфраструктура очень важна для проектов с открытым
***************
*** 860,866 ****
      команд.</P>
  
      <H4><A name="4.4">4.4</A>) Как удалить колонку из таблицы или
!     изменить ёё тип данных?</H4>
  
      <P><small>DROP COLUMN</small> функциональность была добавлена в выпуск
      7.3 с оператором <small>ALTER TABLE DROP COLUMN</small>. В ранних версиях,
--- 860,866 ----
      команд.</P>
  
      <H4><A name="4.4">4.4</A>) Как удалить колонку из таблицы или
!     изменить её тип данных?</H4>
  
      <P><small>DROP COLUMN</small> функциональность была добавлена в выпуск
      7.3 с оператором <small>ALTER TABLE DROP COLUMN</small>. В ранних версиях,
***************
*** 890,902 ****
  
      <P>Существуют следующие ограничения:</P>
  <PRE>
!     Максимальный размер базы?              неограничен (существуют базы на 32 TB)
!     Максимальный размер таблицы?           32 TB
!     Максимальный размер записи?            1.6 TB
!     Максимальный размер поля?              1 GB
!     Максимальное количество записей в таблице?      неограничено
!     Максимальное количество колонок в таблице?    250-1600 в зависимости от типа
!     Максимальное количество индексов в таблице?   неограничено
  </PRE>
  
      Разумеется, понятие "неограничено" на самом деле ограничивается
--- 890,902 ----
  
      <P>Существуют следующие ограничения:</P>
  <PRE>
!     Максимальный размер базы?                    неограничен (существуют базы на 32 TB)
!     Максимальный размер таблицы?                 32 TB
!     Максимальный размер записи?                  1.6 TB
!     Максимальный размер поля?                    1 GB
!     Максимальное количество записей в таблице?   неограничено
!     Максимальное количество колонок в таблице?   250-1600 в зависимости от типа
!     Максимальное количество индексов в таблице?  неограничено
  </PRE>
  
      Разумеется, понятие "неограничено" на самом деле ограничивается
***************
*** 927,953 ****
  <PRE>
      36 байт: на каждый заголовок записи (приблизительно)
    + 24 байта: одно поле с целочисленным типом и одно текстовое поле
!    + 4 байта: указатель на странице для всей записи
     ----------------------------------------
      64 байт на запись
  
     Размер страницы данных в PostgreSQL составляет 8192 байт (8 KB), так что:
  
     8192 байт на страницу
!    -------------------   =  128 записей на страницу БД (с округлением)
!      64 байт на запись
  
!    100000 строк данных
!    --------------------  =  782 страницы в БД
!   128 записей на страницу
  
! 782 страницы БД * 8192 байт на страницу  =  6,406,144 байт (6.4 MB)
  </PRE>
  
      <P>Индексы не требуют так много, но поскольку они создаются для
      большого количества данных, они также могут быть велики.</P>
      
!     <P>Значения <small>NULL</small> хранятся как битовае карты и поэтому они
      занимают очень мало места.
      </P>
  
--- 927,953 ----
  <PRE>
      36 байт: на каждый заголовок записи (приблизительно)
    + 24 байта: одно поле с целочисленным типом и одно текстовое поле
!   +  4 байта: указатель на странице для всей записи
     ----------------------------------------
      64 байт на запись
  
     Размер страницы данных в PostgreSQL составляет 8192 байт (8 KB), так что:
  
     8192 байт на страницу
!    ---------------------   =  128 записей на страницу БД (с округлением)
!      64 байта на запись
  
!      100000 строк данных
!    ----------------------- =  782 страницы в БД
!    128 записей на страницу
  
!    782 страницы БД * 8192 байт на страницу = 6,406,144 байт (6.4 MB)
  </PRE>
  
      <P>Индексы не требуют так много, но поскольку они создаются для
      большого количества данных, они также могут быть велики.</P>
      
!     <P>Значения <small>NULL</small> хранятся как битовые карты и поэтому они
      занимают очень мало места.
      </P>
  
***************
*** 999,1005 ****
      LIMIT 1;
  </pre>
  
!     <P>Если вам кажется, что оптимизатор некорретно выбирает последовательный
      перебор, используйте <CODE>SET enable_seqscan TO 'off'</CODE> и
      запустите тесты, чтобы увидеть, не стало-ли сканирование индексов быстрее.
      </P>
--- 999,1005 ----
      LIMIT 1;
  </pre>
  
!     <P>Если вам кажется, что оптимизатор некорректно выбирает последовательный
      перебор, используйте <CODE>SET enable_seqscan TO 'off'</CODE> и
      запустите тесты, чтобы увидеть, не стало-ли сканирование индексов быстрее.
      </P>
***************
*** 1043,1049 ****
      Searching." Proceedings of the 1984 ACM SIGMOD Int'l Conf on Mgmt
      of Data, 45-57.</P>
  
!     <P>Вы можете найти этот документ в книге Stonebraker'а "Readings in
      Database Systems".</P>
  
      <P>Встроеннные R-tree могут управлять полигонами и боксами. В теории,
--- 1043,1049 ----
      Searching." Proceedings of the 1984 ACM SIGMOD Int'l Conf on Mgmt
      of Data, 45-57.</P>
  
!     <P>Вы можете найти этот документ в книге Стоунбрейкера "Readings in
      Database Systems".</P>
  
      <P>Встроеннные R-tree могут управлять полигонами и боксами. В теории,
***************
*** 1467,1473 ****
      <H2 align="center">Расширения PostgreSQL</H2>
  
      <H4><A name="5.1">5.1</A>) Я написал функцию определяемую пользователем.
!     Когда я запускаю ее в <I>psql</I>, почему я получаю dump core?</H4>
  
      <P>Проблема может заключаться в нескольких вещах. Попытайтесь сперва
      протестировать вашу функцию в отдельной самостоятельной программе.</P>
--- 1467,1473 ----
      <H2 align="center">Расширения PostgreSQL</H2>
  
      <H4><A name="5.1">5.1</A>) Я написал функцию определяемую пользователем.
!     Когда я запускаю ее в <I>psql</I>, почему я получаю core dump?</H4>
  
      <P>Проблема может заключаться в нескольких вещах. Попытайтесь сперва
      протестировать вашу функцию в отдельной самостоятельной программе.</P>
***************
*** 1496,1499 ****
      автоматически отслеживать зависимости.</P>
    </BODY>
  </HTML>
- 
--- 1496,1498 ----
