【PostgreSQL 创新营】第二课:认识PostgreSQL中与众不同的索引 答疑汇总

本文涉及的产品
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
云数据库 RDS SQL Server,独享型 2核4GB
RDS PostgreSQL Serverless,0.5-4RCU 50GB 3个月
推荐场景:
对影评进行热评分析
简介: 【PostgreSQL 创新营】第二课:认识PostgreSQL中与众不同的索引 答疑汇总
  1. 怎么系统的学一下pg库,或者数据库的这些原理性的东西
    德哥Github地址:https://github.com/digoal/blog/blob/master/README.md
    视频教程:https://github.com/digoal/blog/blob/master/201901/20190105_01.md

  2. 听说pg是多模数据库,这里的多模我应该怎么理解呢?
    可以理解为支持多种数据模型, 关系模型, nosql模型, 图谱模型, 时序模型, 流处理模型, 机器学习模型等. 同时支持模型扩展.

  3. 为什么要手动触发统计信息更新?PG做不到自动更新?
    支持自动, 有后台analyze进程。但是需要等调度, 一般1分钟左右(可以通过参数设置间隔), 遍历所有database。

  4. GIN索引中文能用么?
    能用。

  5. 中文分词怎么做?
    模糊查询不用分词;分词搜索才需要分词, 分词用zhparser, jieba等分词插件, 采用tsvector文本向量类型, tsquery搜索语法

  6. 9.5 pg_hba. Conf 改的话 必须重启数据库吗
    不需要重启, reload 就可以

  7. 索引相关问题,PostgreSQL 9种索引的原理和应用场景(btree , hash , gin , gist , sp-gist , brin , bloom , rum , zombodb , bitmap)
    https://github.com/digoal/blog/blob/master/201706/20170627_01.md

  8. PG用的是堆组织表还是索引组织表?普通索引数据结构是B树还是B+树?
    https://github.com/digoal/blog/blob/master/201605/20160528_01.md

  9. 请问 like "%XXX%"走索引的底层算法原理大概是什么样的?有参考的连接资料吗?
    https://github.com/digoal/blog/blob/master/202009/20200912_01.md

  10. PG的负载均衡有什么实现方案
    读写分离, pgpool-II或业务实现. sharding 采用shardingsphere或citus实现, 也可以使用现成等产品例如polardb, antdb, tbase等.
    https://github.com/digoal/blog/blob/master/202002/20200214_03.md

  11. pg库分区表怎么实现的,和分库分表之间改如何选用。
    继承.分区表建议使用PG新版本, 老版本在优化器方面有性能问题.
    满足业务需求等情况下优先使用分区. 分库会引入更多的业务限制.

  12. 主从结构,从库为什么也会有事事务,来自xcat字段
    事务解决数据库访问隔离,原子性等问题, 例如rc,rr,ssi隔离级别, 不管在主还是从库, 只要有隔离需求, 都需要开启事务. 所以从库也可以看到事务.

  13. pg数据量达到多大量的时候适合做分区?做表分区后会影响整体性能吗?
    取决于硬件性能以及业务使用模式.
    假设硬件足够好, update频率高的表建议单分区的大小满足垃圾回收的速度. 而更新不频繁的表, 可以大很多再分区, 可能达到上百GB再考虑分区.

  14. PG中遗传查询适用于什么场景,geqo_threshold设置多少合适呢?
    高并发多表关联查询, 减少优化器穷举开销.
    建议默认值.

  15. PG可以读取xml文件里面的二级或者三级标签的内容吗?可以的话如何实现?
    建议使用jsonb.
    是否支持二三级标签内容检索具体看pg的xml文档

  16. 查IP的那个例子里,多加一个索引,反而并没有变得高效,那些情况会发生这种状态?怎么避免?
    请再看一看视频, 注意用了哪个索引. ip范围搜索使用gist索引加速.

  17. 默认开启autovacuum,造成数据库夯住,请问原因是什么?我看手册只是写了是一些情况下,具体什么没说。有什么方法来避免出现这种情况吗?
    autovacuum锁粒度很小, 除了DDL会发生冲突, 其他不会有锁冲突, 建议再现场分析.

  18. 问下pg插件多了会会不会影响性能,有这方面的tps测试么
    不会影响.

  19. 我有个权限网点过滤的问题。一个1000万行的表,cst_id,sitid(数组) 。一个1000行的sit表,值唯一。用sit表过滤这个客户表如何能做的最快?
    数组包含查询使用gin索引.

  20. 千万级数据 多表关联的场景pg适合吗
    适合. 有nestloop, merge, hash等多种join方法. 支持并行计算加速大量数据join的运算.

  21. pg怎样将大数据量的查询结果快速导入另一张表
    inset into select ...

  22. PG 库的执行计划怎么分析,有没有文档之类的
    有文档, 在德哥的github的里面有视频讲解

  23. MSSQL有清空SQL缓存:DBCC FREEPROCCACHE
    我们pgsql有没有类似的清空SQL缓存 sql
    如果需要清空plan cache使用PG discard 语法
    如果是清空shared buffer使用外置插件

  24. 请问pg在图数据库应用上怎么优化和设置索引?
    使用CTE递归, 单层索引做到最有就可以.

  25. 能提高一个 pg 12 postgres.conf 启动参数文件 参考 发个链接供参考就可以
    德哥github里面有

  26. 本人是从mysql过来的,在mysql中create schema;和create database是一样的。PG中schema和database的区别是什么?
    德哥github里面有一篇pg逻辑架构体系介绍
    PG的结构是cluster-database(s)-schema(s)结构, 每一层都是隔离的, 权限也隔离.

  27. oracle-PG的异构迁移,函数和存储过程有好的解决办法吗?
    Ora2PG或者使用DSG收费产品, 阿里云adam等.

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
目录
相关文章
|
11月前
|
存储 关系型数据库 数据库
PostgreSQL技术大讲堂 - 第28讲:索引内部结构
从零开始学PostgreSQL技术大讲堂 - 第28讲:索引内部结构
574 2
|
10月前
|
关系型数据库 Go 数据库
《提高查询速度:PostgreSQL索引实用指南》
《提高查询速度:PostgreSQL索引实用指南》
472 0
|
11月前
|
关系型数据库 分布式数据库 数据库
PolarDB for PostgreSQL 14:全局索引
PolarDB for PostgreSQL 14 相较于 PostgreSQL 14,提供了更多企业级数据库的特性。本实验将体验其中的全局索引功能。
792 0
|
11月前
|
弹性计算 关系型数据库 OLAP
AnalyticDB PostgreSQL版向量索引查询
本案例对比了传统查询和使用向量索引执行查询的执行时间,助您体验使用向量索引查询带来的高效和快捷。
844 0
|
存储 SQL 关系型数据库
PostgreSQL插件HypoPG:支持虚拟索引
PostgreSQL插件HypoPG:支持虚拟索引
348 0
|
存储 缓存 关系型数据库
PostgreSQL 14新特性--减少索引膨胀
PostgreSQL 14新特性--减少索引膨胀
437 0
|
关系型数据库 PostgreSQL 索引
PostgreSQL通过索引获取heap tuple解析
PostgreSQL通过索引获取heap tuple解析
124 0
|
存储 SQL 关系型数据库
PostgreSQL的B-tree索引(下)
PostgreSQL的B-tree索引(下)
111 0
|
存储 算法 关系型数据库
PostgreSQL的B-tree索引(上)
PostgreSQL的B-tree索引
110 0
|
3月前
|
SQL 关系型数据库 数据库
RDS PostgreSQL索引推荐原理及最佳实践
前言很多开发人员都知道索引对于数据库的查询性能至关重要,一个好的索引能使数据库的性能提升成千上万倍。但给数据库加索引是一项相对专业的工作,需要对数据库的运行原理有一定了解。同时,加了索引有没有性能提升、性能提升了多少,这些都是加索引前就想知道的。这项繁杂的工作有没有更好的方案呢?有!就是今天重磅推出...
84 1
RDS PostgreSQL索引推荐原理及最佳实践

相关产品

  • 云原生数据库 PolarDB
  • 云数据库 RDS PostgreSQL 版