Heim  >  Artikel  >  Datenbank  >  一些非常有用的 PostgreSQL 扩展

一些非常有用的 PostgreSQL 扩展

WBOY
WBOYOriginal
2016-06-07 17:13:271394Durchsuche

我亲爱的朋友们,今天让我们来讨论下 PostgreSQL 以及该数据库最有用的一些扩展。

我亲爱的朋友们,今天让我们来讨论下 PostgreSQL 以及该数据库最有用的一些扩展。

PostgreSQL 是一个关系型数据库管理系统,主要特点:

  • 数据库支持几乎无限的大小;
  • 强大而且可靠的事务复制机制
  • 内建的可扩展编程语言
  • 继承
  • 可通过一些扩展组件进行功能扩展
  • 今天我们主要介绍最后一个特性,下面让我们来看一些 PostgreSQL 的扩展。

    PostGIS

    PostGIS在对象关系型数据库PostgreSQL上增加了存储管理空间数据的能力,相当于Oracle的spatial部分。PostGIS最大的特点是符合并且实现了OpenGIS的一些规范,是最著名的开源GIS数据库。

    PostPic

    PostPic 是 PostgreSQL 数据库的扩展,,用来在数据库内进行图像处理,PostPic 为 SQL 增加了 image 类型,还包含很多相关的函数用来处理图片以及从图片中抽取对应的属性。

    PL/Proxy

    PL/Proxy和PostgreSQL集群的结构关系可以用下图清楚地表示

    Texcaller

    Texcaller 是 TeX 命令行工具的编程接口,采用纯 C 编写的可移植库,无需外部依赖。

    PgMemcache

    PgMemcache 是一组 PostgreSQL 用户自定义函数提供了访问 memcached 缓存服务器的接口。安装 pgmemcache 很简单,但需要一些额外的琐碎要求:libmemcached 必须是 0.38 或者更新版本,PostgreSQL 必须是 8.4 或者更新版本。该扩展提供了 memcached 数据的读写、搜索和删除。

    Prefix

    prefix 模块实现了文本的前缀匹配操作,支持索引典型的写法:
    SELECT * FROM osc_prefixes WHERE prefix @> ’0123456789′ ORDER BY length(prefix::text) LIMIT 1

    pgSphere

    pgSphere 为 PostgreSQL 数据库提供球面数据类型,函数,和运算函数。

    Multicorn

    Multicorn 是一个 PostgreSQL 9.1+ 的扩展模块,用于简化外部数据封装开发,允许开发者使用 Python 编程语言开发。

  • oracle_fdw – connects to Oracle databases.
  • mysql_fdw – connects to MySQL databases.
  • tds_fdw – connects to Sybase and Microsoft SQL Server databases.
  • odbc_fdw – connects to any ODBC source.
  • couchdb_fdw – connects to CouchDB databases.
  • redis_fdw – connects to Redis databases.
  • twitter_fdw – fetches messages from Twitter.
  • ldap_fdw – queries LDAP servers.
  • file_fdw – access data files in the server’s file system and query them as tables.
  • file_fixed_length_record_fdw – reads flat files with columns of fixed width.
  • PGStrom – uses GPU devices to accelerate sequential scan on massive amount of records with complex qualifiers.
  • s3_fdw – reads files located in Amazon S3.
  • www_fdw – accesses web services as a data source.
  • – used to access data stored in any database supported by the sqlalchemy python toolkit, such as MySQL, SQLite, Oracle, Microsoft SQL Server and many others.
  • – used to access data stored in various files, in a filesystem.
  • – used to access data stored in CSV files.
  • – used to access items from an RSS feed.
  • Hstore

    该模块为 PostgreSQL 提供存储Key-Value数据的功能,你可以定义 hstore 数据列来存储这样的数据,并可对这些数据进行分组、排序和唯一检索的查询。

    Intarray

    intarray 模块提供一系列有用的函数和运算用于操作整数数组,同时支持索引搜索。

    如果数组中包含 null 元素,那么所有的这些操作都将抛出错误。当我开发一个简单的图像比较功能时,我会使用这个扩展 (, 俄文).

    Dblink

    Dblink 让你可以在 PostgreSQL 连接会话中支持连接到其他 PG 数据库,同时支持自主事务  autonomous transactions (like in Oracle).

    That’s all folks!

    linux

    Stellungnahme:
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn