草庐IT

postgresql-performance

全部标签

PostgreSQL Log 日志模块详解

本文讲的是操作日志,非WAL日志。文章目录背景日志模块原理Syslogger核心模块日志消息通信日志轮转问题一问题二问题三问题四问题五存在的问题刷盘性能日志轮转参考资料背景PG的日志模块是一个相对独立的模块,主要功能就是打印用户的操作日志以及一些异常报错信息。本文仅讲述logging_collector参数开启的情况。日志模块原理Syslogger核心模块PG有各种各样的进程,其中syslogger进程专门用于打印日志信息。而其余进程打印日志的方法如出一辙:将需要打印的信息发送给syslogger进程,由其统一负责打印。syslogger的大体逻辑如下图所示:postmaster进程在SysL

node.js - nodejs 中的 ORM Bookshelf + postgresql 或 MongoDB 数据库?

我需要在两个数据库之间进行选择。在一种方法中,它将存储关系数据,但要使用它我想使用BookshelfORM。换句话说,我可以使用MongoDB,并将数据存储为一个对象,而无需使用ORM将数据作为一个对象来使用。那么,哪个是CRUD方法的首选?该应用程序旨在尽可能快。数据样本:{"ownedBy":"(someProjectID)","keyword":"node","references":[{"type":"post","groupId":-1478414,"messageId":14578,"text":"Node.jsisgreatlanguage!"},{"type":"com

PostgreSQL教程:PostgreSQL配置远程连接

要搞两个配置信息,一个关于postgreSQL的远程连接配置以及postgreSQL的日志配置。PostgreSQL的主要配置放在数据目录下的,postgresql.conf以及pg_hba.conf配置文件这些配置文件都放在了#这个目录下/var/lib/pgsql/12/data上图可以看到,postgreSQL的核心文件,都属于postgres用户,操作的时候,尽可能的别用root用户,容易玩出坑,尽可能先切换到postgres用户去玩。远程连接配置PostgreSQL默认情况下不支持远程连接的,这个跟MySQL几乎一样MySQL给mysql.user追加用户,一般是采用grant的命令

performance - MongoDB 按 ID 慢查询

我最近将我的MongoDB数据库从WindowsServer迁移到了CentOS。版本是2.4.9。我注意到我通过_id字段检索记录的速度很慢!我在周末运行了一个修复数据库,但没有解决问题。我有这种通过ID检索记录的方法(使用IN运算符)(使用springdatamongodb1.4.1.RELEASE):@OverridepublicMapfindAsMapIds(finalString[]ids,finalComponentType...comps){if(null==ids||0==ids.length){returnnull;}Mapresult=newHashMap();fi

postgresql-常用日期函数

postgresql-常用日期函数简介计算时间间隔获取时间中的信息截断日期/时间创建日期/时间获取系统时间时区转换简介PostgreSQL提供了以下日期和时间运算的算术运算符。获取当前系统时间selectcurrent_date,current_time,current_timestamp;--当前系统时间一周后的日期selectcurrent_date+interval'7day',current_time,current_timestamp;计算时间间隔age(timestamp,timestamp)函数用于计算两个时间点之间的间隔,age(timestamp)函数用于计算当前日期的凌晨1

performance - 如何使用 mongostats 诊断 mongodb 内部的性能问题

我一直在使用mongostats来诊断我的mongodb实例中的整体事件。我如何使用它来诊断性能问题/降级?我真正有兴趣深入了解的一个字段是锁定百分比和基于所有其他字段结果的预期行为。我觉得这个功能有点含糊,需要进一步完善。 最佳答案 锁定的%是全局写锁(记住,mongo有一个进程范围的写锁)在每个样本中被占用的时间百分比。当您增加写入次数(插入、更新、删除、db.eval()等)时,该百分比会增加。高值意味着数据库花费大量时间被锁定以等待写入完成,结果是在释放锁之前无法完成任何查询。因此,整体查询吞吐量将减少(有时会显着减少)。“

同时,postgresql,字符串串联和记录排序

我有一组带有“数据”字段的记录,实际上是JSON对象。我想在对此记录进行分类后,将这些记录的某些JSON对象串联。这是我的查询:selectstring_agg(data,',')fromtimeseriesdataTS,atomicseriesATwhereAT.timeseriesdata_ptr_id=TS.idANDAT.atomic_id=11ANDdatebetween'2016-03-01'and'2016-03-30'以上(几乎)做我想要的,但是我想知道是否可以按字段对数据进行排序timestampTS表。看答案您无法在ORDERBY条款,因为那时您剩下的只是一行包含所有的da

PostgreSQL常用字符串分割函数整理

1.SPLIT_PARTSPLIT_PART()函数通过指定分隔符分割字符串,并返回第N个子串。语法:SPLIT_PART(string,delimiter,position)string:待分割的字符串delimiter:指定分割字符串position:返回第几个字串,从1开始,该参数必须是正数。如果参数值大于分割后字符串的数量,函数返回空串。示例:SELECTSPLIT_PART('A,B,C',',',2);--返回B2.STRING_TO_ARRAY该函数用于分割字符串至数组元素,语法:string_to_array(string,delimiter[,nullstring])stri

performance - "nscanned"查询上的 "update"值非常高 - 似乎高于所有索引中所有条目的总和

我在偶尔的更新查询中得到非常高的“nscanned”数字,而“nscannedObjects”相对较低。我从mongodb日志中获取这些数字,作为慢速查询自动记录的一部分(这些更新需要100毫秒到500毫秒之间的任何时间)。更新后的集合有198K个项目,大小刚刚超过100MB。它有许多不同的字段(超过30个),以及这些字段及其组合的31个索引。这是来自MongoDB.log的完整条目-包括查询和结果:2014-09-22T11:55:22.507+0000[conn45755]updatemydatabase.mycollectionquery:{_id:ObjectId('53d13

performance - mongodb - 推荐用于大量数据点的树结构

我正在从事一个项目,该项目记录跨多个地区的商品价格历史记录,并且我计划将数据存储在mongodb集合中。由于我对mongodb比较陌生,所以我很好奇对于大量数据,推荐的文档结构可能是什么。情况是这样的:我正在记录200多个地区的大约90,000件商品的价格历史记录。我希望每小时记录每件商品的价格,并为任何给定商品提供2周的历史记录。结果大约是(90000*200*24*14)~=60亿个数据点,或者每个项目大约67200个。每天将运行一次清理查询以删除超过14天的记录(更具体地说,将其存档到gzip压缩的json/文本文件中)。就我将从中获取的数据而言,我主要对两件事感兴趣:1)特定区