为什么 PostgreSQL 的适用性很强?
说起使用数量最大的数据库SQLite 它是全球最广泛部署的数据库引擎。它存在于你的手机中,存在于你的浏览器中,如果你搜索你的电脑,你也会在其中找到它的 .db 文件。SQLite 受到 Postgres 的启发。其作者 Richard Hipp 称 SQLite 是 Postgres 的“概念分支”。两者没有共享代码,但是 Postgres 是他让 SQLite对准的北极星。他说,两者在以下方面是互补的。
如今,这些区别已经开始模糊。例如,SQLite被认为是嵌入式数据库。但是Postgres也正在成为嵌入式数据库。例如,我们说Steampipe嵌入了Postgres。这在技术上并不是真的。你不能将Postgres链接到一个二进制应用程序中,但是你可以(就像Steampipe一样)提供一个二进制文件,让它安装、运行并与Postgres合作。或者考虑Yugabyte,它将Postgres查询层附加到分布式存储层。也许没有在技术上嵌入Postgres的意义,但在道义上等同于嵌入。
Steampipe和Yugabyte不仅兼容Postgres,它们实际上是具有额外功能的Postgres(Steampipe用于API的外部数据封装器,Yugabyte用于分布式存储)。用户可以使用Postgres的交互式终端psql连接到这些产品;他们可以编写相同类型的查询;他们可以使用捆绑的或第三方扩展。
虽然PG不会很快像SQLite一样有上亿的部署量,但一般的设备完全有能力运行Postgres,PG正在越来越多在设备上使用。今天的SQL数据库比它们的先辈可以更好地为文件系统提供了更全面的数据存储支持,得益于丰富的API接口,Postgres不仅将关系数据与JSON对象可以存储在一起,还可以包括键值、全文、层次、地理空间、时间序列和列数据。
本地数据库是文件存储的一种补充形势。为了普及化数据库存储,这样的数据库应该是一个开源产品。SQLite已经引领了这个领域。Postgres是一个好的选择。
Postgres提供了丰富的数据复制机制来完成数据的传输,物理复制和逻辑复制都可以支持数据的传输和复制。Postgres强大的扩展生态系统增强了内置功能。第三方扩展pglogical实现了用于非Postgres发布者和订阅者(例如Kafka和RabbitMQ)的逻辑复制。在这个不断扩大的类别中,您可以找到许多其他解决方案。
与此同时,捆绑的 postgres_fdw 扩展利用了Postgres的外部数据包装器机制,以连接本地和远程表进行读写操作。无论如何,在您的设备上运行的Postgres实例,或者在您的个人和团队云中运行的实例,都能够与其他地方运行的实例同步。
数据科学文献中有许多指南,展示如何在数据科学家中流行的编程语言,如Python和R中重新实现SQL的核心功能。一个典型的Python配方以将数据从SQL表导入Pandas dataframe开始,Pandas dataframe是Python风格数据科学的核心构造,然后展示如何将SQL习语翻译成相应的Pandas习语。
除此以外POSTGRESQL支持丰富的语言来进行操作数据库,如通过python或 R语言都可以操作POSTGRESQL 来进行数据的查询利用这些语言可以让你操作Postgresql 更方便,扩展性更高。
所以POSTGRESQL 不光可以运行在大型服务器上,或云上RDS 方式提供服务,同时POSTGRESQL可以工作在任何运行环境, PG 具备在各种设备上运行的能力。
为什么 PostgreSQL 的适用性很强?的更多相关文章
- 对Delphi控件作用的新理解(控件本身的源代码就是一个很强的工业级源码)
最近几天,对Delphi控件的含义有了一个新的理解.其实它不仅仅是给程序员提供功能的一个表层调用,控件本身的源代码就是一个很强的工业级源码.而且它的Main例子,往往就已经是半成品.而别的语言里没有那 ...
- C#实现如何判断一个数组中是否有重复的元素 返回一个数组升序排列后的位置信息--C#程序举例 求生欲很强的数据库 别跟我谈EF抵抗并发,敢问你到底会不会用EntityFramework
C#实现如何判断一个数组中是否有重复的元素 如何判断一个数组中是否有重复的元素 实现判断数组中是否包含有重复的元素方法 这里用C#代码给出实例 方法一:可以新建一个hashtable利用hasht ...
- 为什么你有10年经验,但成不了专家?(重复性刻意训练+反馈修正,练习的精髓是要持续地做自己做不好的,太精彩了)真正的高手都有很强的自学能力,老师和教练的最重要作用是提供即时的反馈(莫非我从小到大学习不好的原因在这里?没有单独刻意训练?) good
也许简单看书就是没有刻意训练.更没有反馈,所以没有效果 我倒是想起自己,研究VCL源码的时候,都是自己给自己提问,然后苦思冥想.自己解决问题,然后Windows编程水平果然上了一个台阶.对什么叫做“框 ...
- 扩展性很强的python实现方式
一:先上目录结构 二:各个文件的代码 # -*- coding: utf-8 -*- # @Author : Felix Wang # @time : 2018/7/4 16:42 from util ...
- MinIO很强-让我放弃FastDFS拥抱MinIO的8个理由
目前可用于文件存储的网络服务选择有很多,比如阿里云OSS.七牛云.腾讯云等等,但是收费都有点小贵.为了帮公司节约成本,之前一直是使用fastDFS作为文件服务器,准确的说是图片服务器.直到我发现了Mi ...
- Mac上安装配置和简单使用PostgreSQL(仍然很不懂)
因为想要使用推荐的rails-template.需要使用postgres.并初始化了一个用户postgres,密码是postgres.( e.g. $ createuser -d postgres ) ...
- HDU 3938 Portal (离线并查集,此题思路很强!!!,得到所谓的距离很巧妙)
Portal Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Subm ...
- 很强,我终于找到绘制E-R图的正确姿势
前言 不知道大家是不是和我一样,为了追求速度,开发时一般都是直接建表就干,哪管什么E-R图.直到xxx项目找上你,某某客户要E-R图,提供一下吧.这时候就很烦,从头绘制E-R图成本真的很高,今天我就遇 ...
- Meta也很强
<!--http-equiv 必要属性--> <meta http-equiv="Content-Type" content="text/html; c ...
- 很强的PHP图片处理类
/*** 基本图片处理,用于完成图片缩入,水印添加* 当水印图超过目标图片尺寸时,水印图能自动适应目标图片而缩小* 水印图可以设置跟背景的合并度** Copyright(c) 2005 by ustb ...
随机推荐
- js中宏任务和微任务
宏任务包括:<script>整体代码.setTimeout.setInterval.setImmediate.Ajax.DOM事件微任务:process.nextTick.Mutation ...
- 再解 [NOI2017] 整数
提供一个来自 CF 大佬 adament 的有趣思路. 首先我们知道的是一个只增加的 \(b\) 进制整数计数器,如果 \(b\) 是常数那么复杂度是均摊 \(O(1)\) 的.证明只需要考虑将 \( ...
- 【Python基础】变量的作用域与global、nonlocal
在 Python 中,变量的作用域指的是变量可以被访问的范围.Python 中的变量作用域有两种: 局部作用域:变量在函数函数内部的时候,只能在函数内部使用.这样的变量被称为局部变量. 如果在函数内部 ...
- .NET Core 波场链离线签名、广播交易(发送 TRX和USDT)笔记
Get Started NuGet You can run the following command to install the Tron.Wallet.Net in your project. ...
- Stream流根据属性去重
List根据属性去重 创建一个user集合 User user1 = new User("user1", 18, "AAA"); User user2 = ne ...
- GitHub上SSH keys和Deploy keys的区别
平时安装一个git然后去GitHub进行SSH keys 配置最后就开始使用,然后换一台电脑再使用$ ssh-keygen -t rsa -C "your email"生成一个ss ...
- Go 语言 map 是并发安全的吗?
原文链接: Go 语言 map 是并发安全的吗? Go 语言中的 map 是一个非常常用的数据结构,它允许我们快速地存储和检索键值对.然而,在并发场景下使用 map 时,还是有一些问题需要注意的. 本 ...
- Rust的类型系统
Rust的类型系统 类型于20世纪50年代被FORTRAN语言引入,其相关的理论和应用已经发展得非常成熟.现在,类型系统已经成为了各大编程语言的核心基础. 通用基础 所谓类型,就是对表示信息的值进行的 ...
- 抓包分析RST报文
大家好,我是蓝胖子,今天我们来分析下网络连接中经常出现的RST信号,连接中出现RST信号意味着这条链接将会断开,来看下什么时候会触发RST信号,这在分析连接断开的原因时十分有帮助. 本文的讲解视频已经 ...
- 从输入URI到浏览器渲染中间都经历了什么
这篇文章总共分为两个部分,第一部分我会把从输入url到浏览器渲染的整个流程给大致说一下.第二部分我就会一一介绍各个部分的详细作用. 一.从输入url到浏览器渲染的整个流程 1.DNS域名解析 2. ...