公益是一辈子的事, I am digoal, just do it. 阿里云数据库团队, 擅长PolarDB, PostgreSQL, DuckDB, ADB等, 长期致力于推动开源数据库技术、生态在中国的发展与开源产业人才培养. 曾荣获阿里巴巴麒麟布道师称号、2018届OSCAR开源尖峰人物.
标签 PostgreSQL , citus , 新增对象 , 新增数据库 , 新增用户 背景 citus是PG的一个插件,插件主要针对普通SQL(非UTILITY)加HOOK进行了一些ROUTE处理,同时使用UDF对表进行新建分区的操作。
标签 PostgreSQL , 数组 , 字符串 , 字符串处理 , JOIN , where , 类型一致性 背景 Greenplum通常被用作OLAP,在一些用户使用过程中,可能因为数据结构设计,SQL问题等原因导致性能不佳,虽然通过增加节点可以解决问题,但是如果能优化的话,可以节约不少硬件资源。
标签 PostgreSQL , imgsmlr , GiST , 图像特征值 , 小波转换 , citus 背景 续 《PostgreSQL 11 相似图像搜索插件 imgsmlr 性能测试 1 - 单机单表 (4亿图像)》 《PostgreSQL 11 相似图像搜索插件 imgsmlr 性能...
标签 PostgreSQL , imgsmlr , GiST , 图像特征值 , 小波转换 背景 续 《PostgreSQL 11 相似图像搜索插件 imgsmlr 性能测试 1 - 单机单表 (4亿图像)》 使用分区表+dblink异步接口并行调用。
标签 PostgreSQL , imgsmlr , GiST , 图像特征值 , 小波转换 背景 imgsmlr是PostgreSQL的一款支持以图搜图的插件, https://github.com/postgrespro/imgsmlr 这个插件新增了: 1、几种图像特征值数据类型, 2、图像特征值相似算子, 3、图像特征值相似排序索引支持, 4、图像相似排序的索引(通过扩展GiST索引接口实现)支持, 5、png,gif等图像格式特征值提取函数。
标签 PostgreSQL , cube , rum , pg_trgm , smlar , imgsmlr , pg_similarity , gin , gist , 倒排 , 相似 , 向量 , 特征 , 图像 , 文本 , 字符串 , 全文检索 背景 在搜索业务场景中,相似搜索是一个非常常见的需求。
标签 PostgreSQL , 索引 , 所有字段 , 并行创建单个索引 , max_parallel_maintenance_workers , 异步调用 , dblink , 并行创建多个索引 , adhoc查询 背景 PostgreSQL 支持丰富的类型、索引,统计信息。
标签 PostgreSQL , deepgreen , greenplum , citus , tpch , 多机部署 背景 多机部署deepgreen,与greenplum部署方法类似。
标签 PostgreSQL , 后台任务 , DBLINK 异步调用 背景 使用DBLINK异步接口,可以非常方便的实现跑后台任务,如果要让数据库执行若干条SQL,开N个并行执行,同样可以使用DBLINK封装成API进行调用。
标签 PostgreSQL , citus , 窗口函数 背景 窗口函数是分析场景常用的,目前(citus 7.5)仅支持两种场景使用window函数, 1、partition by 必须是分布键。
标签 PostgreSQL , pg_resetxlog , pg_resetwal , 修复控制文件 , pg_controldata , 修复恢复异常 背景 使用pg_resetwal , pg_resetxlog 修复控制文件时,如何强制指定数据库实例systemid? pg_rese...
标签 PostgreSQL , citus , tpc-h 背景 紧接着上一篇文档,本文测试citus的tpc-h能力(包括兼容性). 《PostgreSQL sharding : citus 系列1 - 多机部署(含OLTP(TPC-B)测试)》 《(TPC-H测试 SF=10,SF=200) PostgreSQL 11 vs 10 vs Deepgreen》 https://github.com/digoal/gp_tpch 实际测试过程中,发现CITUS对TPC-H的SQL支持并不完整。
标签 PostgreSQL , citus , sharding , Greenplum , explain , debug 背景 开启DEBUG,可以观察citus, Greenplum的SQL分布式执行计划,下发情况,主节点,数据节点交互情况。
标签 PostgreSQL , llvm , clang , jit 背景 PostgreSQL 11版本开始引入了对JIT的支持,在OLAP类型的SQL有比较大的性能提升。 如果你使用的是YUM安装的PG,clang可能没有加入,在后期编译其他插件时可能遇到类似的报错: 比如pg_hint_plan插件 git clone https://github.
标签 PostgreSQL , citus , tpc-b , cn mx 背景 《(TPC-H测试 SF=10) PostgreSQL 11 vs 10 vs Deepgreen》 测试结果证明PG已经是一个HTAP数据库,可以同时满足OLTP,OLAP的需求。
标签 PostgreSQL , Greenplum , csvlog , gp_toolkit 背景 由于GP为分布式数据库,当查看它的一些日志时,如果到服务器上查看,会非常的繁琐,而且不好排查问题。
标签 PostgreSQL , TPC-H , HTAP 背景 去年测的PostgreSQL 10 vs Deepgreen. 《TPC-H测试 - PostgreSQL 10 vs Deepgreen(Greenplum)》 PG每年发一个大版本,此次PostgreSQL 11即将release,对PostgreSQL 11 beta3 vs Deepgreen v18 测试的TPC-H结果如下。
标签 PostgreSQL , 统计信息 , 唯一值 , 枚举值 背景 PostgreSQL的列统计信息中包含一项高频词,同时包含一项唯一值个数。 pg_stats.n_distinct pg_stats.most_common_vals 同时PostgreSQL允许用户自定义统计信息柱状图BUCKET的个数。
标签 PostgreSQL , plan_cache_mode 背景 plan cache在OLTP中,可以大幅降低生成sql parser, 执行计划的开销。 但是在某些场景中,plan cache可能成为问题,比如AP类型的场景中,由于SQL 输入条件的变化(通常AP业务涉及的条件可能比较容易出现这样的问题),可能导致plan cache并不是最佳的执行计划。
标签 PostgreSQL , 索引 , 所有字段 , 并行创建索引 , max_parallel_maintenance_workers 背景 如何快速给表的所有字段,每个字段都加上索引。 《PostgreSQL 设计优化case - 大宽表任意字段组合查询索引如何选择(btree, gin, rum) - (含单个索引列数超过32列的方法)》 满足任意字段组合查询的需求。
标签 PostgreSQL , ms sql , SQL Server 背景 测试表结构 create table test (id int, info text); 从 PostgreSQL 导入 MSSQL MS SQL bcp与BULK INSERT都不支持stdin,所以我这里使用落地到文件的方法,从PostgreSQL导入MS SQL。
标签 PostgreSQL , ms sql , SQL Server 背景 本文介绍MS SQL on Linux的简单部署,使用。 https://docs.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-red-hat?view=sql-server-2017 后面简单介绍如何将MS SQL迁移到PostgreSQL。
标签 PostgreSQL , ms sql , SQL Server , 类型映射 背景 PostgreSQL与SQL Server的类型映射: 1、常用类型映射 https://www.codeproject.
标签 PostgreSQL , Oracle , nchar , nvarchar , ntext , ms sql , sybase , unicode character , utf8 背景 在Oracle, MS SQL, SYBASE数据库引擎中,有一些这样的字符串类型nchar , nvarchar , ntext。
标签 PostgreSQL , Oracle , DBMS_OUTPUT.PUT_LINE , raise , notice 背景 在函数、存储过程中需要进行一些debug,输出一些过程变量的值时,PG中使用raise notice可以非常方便的得到。
标签 PostgreSQL , intarray , ops , operator , OPERATOR , 操作符路径 , search_path , 优先级 背景 操作符是数据库最常用的要素之一,一个SQL语句中总是会出现它的影子。
标签 PostgreSQL , 无会话 , 客服响应速度 , 触发器 , rule , 窗口查询 背景 通常客服系统可能存在一对多,多对多的情况。 例如, 我们在使用淘宝时,与店家交流时,你根本不知道后面的小二是一个人还是多个人共用一个账号,还有可能是多个人使用了多个账号但是对消费者只看到一个。
标签 PostgreSQL , MySQL , rds_dbsync , mysql , mysqldump , copy , mysql_fdw 背景 将MySQL数据不落地的方式导入PostgreSQL。
标签 PostgreSQL , the database system is starting up , the database system is in recovery mode 背景 当数据库异常停库,再次启动时。
标签 PostgreSQL , 数组 , 文章 , 随机推荐 , 论坛 , 电商 背景 内容推荐是蛮普遍的需求,例如论坛、电商、新闻客户端等。 比较简单的需求:编辑精选一些内容ID,生成推荐列表。
标签 PostgreSQL , 佣金分配 , 树状 , 藤状 , 递归查询 , 传销 背景 早在十年前,PostgreSQL 8点几的版本就支持了递归查询,递归查询的应用非常的广泛,如下: 《PostgreSQL 递归妙用案例 - 分组数据去重与打散》 《PostgreSQL Oracle 兼...
标签 PostgreSQL , PostGIS , 空间数据约束 背景 空间数据有一定的规范,例如SRID的规范。空间类型geometry包罗万象,除了能存储POINT,还能存储多边形,线段等。 这就带来一个有意思的烦恼,当我们业务不够规范时,你可以往GEOMETRY里面存储任意SRID的数据,存储任意的空间对象。
标签 PostgreSQL , 索引 , 复合索引 , 选择 , 成本 , 优化器 背景 当一个表有很多索引时,并且一个QUERY可以使用到其中的多个索引时,数据库会如何做出选择?最终选择哪个,或者哪几个索引呢? 《PostgreSQL 多查询条件,多个索引的选择算法与问题诊断方法》 选择单个索引时,PATH可以选择index scan , index only scan, bitmap scan。
标签 PostgreSQL , SQL , PLPGSQL , 绘制饼图 背景 图像相比文字是更容易被理解的东西,在BI可视化领域,经常会使用图像来代替数值,展示一些信息,例如柱状图、饼图、线图等。
标签 PostgreSQL , 消息平台 , 数组 , in any array 背景 一个多渠道消息平台的数据库设计。 业务规则 1、消息发送给最终用户,一则消息可以发送给多个社交软件平台(因为一个用户可能使用多个软件平台(比如旺旺,WEB版旺旺,淘宝。
标签 PostgreSQL , adhoc查询 , 大宽表 , 任意字段组合查询 , 索引 , btree , gin , rum 背景 大宽表,任意字段组合查询,透视。是实时分析系统中的常见需求: 1、实时写入。
标签 PostgreSQL , 数组 , 多对多 , 一对多 , udf , JOIN 背景 某个系统存储了会员的标签,以及标签的描述信息。业务上需要通过会员ID得到会员的标签,再得到描述信息。 每个会员有若干标签,原来是这么存储的 1、会员标签表,人数5亿左右,每个人平均有几百个标签,1500亿行左右。
内容概要 1、基本SQL语句用法2、数据类型、操作符3、数据库对象类型4、内置函数5、自定义函数sql, plpgsql6、高级SQL用法与应用场景7、事务隔离级别8、锁9、触发器、事件触发器、规则10、分区表11、异步消息 目标 1、学习数据库的使用,数据类型、操作符、对象类型内置函数,高级SQL用法、事务隔离级别和锁。
内容概要 1、初始化数据库实例2、数据库架构3、PG参数介绍、优化4、数据库防火墙介绍与配置5、数据库权限体系、逻辑结构介绍6、连接数据库7、PG 11 新特性 目标 1、熟悉数据库初始化、架构、参数、防火墙、权限体系、逻辑结构。
内容概要 1、介绍Linux环境的数据库相关内核参数、存储、文件系统、资源限制、CGROUP资源隔离等相关配置与优化2、介绍Linux下PostgreSQL的编译安装3、介绍Linux下PostgreSQL的rpm安装 目标 熟悉PostgreSQL在Linux中的软件安装 参考 DBA不可不知的操作系统内核参数 背景:操作系统为了适应更多的硬件环境,许多初始的设置值,宽容度都很高。
标签 PostgreSQL , 培训 , 去O , DBA , 开发者 , 架构师 , 运维 , 决策者 , CTO , adam , PPAS , 阿里云 背景 本系列直播分为十五章 知识图谱 目标群体 开发者、DBA、运维、架构师、企业去O决策者。
内容概要 1、历史介绍2、社区介绍3、特性介绍4、常见部署架构介绍5、国内外常见客户介绍6、常见应用场景介绍7、流行衍生产品介绍(gpdb, citus, agensgraph, pipelinedb)8、基于PG的数据库(antddb, 瀚高数据库) 、云厂商介绍(阿里云aws)9、相比其他开源、商业数据库差异化介绍10、技术交流圈子、学习资料介绍 目标 从PG的历史、社区、架构、客户群、应用场景、生态角度了解PG,同时对于PG与其他企业级商用数据库产品有一个大致的差异化理解,了解PG的学习资料,技术交流圈子。
PostgreSQL 模糊查询最佳实践 - (含单字、双字、多字模糊查询方法)https://github.com/digoal/blog/blob/master/201704/20170426_01.md
用PostgreSQL 做实时高效 搜索引擎 - 全文检索、模糊查询、正则查询、相似查询、ADHOC查询作者digoal 日期2017-12-05 标签PostgreSQL , 搜索引擎 , GIN , ranking , high light , 全文检索 , 模糊查询 , 正则查询 , 相似查询 , ADHOC查询 背景字符串搜索是非常常见的业务需求,它包括: 1、前缀+模糊查询。