暂无图片
夏克 — 大连商品交易所大连飞创信息技术有限公司 金融核心交易系统设计开发
拥有13年工作经验,现于大连商品交易所大连飞创信息技术有限公司从事金融核心交易系统设计开发工作。熟悉PostgreSQL、MogDB、OceanBase、达梦数据库。2022年加入墨天轮开始创作,全年共产出61篇原创技术文章,多次获得优秀文章。积极参与多个数据库主题征文活动,以活动带动深入学习,获得MogDB征文一等奖,3次OceanBase征文二等奖,2次openGauss征文三等奖以及达梦征文二等奖。
2022-01-02 加入墨天轮
暂无图片
暂无图片
夏克
一个打入DBA内部的研发人员
关注TA
写留言
73
文章
76
粉丝
141K+
浏览量
个人成就
发布109次内容
获得202次点赞
内容获得70次评论
获得62次收藏
回答了1次问答
TA的专栏
openGauss源码浅析
收录2篇内容
postgres 源码浅析
收录5篇内容
文章分类
墨力计划
(68)
postgresql
(17)
达梦数据库
(12)
oceanbase征文
(12)
opengauss
(11)
mogdb
(10)
oceanbase
(8)
postgresql 15
(6)
mogdb技术分享
(5)
ebpf
(5)
国产数据库
(4)
ivorysql
(3)
展开
文章档案
2024年01月
(1)
2023年03月
(7)
2023年02月
(3)
2023年01月
(1)
2022年12月
(4)
2022年11月
(12)
2022年09月
(7)
2022年08月
(4)
展开
最新评论
使用vscode编译、调试miniob源码
同样的方法,不能实现单步调试#惊恐;
-#
PostgreSQL + eBPF实现数据库服务可观测
我们已经实现了eBPF对MySQL的细粒度观测,包含SQL执行过程,能够拿到SQL执行过程中具体的资源消耗;拿到审计日志;拿到SQL详细的加解锁;并且做成了一个便于使用的产品DBdoctor,目前我们正在适配PostgreSQL,官网可以免费下载也能直接线上试用,欢迎交流:http://hisensecloud.com/col.jsp?id=126
-愤怒的小强
基于bpftrace对PostgreSQL进行观测
@是全局的,是不是应该 tid + arg0 一起做数组索引?
-sqhua
eBPF实现“零”侵入的慢SQL抓取
有一种幸福,叫做家人是你的依靠;有一种自豪,叫做你正尽己所能为他们遮风挡雨。
-筱悦星辰
pg_lock_tracer实现数据库服务可观测
补充一下,在运行pg_lock_tracer可能会遇到下面的错误: root@LAPTOP-4OF1323N:/home/frank/github/pg-lock-tracer# pg_lock_tracer -x /home/frank/pgsql/bin/postgres -p 29661 ===> Compiling BPF program ===> Attaching BPF probes Traceback (most recent call last): File "/usr/local/bin/pg_lock_tracer", line 33, in <module> sys.exit(load_entry_point('pg-lock-tracer==0.5.4', 'console_scripts', 'pg_lock_tracer')()) File "/usr/local/lib/python3.10/dist-packages/pg_lock_tracer/pg_lock_tracer.py", line 806, in main pg_lock_tracer.init() File "/usr/local/lib/python3.10/dist-packages/pg_lock_tracer/pg_lock_tracer.py", line 664, in init self.attach_probes() File "/usr/local/lib/python3.10/dist-packages/pg_lock_tracer/pg_lock_tracer.py", line 759, in attach_probes self.register_probe( File "/usr/local/lib/python3.10/dist-packages/pg_lock_tracer/pg_lock_tracer.py", line 708, in register_probe raise ValueError(f"Unable to locate function {function_regex}") ValueError: Unable to locate function ^FastPathGrantRelationLock$ 主要原因是您内核版本比较低,可以升级内核版本,或者修改python脚本,不跟着FastPathGrantRelationLock这个函数。
-夏克
测评报告:文件导入哪家强?
都用缺省数据库参数?这个测试相当不严谨。
-Raptor
动态
文章 ·73
数说 ·16
问答 ·1
文档 ·36
课程 ·0
视频 ·0
活动 ·0
关注
留言板·1
新年快乐
发布数说
2024-02-10
基于eBPF的交易系统可观测技术
eBPF(Extended Berkeley Packet Filter)技术是最近10年linux内核最热门也是最具影响力的技术之一,随着网络和云原生技术的飞速发展,eBPF被广泛的应用于网络和安全、性能分析、容器和云原生、运维和排障以及对应用系统的观测。本文将针对如何使用eBPF技术对交易系统运行状态、处理能力和性能热点观测进行实践。eBPF技术的引入会在交易系统的开发、测试、运维阶段极大提高效率并降低成本,对性能优化,辅助测试以及生产运维期间的故障定位和排查提供有效的手段。
发布文章
2024-01-02
数据库可观测技术(eBPF)
介绍如何使用eBPF技术实现数据库服务可观测。
发布合辑
2023-03-25
基于bpftrace对PostgreSQL进行观测(续)
uprobe是eBPF中的一种类型,它可以让用户空间的程序在应用程序的用户空间地址上安装观察点(probe),并在应用程序执行到该地址时执行自定义的代码。使用uProbe,用户可以监控应用程序的函数调用、系统调用、信号处理等事件,从而实现一些特定的功能,如性能分析、错误排查、安全监控等。
发布文章
2023-03-25
基于bpftrace对PostgreSQL进行观测
前面几篇文章介绍了如何使用eBPF对数据库(PostgreSQL、OceanBase)进行观测,但给出的几个例子还是需要进行编码的,需要一些C/Python的基础,严格说还是需要“造轮子”的过程。因此对DBA来说并不是十分友好,这也有悖于我做这件事情的初衷。解决这个问题大概有两种思路,一是尽量开发一些通用的工具,二是寻求更简单的方法或工具,前者我试图筹划去写一套工具集(可能周期会比较长),而后者正是今天要介绍的一个更加工具——bpftrace。
发布文章
2023-03-17
eBPF实现“零”侵入的慢SQL抓取
最近写了几篇eBPF结合数据库的帖子,但都是“Hello World”级别的简单例子,意在抛砖引玉,希望能够将可观测技术与数据库领域更好的结合。但有小伙伴反馈由于例子过于简单且没有什么实践性的意义,所以不太好理解eBPF技术到底能做到什么程度的可观测、怎么辅助DBA的日常运维和问题排查?因此,这篇文章通过一个完整的例子介绍我们经常遇到的一个场景“慢SQL抓取”,
发布文章
2023-03-15
pg_lock_tracer实现数据库服务可观测
pg_lock_tracer是一个开源项目,虽然它未必能用到生产上,但它们非常酷,我认为它们展示了如何使用eBPF监视Postgres的前景。pg_lock_tracer的灵感来自于pg_locks表所展示的内容,即当前由哪个Postgres连接持有哪些锁。这里的区别在于pg_lock_tracer会查看每个锁定调用并随时间进行总结。显然,这会带来一些额外的开销,因此这不一定是您一直在生产系统上运行的东西,但如果您面临无法通过其他方式进行调试的问题,这可能是有意义的。
发布文章
2023-03-14
PostgreSQL 16中WAL日志的改进
Write-Ahead Logging 是PostgreSQL的一个关键特性,通过记录所有对数据库的更改,实现了数据的持久性和一致性。WAL允许快速的崩溃恢复和复制,是PostgreSQL架构的基本部分。在PostgreSQL 16中,WAL系统发生了一些重要的改进,包括记录格式的改变和WAL重放的Just-in-Time 编译。本文将详细介绍这些改变及其工作原理,以及它们的优缺点。这些改进提高了性能、复制和崩溃恢复能力,使PostgreSQL更加强健和易于使用。这个标志表示对表中的“热点”进行了更改,即经常更新的区域,例如序列的当前值或索引的根页面。这个信息有助于数据库在回放WAL记录时进行优化,通过减少在恢复期间需要从磁盘读取和处理的数据量。为实现这个功能,PostgreSQL添加了一个新的WAL记录类型XLOG_HOT_STANDBY,其中包含了HOT标志和修改表的相关信息。PostgreSQL 16的WAL记录格式还增加了一个新的记录类型XLOG_INDEX_DELETE,用于记录从索引中删除元组的情况。当恢复WAL记录时,PostgreSQL会解码记录并使用JIT编译器将其转换为可执行的代码。
发布文章
2023-03-13
「OceanBase 征文」OceanBase 4.0 改装:另一种全链路追踪的尝试
大部分的DBA可能没有使用过eBPF技术,说起来算是一个比较小众的技术领域,一些Linux内核研发人员可能比较熟悉。在一些开源数据库中,如MySQL、PostgreSQL中已经使用了相关技术,可以参考我最近的一篇文章《[PostgreSQL + eBPF实现数据库服务可观测](https://www.modb.pro/db/617157)》。eBPF出现的早期主要是用于网络抓包和网络包的过滤,类似tcpdump、wareshark之类的抓包工具,后来用来替代内核模块的部分功能,以非侵入式的方式拓展内核模块的功能(主要是监控、过滤、负载均衡等)。eBPF技术还是比较复杂的,因此很难用较短的篇幅将它讲透彻。本文主要是抛砖引玉,通过一个例子介绍如何使用eBPF对OceanBase进行观测。例程中会修改OceanBase源码,目的是埋入一些探针,通过eBPF内核程序采集应用数据,并提供给eBPF用户程序进行展示。
发布文章
2023-03-07
PostgreSQL + eBPF实现数据库服务可观测
本文通过一个demo简单介绍了如何使用eBPF技术观测PostgreSQL服务端,eBPF技术比较低调,文章并没有详细的进行讲解(内容很多)。通过BCC框架的搭建也相对比较麻烦,感兴趣的小伙伴可以自行了解。PostgreSQL共有57个跟踪点供观测,大家可以根据具体场景的需要编写BCC的Python脚本
发布文章
2023-03-03
ChatGPT眼中的墨天轮
发布数说
2023-03-03
核心系统国产平台迁移验证
信息技术应用创新,旨在实现信息技术领域的自主可控,保障国家信息安全。金融领域又是关系国家经济命脉的行业,而对核心交易系统的信息技术应用创新是交易所未来将要面临的重大挑战。为了推进国产化进程,选取核心交易系统的典型模块,实践了基于鲲鹏平台的迁移验证,在各技术栈迁移流程方法、性能调优、典型问题等方面,做了大量的探索与尝试
发布文章
2023-02-23
国产数据库企业应用开发文章整理
之前零零散散写了一些关于数据库应用开发相关的文章,今天梳理了一下,便于大家参考。
发布文章
2023-02-10
Pandoc安装、使用、快速上手
如果你需要将文档从一种格式转换成另一种格式,那么Pandoc是你的一把瑞士军刀,Pandoc可以将下列格式文档进行相互转换。 `Markdown`、`Microsoft Word`、`OpenOffice/LibreOffice`、`Jupyter notebook`、`HTML`、`EPUB`、`roff man`、`LaTeX`、甚至是`PDF`。当然Pandoc还包括很多类型文档的转换,这里就不一一例举了,可以参考[About pandoc](https://www.pandoc.org/index.html)。
发布文章
2023-02-06
MySQL LOAD VS DM8 dmfldr
某业务系统从MySQL迁移至达梦后,有导入业务文件的功能使用MySQL的LOAD方式将csv文件导入到指定的表中。迁移到达梦后,该功能需要进行对应的调整(因为达梦没有LOAD功能),但达梦提供了dmfldr来实现快速的将文件装载到数据库的表中,从目前业务的需求上看,达梦的dmfldr是可以替代MySQL的LOAD功能。针对这个需求,本文使用一个demo来对比LOAD和dmfldr的使用与性能差异。
发布文章
2023-01-13
【与达梦同行】达梦驱动图谱
达梦提供了大部分主流开发语言的驱动接口,在我用使用过的国产数据库中对客户端驱动的支持应该算是非常不错的。本文主要介绍达梦的驱动开发,通过实际操作,从环境搭建到实践验证,介绍了达梦各种语言驱动的详细使用过程,由于篇幅原因,将演示代码提交到gitee仓库上供大家参考。
发布文章
2022-12-15
openGauss洗冤录 之 copy from
前文提到使用openGauss的copy from导入csv文件耗时是mysql的2倍,是PostgreSQL的6倍,这个结果与我预期结果有较大的差距。由于之前的测试都是基于各数据库产品的默认配,所以,未必能反应出其真实性能,尤其是openGauss,我个人认为其性能还是被严重低估。这篇文章将通过参数的调整/优化,看看是否可以还原openGauss的真实性能。由于水平有限,也欢迎大家留言反馈更好的优化方案。
发布文章
2022-12-10
测评报告:文件导入哪家强?
最近业务上遇到一个场景,需要将一个/多个文本文件导入到与其结构对应的表中。功能需求比较简单,大部分的关系数据库基本都支持这个功能。基于上面的场景把手头上的几款开源数据库和国产数据库的文件导入功能进行了性能对比。
发布文章
2022-12-10
测评:IvorySQL COPY VS MySQL LOAD
# 测评:IvorySQL COPY VS MySQL LOAD # 概述 > IvorySQL/PostgreSQL的COPY和MySQL的LOAD都是快速加载文件的利器,本文将对两个功能进行性能对
发布文章
2022-12-08
Ubuntu 22.04.1 LTS 下编译安装IvorySQL
IvorySQL可以在Linux, OSX, Unix和Windows平台上构建。虽然官方给出了Linux的编译安装步骤,但是实际上并不适用于Ubuntu。本文主要演示IvorySQL在Ubuntu 22.04.1 LTS 上的编译、部署及运行。
发布文章
2022-11-20
OCI客户端应用Ctrl-C无法退出问题
• 修改sqlnet.ora文件(改文件与tnsnames.ora在同一个目录),增加以下内容: ```bash DIAG_ADR_ENABLED=FALSE DIAG_DDE_ENABLED=F
发布文章
2022-11-18
「更易用的OceanBase」| OceanBase TableAPI实践案例(Rust)
# 引子 这是[OceanBase TableAPI实践案例(Java)](https://www.modb.pro/db/554509)的姊妹篇,上一篇比较全面的比较全面的介绍了TableAPI的相
发布文章
2022-11-17
「更易用的OceanBase」| OceanBase TableAPI实践案例(Java)
# 引子 之前的一篇文章[《OceanBase 4.0 我回来给你点个赞》](https://www.modb.pro/db/545614)里面提到了关于OceanBase驱动/接口和扩展性的一些问题
发布文章
2022-11-12
TDSQL高可用整理
# 系统架构 TDSQL PostgreSQL版采用分布式集群架构,如下图所示。 该架构分布式无共享(share nothing)模式,节点之间相应独立,各自处理自己的数据,处理后的结果可能向上层汇总
发布文章
2022-11-12
PolarDB高可用整理
# 高可用架构 ![图片.png](https://oss-emcsprod-public.modb.pro/image/editor/20221112-932de379-b319-4ee2-bc22
发布文章
2022-11-12
AnalyticDB PostgreSQL高可用整理
# AnalyticDB PostgreSQL体系结构 AnalyticDB PostgreSQL版基于开源项目Greenplum构建,由阿里云深度扩展,兼容ANSI SQL 2003,兼容Postg
发布文章
2022-11-11
TiDB高可用整理
# TiDB 整体架构 在内核设计上,TiDB 分布式数据库将整体架构拆分成了多个模块,各模块之间互相通信,组成完整的 TiDB 系统。对应的架构图如下: ![图片.png](https://oss
发布文章
2022-11-11
达梦高可用整理
# 概述 > 达梦共有3中高可用架构,分别是:共享存储(DSC)、主备读写分离、透明分布式架构。 # 共享存储集群 DMDSC 集群是一个多实例、单数据库的系统。多个数据库实例可以同时访问、修改同
发布文章
2022-11-10
openGauss/MogDB高可用整理
# openGauss主备模式 ## 主备架构 ![图片.png](https://oss-emcsprod-public.modb.pro/image/editor/20221110-35d8caf
发布文章
2022-11-10
OceanBase高可用方案整理
一个集群由若干个 OBServer 节点组成,这些 OBServer 节点分属于若干个区,每个节点属于一个区。每个区具有 IDC 和地域两个属性,描述该区所在的 IDC 及 IDC 所属的地域。区的 IDC 和 Region 属性需要反映部署时候的实际情况,以便集群内的自动容灾处理和优化策略能更好地工作。在 OceanBase 数据库中,租户是资源分配的单位,是数据库对象管理和资源管理的基础,对于系统运维,尤其是对于云数据库的运维有着重要的影响。在数据安全方面,OceanBase 数据库不允许跨租户的数据访问,以确保用户的数据资产没有被其他租户窃取的风险。在资源使用方面,OceanBase 数据库表现为租户"独占"其资源配额。OceanBase 数据库参考传统数据库分区表的概念,把一张表格的数据划分成不同的分区。在分布式环境下,为保证数据读写服务的高可用,OceanBase 数据库会把同一个分区的数据拷贝到多个机器。OceanBase 数据库实现了原生的两阶段提交协议,保证分布式事务的原子性。为了利旧企业现网的基础设施,OceanBase 提供了同城两机房和两地三中心两种方案。
发布文章
2022-11-07
「更易用的OceanBase」| OceanBase 4.0 我回来给你点个赞
前两天看到OceanBase4.0正是发布,不禁有点感慨,关注OceanBase已半年有余,第一次与OB相识是通过一次OceanBase的征文比赛,写了一篇《Hello OceanBase!开启OB二次开发》 的帖子,帖子最后对OB提了一些建议,今天回头看看,真心想给你点一个大大的赞,赞OB对用户体验的关注,赞国产数据库人砥砺前行,不负韶华的信念!
发布文章
2022-11-06
libstdc++-manual.pdf
上传文档
2022-09-22
PostgreSQL Development Essentials.pdf
上传文档
2022-09-21
Effective C++
链接:https://pan.baidu.com/s/1Ulp-KNLfxVkKP6zgMmeYDg提取码:vsam
上传资源
2022-09-21
openGauss博客今天是不是蹦了?
发布数说
2022-09-20
PostgreSQL.Replication.2nd.Edition.pdf
上传文档
2022-09-20
《Python Cookbook》第三版中文v3.0.0
链接:https://pan.baidu.com/s/1cwZ6K-_gGMDWSlAqDwDeng提取码:w2ie
上传资源
2022-09-20
openGauss账本数据库,你不知道的那些事儿
本文将通过对比官方文档关于“设置账本数据库”中的几个章节,结合源码来说说文档中操作步骤背后的原理。
发布文章
2022-09-19
Redis运维实践.pdf
上传文档
2022-09-19
Oracle 11g数据库管理员指南-刘宪军
链接:https://pan.baidu.com/s/1wNhQy3ru92UtF_I4nP1_7Q提取码:uupk
上传资源
2022-09-19
React与Redux开发实例精解 (前端撷英馆)
链接:https://pan.baidu.com/s/11RzXY9Q3MOkiSDxl9hm0Pg提取码:sgwy
上传资源
2022-09-18
Learning PostgreSQL.pdf
上传文档
2022-09-17
Servlet JSP和Spring MVC初学指南
链接:https://pan.baidu.com/s/1UZ0qwHa9Rs-ELhKZLHutmg提取码:x5kl
上传资源
2022-09-17
Vue.js权威指南 (前端撷英馆)
链接:https://pan.baidu.com/s/1GjB9afZSSm5JOsrs0OpVuQ提取码:f4p6
上传资源
2022-09-16