forked from le0pard/postgresql_book
-
Notifications
You must be signed in to change notification settings - Fork 0
/
postgresql_extensions.tex
71 lines (46 loc) · 4.77 KB
/
postgresql_extensions.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
\chapter{Расширения}
\begin{epigraphs}
\qitem{Гибкость ума может заменить красоту.}{Стендаль}
\end{epigraphs}
\section{Введение}
Один из главных плюсов PostgreSQL это возможность расширения его функционала с помощью расширений. В данной статье я затрону только самые интересные и популярные из существующих расширений.
\input{extensions/postgis}
\input{extensions/pgsphere}
\input{extensions/hstore}
\input{extensions/plv8}
\input{extensions/pg_repack}
\input{extensions/pg_prewarm}
\input{extensions/smlar}
\input{extensions/multicorn}
\input{extensions/pgaudit}
\input{extensions/ltree}
\input{extensions/postpic}
\input{extensions/fuzzystrmatch}
\section{Tsearch2}
\textbf{Лицензия}: Open Source
Tsearch2~-- расширение для полнотекстового поиска. Встроен в PostgreSQL начиная с версии 8.3.
\section{OpenFTS}
\textbf{Лицензия}: Open Source
\textbf{Ссылка}: \href{http://openfts.sourceforge.net/}{openfts.sourceforge.net}
OpenFTS (Open Source Full Text Search engine) является продвинутой PostgreSQL поисковой системой, которая обеспечивает онлайн индексирования данных и актуальность данных для поиска по базе. Тесная интеграция с базой данных позволяет использовать метаданные, чтобы ограничить результаты поиска.
\section{PL/Proxy}
\textbf{Лицензия}: Open Source
\textbf{Ссылка}: \href{http://pgfoundry.org/projects/plproxy/}{pgfoundry.org/projects/plproxy}
PL/Proxy представляет собой прокси-язык для удаленного вызова процедур и партицирования данных между разными базами. Подробнее можно почитать в \Sref{sec:plproxy} главе.
\section{Texcaller}
\textbf{Лицензия}: Open Source
\textbf{Ссылка}: \href{http://www.profv.de/texcaller/}{www.profv.de/texcaller}
Texcaller~--- это удобный интерфейс для командной строки TeX, который обрабатывает все виды ошибок. Он написан в простом C, довольно портативный, и не имеет внешних зависимостей, кроме TeX. Неверный TeX документ обрабатывается путем простого возвращения NULL, а не прерывается с ошибкой. В случае неудачи, а также в случае успеха, дополнительная обработка информации осуществляется через NOTICEs.
\section{Pgmemcache}
\textbf{Лицензия}: Open Source
\textbf{Ссылка}: \href{http://pgfoundry.org/projects/pgmemcache/}{pgfoundry.org/projects/pgmemcache}
Pgmemcache~--- это PostgreSQL API библиотека на основе libmemcached для взаимодействия с memcached. С помощью данной библиотеки PostgreSQL может записывать, считывать, искать и удалять данные из memcached. Подробнее можно почитать в <<\ref{sec:pgmemcache}~\nameref{sec:pgmemcache}>> главе.
\section{Prefix}
\textbf{Лицензия}: Open Source
\textbf{Ссылка}: \href{http://pgfoundry.org/projects/prefix}{pgfoundry.org/projects/prefix}
Prefix реализует поиск текста по префиксу (\lstinline!prefix @> text!). Prefix используется в приложениях телефонии, где маршрутизация вызовов и расходы зависят от вызывающего/вызываемого префикса телефонного номера оператора.
\section{Dblink}
\textbf{Лицензия}: Open Source
Dblink~-- расширение, которое позволяет выполнять запросы к удаленным базам данных непосредственно из SQL, не прибегая к помощи внешних скриптов.
\section{Заключение}
Расширения помогают улучшить работу PostgreSQL в решении специфических проблем. Расширяемость PostgreSQL позволяет создавать собственные расширения, или же наоборот, не нагружать СУБД лишним, не требуемым функционалом.