- 博客(12)
- 资源 (29)
- 收藏
- 关注
原创 通过例子看懂MVCC(Multi Version Concurrency Control)
本文简要介绍MVCC并解释其工作原理。也许你已看到很多相关的理论知识,这里希望使用最容易理解的示例进行说明。1. 什么是MVCC(Multi Version Concurrency Control)简言之,一条记录有多个版本。举例:用户A插入一条ID为1的记录(存储该记录在数据页上)。用户B更新ID为1的记录。一条插入记录并被另一个用户更新。首先插入记录,旧版本记录被新的更新语句改变,变成了新版本记录。但新版本记录在数据页上是独立新增,不是更新原来记录。MVCC对每个变化存储不同的版本,而不
2020-12-31 17:31:23 703
原创 PostgreSQL 查询优化与维护命令
不同RDBMS中提供的不同类型统计功能,查询优化器和查询计划器依赖统计信息选择并生成最佳查询执行计划,因此它非常重要。PostgreSQL 数据库也管理不同类型的统计,查询优化器依赖它们生成最佳查询执行计划。1. 为什么统计数据需要更新假设有一张表有100000行记录,但表统计数据没有更新,仅显示1000个元组信息。查询优化器总是查看统计表,而从不直接查看实际表文件。这是,生成的查询执行计划依赖1000行信息,但实际有100000行。PostgreSQL 数据库有两个统计表:SELECT *F
2020-12-31 16:55:52 731
原创 PostgreSQL EXPLAIN
本文学习如何使用PostgreSQL EXPLAIN语句分析SQL执行计划。1. PostgreSQL EXPLAIN语句EXPLAIN语句返回给定SQL语句的PostgreSQL分析引擎生成的执行计划。展示语句中涉及的表如何被索引扫描或顺序扫描等,如果使用多个表,应用哪种join算法。EXPLAIN 语句返回最重要的、有用的信息是返回第一行之前的起始成本和返回完整结果集的总成本。下面是EXPLAIN 语法:EXPLAIN [ ( option [, ...] ) ] sql_statement;
2020-12-30 09:54:23 5474 2
原创 通过psql命令查看PostgreSQL系统对象
本文介绍PostgreSQL系统对象概念,并使用psql命令查看其信息。1. 概述Catalog(目录) 是sql环境中schema(模式)的命名集合。当创建表时,PostgreSQL 存储表定义在系统目录中。系统目录是PostgreSQL 表的集合。我们像对待普通表一样查询这些系统表,但有更简便的方式查看表和索定义。数据库系统对象范围对比:Cluster > Catalog > Schema > Table > Columns & Rows对应图示如下:一个服务
2020-12-27 21:47:50 1593
原创 Elaticsearch 更新文档示例
Elasticsearch提供了更新功能,包括单条更新和批量更新。1. 更新单个文档POST hockey/_update/1{ "script": { "lang": "painless", "source": "ctx._source.last = params.last", "params": { "last": "hockey" } }}2. 更新多个字段POST /seats/_update/3{ "script": {
2020-12-27 21:08:37 246
原创 PostgreSql数据库对象信息及应用
PostgreSql数据库对象信息及应用PostgreSql数据库对象主要有数据库、表、视图、索引、schema、函数、触发器等。PostgreSql提供了information_schema schema,其中包括返回数据库对象的视图。如用户有访问权限,可以也在pg_catalog schema中查询表、视图等对象。1. 查询数据库对象下面通过示例分别展示如何查询各种数据库对象。1.1 表查询PostgreSql 表信息可以从information_schema.tables 或 pg_cata
2020-12-27 20:41:46 1907 1
原创 监控 PostgreSQL 数据库连接
本文讨论PostgreSQL 数据库连接。首先回顾下数据库连接可能的状态,如何检查连接状况、终止空闲连接释放占用资源。1. 概述要修改或读取数据库,首先要创建数据库连接。但每个连接需要占用资源(包括进程和内存空间),系统资源是有限的仅能支撑一定数量的连接。一旦超过限制则会抛出异常或拒绝连接。PostgreSQL 在配置文件postgresql.conf可以通过参数进行有效限制。下面我们看看PostgreSQL已建立连接的几种状态。如何发现连接正在运行或已经空闲了一段时间,对于空闲的连接应该终止并回收资
2020-12-26 20:29:44 713
原创 PostgreSQL 内存参数调优
本文讨论PostgreSQL中一些管理内存参数,并对每个参数提供参考值建议。1. 概述GUC: Grand Unified Configuration 是postgreSQL对数据库参数进行管理的机制。通常理解是对postgresql.conf文件中变量进行修改,或通过set命令对参数进行设置。本文对GUC参数中内存管理相关参数进行说明,用于提升数据库服务器的性能。所有这些参数位于数据库服务器配置管理文件postgresql.conf中($PDATA目录中)。主要包括下面四个参数。Shared_bu
2020-12-26 20:29:07 3313
原创 介绍自定义PostgreSQL 聚集函数
对于借贷事务的银行账户,如何获取过去时间最大余额值?对于入住、离店的宾馆,如果获取过去时间最大客人数量?这两个场景都是求最大活动总量。通过求最大活动总量是学习PostgreSQL聚集函数最佳练习,本文带你学习窗口函数、自定义聚集函数。1. 场景数据为了简化,我们使用简单表结构仅包括amount和id两个列,id为自增列。create table entries( id serial primary key, amount double precision not null);我们使用ra
2020-12-20 20:17:29 1346
原创 介绍 PostgreSQL STRING_AGG() 和 ARRAY_AGG()函数
本文学习如何使用介绍 PostgreSQL STRING_AGG 函数,使用分割连接多个字符串。1. 介绍PostgreSQL STRING_AGG()PostgreSQL STRING_AGG() 函数是聚集函数,使用分隔符连接一组字符串,但结尾不会多余分隔符。语法如下:STRING_AGG ( expression, separator [order_by_clause] )expression 可以解析成字符串的任何有效表达式。如果是其他数据类型,需要显示转换为字符串。separa
2020-12-20 17:21:47 7641
原创 PostgreSQL CAST 转换数据类型
本文介绍PostgreSQL CAST操作转换数据类型。1. PostgreSQL CAST介绍很多时候需要转换数据类型。PostgreSQL 提供了CAST操作实现类型转换。语法如下:CAST ( expression AS target_type );表达式可以是常量、列、表达式目标数据类型即想转换的数据类型*cast :: operator除了上面的语法,还有另外的语法实现同样功能;expression::type,举例:SELECT '100'::INTEGER, '0
2020-12-20 10:47:11 39547 6
原创 介绍MySQL存储引擎及应用
本文介绍MySql几种存储引擎(表类型),即MySql的底层存储特性,利用这些特性可最大化提升数据库性能。1. 存储引擎MySql体哦国内下列几种存储引擎:MyISAMInnoDBMERGEMEMORY (HEAP)ARCHIVECSVFEDERATED每种类型都有其优劣势。关键需要理解每种存储引擎特性并选择最适合一种创建表以提升数据库性能。下面简要介绍每种存储引擎及其特性,让你能够决定什么场景选择哪种类型引擎。1.1 MyISAMMyISAM 扩展之前的 ISAM 存储引擎。M
2020-12-13 20:01:43 255
钻石示例数据,经典的机器学习示例数据,parquet格式、csv格式,方便用户下载学习
2024-09-16
Spring Cloud Spring Boot and Netflix OSS.pdf
2021-08-26
kafka学习资料合集
2020-09-22
嵌套聚集示例数据--nested-data.json
2020-04-04
Elasticsearch Painless Script入门教程--示例数据-sat.json
2020-03-23
Elasticsearch Painless Script入门教程--示例数据-sat.json
2020-03-23
深入理解 significant terms 和 significant text 分组聚集代码 sports&news.json
2020-02-23
Elasticsearch聚合分析实战(2)-employees.json
2020-02-15
Effective Java 3rd Edition
2018-09-18
YSJSW(Yet Another Java Service Wrapper)
2016-08-30
《在Tomcat上安装部署SAIKU》资源下载
2015-02-10
《kettle中使用javascript步骤和fireToDB函数实现自定义数据库查询 》代码
2014-10-29
《kettle中调用java类》示例代码
2014-10-12
《kettle子转换即映射》博客示例代码
2014-10-05
《示例学习kettle之Excel Writer步骤》博客文章示例
2014-09-16
《详解kettle之User Defined Java Class步骤》示例代码
2014-09-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人