• 博客(60)
  • 收藏
  • 关注

原创 《Klustron Tech Talk》直播选题有奖问卷调查,获MySQL系列丛书

我们将在活动截止(截止时间:6月16日24点)后的7个工作日内送出书籍。为了帮助到更多数据库相关从业者并与大家共同成长,我们诚邀您做一个问卷调查,了解您对数据库技术的哪些方面的内容感兴趣并且希望我们在每周的线上技术分享来讲解。您的问卷反馈将助力我们持续提升《Klustron Tech Talk》的课程质量,给朋友们带来更好的直播体验,创造更大的价值。填写调查问卷或者通过扫描以下二维码进行填写。

2023-05-29 17:08:17 118

原创 北京 Meetup 预告 | 内含六个话题,满满干货,期待见面!

北京 Meetup 预告 | 内含六个话题,满满干货,期待见面!

2023-04-27 17:59:55 500

原创 报名开启!KunlunBase今年首场线下MeetUP,期待与您的见面!

报名开启!KunlunBase今年首场线下MeetUP,3月25日期待与您的见面!

2023-03-13 17:08:09 196

原创 【明晚直播】KunlunBase 1.1 版本发布:完善MySQL 兼容性,OLAP性能提升

【明晚直播】赵伟|KunlunBase 1.1版本发布&丁奇|KunlunBase Fullsync 机制优化实践

2023-03-01 11:30:48 151

原创 KunlunBase 产品使用和评测指南

KunlunBase产品使用和评测指南

2022-10-11 16:49:56 905

原创 KunlunBase功能体验范例

KunlunBase功能体验范例

2022-10-10 17:25:09 564

原创 KunlunBase 1.0 发布了!

KunlunBase 1.0 发布了!

2022-08-02 15:09:47 217

原创 KunlunBase 线上Meetup等您来~

7月 16日(周六),KunlunBase线上MeetUP等您来!

2022-07-16 12:49:09 207

原创 昆仑数据库 MySQL 连接协议简介

并且无论在使用PostgreSQL协议的连接还是MySQL协议的连接中,都可以执行昆仑数据库支持的任何语法,包括这些MySQL私有DML语法,也包括标准的SQL语法,以及昆仑数据库支持的任何其他PostgreSQL私有语法。昆仑数据库的计算节点基于PostgreSQL研发,因而直接可以支持PostgreSQL的连接协议,所以使用JDBC、ODBC等通用的数据库连接协议以及使用各类编程语言的PostgreSQL专有的连接库的软件都可以连接到昆仑数据库集群并且正常工作。......

2022-07-12 11:30:49 876

原创 KunlunBase 读写分离方案

在演示的环境中,数据集群由两个shard组成(shard1,shard2),shard1的shard_id=1,shard1包含3个副本(id为1,2,3,id为1的是主节点,id为2和3的是备机。备机的存储节点的硬件配置与主节点一致,在一般的生产使用过程中,备机节点的主要目的是作为主机出现故障后的替换节点,不接受应用程序的直接数据处理请求,因此,在非故障切换的情况下,备机的存储节点资源利用率相对较低。只读语句将被路由到从备机节点,降低了主节点的IO资源利用率,系统整体性能获得提升。......

2022-07-12 11:29:29 215

原创 KunlunBase MeetUP 等您来!

欢迎大家周六下午来KunlunBase 直播间,我们的技术专家会给你讲解 KunlunBase特色的分布式任务框架的设计思想和实现、应用技术,以及KunlunBase独到的读写分离方案及其相比其他类型功能组件的独特优势。学交流和学习软件设计和开发技术和数据库系统应用和管理技术,就来KunlunBase直播间!...

2022-06-30 16:02:16 342

原创 KunlunBase 0.9.1版本Sysbench性能测试报告

kunlun-0.9.1的性能测试主要使用Sysbench进行,分为oltp测试和olap测试两大部分。对于oltp测试,主要包含4种操作read&write、writeonly、update_non_index、update_index,测试目的主要是检查新推出的强一致性模式(rbr),对比MySQL的官方强一致性方案(mgr)性能有多大提升。由于网络不是瓶颈,主要在内网的机器中进行。对于olap测试,则主要包含。......

2022-05-11 17:26:28 684

原创 KunlunBase的Fullsync高可用机制简介

KunlunBase具备完善的容灾和错误处理机制,通过分布式事务两阶段提交算法,以及Fullsync和FullsyncHA机制,可以确保在集群运行期间任意计算节点、存储节点、cluster_mgr等组件发生宕机、重启等故障或者发生网络分区(networkpartition)或者断连时,集群管理的用户数据以及元数据都会是一致的和完整的,不会丢失用户已提交事务的任何数据更新,也不会发生事务部分提交部分回滚等不一致情况,以及发生用户的元数据与用户数据不一致等情况。分布式事务处理两阶段提交机制和原理)。......

2022-05-10 16:17:49 548

原创 KunlunBase功能之insert/update/delete...returning语句

在一些业务场景中,用户需要插入、更新、删除一行或者多行目标数据行,然后获得自己刚刚插入、更新、删除之后的行或者其部分字段的值,包括部分字段构成的任意合法的表达式的值。对于MySQL用户来说,要做到这一点,用户通常需要在一个显式的事务中执行update语句,然后使用相同的查询条件把update的语句取出来。之所以要在显式事务中做,是为了防止其他并发的事务update了本连接刚刚update的行,那样的话,随后的select语句得到行就不是本连接刚刚update之后的行了,因为这些行又被其他事务更新过了。...

2022-05-10 16:14:45 337

原创 Kunlun-Storage vs PostgreSQL OLTP 测试

KunlunStorage是泽拓科技基于Percona-mysql-8.0.26优化的数据库存储服务器,作为KunlunBase分布式数据库的存储节点,我们对percona-mysql做了大量性能增强,补足了其在XA事务处理的容灾和错误处理方面的空白,并增加了一些昆仑数据库集群整体需要的功能,包括fullsync复制,update/delete…returning语句等。1.2.3.PostgreSQL在负载动态变化过程中,有明显的延迟抖动,而Kunlun-Storage性能曲线相对平稳.点击阅读原文。..

2022-04-25 17:53:43 360

原创 KunlunBase对MySQL私有DML语法的支持

为了让MySQL的应用更为便捷地迁移到KunlunDB,我们做了很多兼容MySQL的工作。本篇章主要介绍KunlunDB现在已经支持的MySQL常用的私有DML语法,以及这些语法与原生MySQL的差异。

2022-04-22 17:52:34 667

原创 PostgreSQL vs MySQL TPC-H 测试

上述执行计划首先将几个维度表做join(dates和supplier和part),得到的结果再与事实表lineorderjoin,因而得出了一个超级大的中间结果集,数据量达到10的15次方的数量(查询计划第五行返回的rows),最终导致临时文件耗尽磁盘空间而未能完成查询。PostgreSQL自动采用最优的join次序,大大减少了最后排序的数据量,并且启动了3个并行分割数据集,因此执行的性能比手动优化后的MySQL还快10倍。4张维度表customer,part,supplier,dates。...

2022-04-11 18:14:01 1393

原创 昆仑分布式数据库存储集群 Fullsync 机制

昆仑数据库的Fullsync机制是一种存储集群的高可用机制,它用于确保一个存储集群在发生节点故障、网络分区等问题时,该集群中存在可用的备机含有所有向用户确认提交成功的事务的binlog,以便可以按需选举出新的主节点,确保集群持续可以写入,实现高可用。昆仑数据库的Fullsync机制基于MySQL久经考验的RowBasedReplication(RBR)binlog复制机制,实现了主备复制的强同步,也就是确保主节点上提交的每一笔事务。...

2022-04-07 16:33:57 1089

原创 XPanel管理系统软件说明书(四)之集群备份恢复管理

集群备份恢复介绍

2022-04-07 16:32:57 282

原创 XPanel管理系统软件说明书(三)之集群管理

集群管理功能介绍

2022-04-07 16:27:17 373

原创 XPanel管理系统软件说明书(二)之服务器资源管理

计算机管理功能介绍

2022-04-07 16:24:22 1330

原创 XPanel管理系统软件说明书(一)之用户权限管理

XPanel管理系统主要用于管理Kunlun Databases Cluster,监控集群节点当前的QPS和计算机的cpu等信息。

2022-04-07 16:21:51 540

原创 KunlunBase指导手册(四)之从Oracle实时同步数据

在OGG中,异构数据库之间的数据同步需要为源端创建定义文件。32x86_64HeapSizeFileSize\*7Nullneutral最后,将定义文件从oracle服务器/dirdef/KUNLUNTEST.def复制到KunlunBase服务器的./dirdef/KUNLUNTEST.def。

2022-03-23 11:40:27 448

原创 KunlunBase指导手册(三)之数据导入&同步

对于在线实时数据同步,KunlunBase支持OracleGoldenGate,可以使用OracleGoldenGate将数据从PostgreSQL或其他数据库(Oracle/SQLServer/MySQL等)同步到KunlunBase。由于KunlunBase在插入数据时要求表存在主键,为确保数据迁移的成功,要求在原生PostgrSQL数据库导出数据的过程中分两步执行(第一步,导出数据结构,第二步,导出实际数据)。在恢复过程先恢复数据结构,在导入数据,下面将分两个场景演示具体操作指令。...

2022-03-23 11:04:43 825

原创 KunlunBase 快速入门2.0 (对等部署最佳实践)

一、了解对等部署KunlunDB是计算&存储分离的分布式数据库,支持海量数据处理,可以解决传统数据库分库&分表带来的复杂性问题。KunlunDB的核心组件如下图所示,由计算引擎和存储引擎组成。计算引擎主要负责数据处理计算,是CPU资源密集型服务器,而存储引擎是IO资源密集型服务器,在实际生产环境部署过程中,可以将计算引擎和存储引擎部署在同一台服务器上,以获得资源的有效利用,同时通过不同节点间的组件冗余来实现高可靠性。典型的对等部署结构下图所示:.

2022-03-14 16:26:06 3360

原创 昆仑分布式数据库之ScaleOut介绍

一、分布式数据库的基础核心能力-水平扩容(ScaleOut)数据库系统架构的演变,如实的反映了信息社会不断发展所带来的数据处理规模不断变大这一基本事实。如今,分布式数据库产品已成为各行各业信息系统的存储服务中,应用越来越广泛的技术选型。究其原因,是因为其在海量数据存储管理的扩展能力和性价比方面,较单机数据库有着压倒性的优势。在我们对昆仑分布式数据库的扩容功能正式开始介绍之前,我们首先回顾一下数据库管理系统扩容的常见模式。数据库的扩容大体上分为如下两种模式:垂直扩容(Vertically Sc

2022-03-09 16:44:56 934

原创 KunlunBase集群管理接口

KunlunDB在0.9版本之后,增加了运维监控平台(Xpanel), 通过集群管理(Cluster_mgr)的HTTP命令接口,可以实现对整个集群环境进行管理和监控。以下是详细的命令接口介绍:获取cluster工作状态,POST接口:curl -d "{\"job_type\":\"get_status\",\"job_id\":\"uuid999\"}" http://127.0.0.1:57000由于创建集群,和恢复一个新集群,会生成新的集群名称,通过get_status这个命令获

2022-03-08 14:40:04 1347

原创 KunlunBase 指导手册1.0

KunlunBase是一个开源、高性能的分布式关系数据库,支持混合负载(HTAP)、PB级数据量管理并提供毫秒延迟的新一代数据库解决方案。1.1.1 集群组件架构图1.2 KunlunBase主要组件:1.1.2 KunlunServer(计算节点)计算节点运行无状态计算&查询引擎,与Kunlun Storage进行交互执行SQL 任务,采用异步通信模式,一个计算节点可以协调多个存储节点执行数据处理(增删改查)任务。计算节点从元数据集群获取集群元数据并在本地持久化。Kunlun Server的SQL层兼容

2022-03-08 14:38:10 2726

原创 聊一聊MySQL的存储引擎

一、前言存储引擎(storage engine)是MySQL的专用称呼,数据库行业老大哥Oracle,以及SQL Server,PostgreSQL等都没有存储引擎的说法。MySQL区别于其他数据库的重要特点就是,其插件式(pluggable)的表存储引擎。引擎(engine)是外来音译词,习惯上认为是发动机,好像和数据库搭不上关系。最早MySQL的存储引擎称为“数据表处理器”,可能是听起来太老土,后来才改成高大上的存储引擎。存储引擎的功能是接收上层传下来的指令,然后

2022-02-23 09:32:58 347

原创 聊一聊MySQL索引失效的问题

一、索引原理索引是提高数据库查询性能的一个重要方法。使用索引用可快速找出某个列中包含特定值的行。不使用索引,必须从第一条记录开始读,可能要读完整个表,才能找出相关的行。使用索引就像查字典一样,我们可以根据拼音、笔画、偏旁部首等排序的目录(索引),快速查找到需要的字。之前介绍MySQL存储引擎的文章(聊一聊MySQL的存储引擎),测试对比了两种存储引擎(MyISAM或者InnoDB),使用主键索引查询,效率快了几十倍。虽然索引大大提高了查询(select)速度,但同时也

2022-02-23 09:32:51 875

原创 举例解释一下explain各字段的含义

前言之前文章介绍索引失效的场景(聊一聊MySQL索引失效的问题),用到了explain执行计划,执行计划返回执行过程中每一步的信息,而不是执行它。通过返回的一行或多行信息,显示出执行计划中的每一部分和执行的次序,从而可以从分析结果中,找到查询语句或是表结构的性能瓶颈。今天我们举一些实际的例子,来解释一下explain执行计划各字段的含义。首先建立 用户,角色,关系,分区表。CREATE TABLE table_user(id INT AUTO_INCREMENT,u

2022-02-23 09:32:43 658

原创 举例解释一下MySQL的表锁和行锁

一、锁的概述在计算机中,锁是协调多个进程或线程并发访问某一资源的一种机制。在数据库中,除传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。二、锁的分类2.1 按数据操作的类型分类: 读锁(共享锁):针对同一份数据,多个读操作可以同时进行.

2022-02-23 09:32:34 1762 1

原创 聊一聊MySQL的字符集

一、字符集概述字符集(Character Set)是多个字符的集合,字符集种类较多,每个字符集包含的字符个数不同,常见字符集名称:ASCII、GB2312、BIG5、Unicode等。UTF(Unicode Tranformation Format)是Unicode的其中一个使用方式,即把Unicode转做某种格式的意思,包括UTF-8,UTF-16,UTF-32。UTF-8(8-bit Unicode Transformation Format)是一种针对Unicode的可变长度字

2022-02-23 09:32:14 1940

原创 SaaS&多租户场景下数据库的逻辑架构设计

如果在正常的多租户的应用中,你想要去使用分布式数据库,那么你会考虑哪些重要需求呢?答案不言而喻:性能、安全性、可管理性,可扩展性。这四个需求无非是所有的多租户应用中的共通需求且重要。 为什么?基本原则:性能保证:不跨数据库操作,避免跨节点操作。安全性:用户之间隔离性。可管理性:支持应用的灵活性,业务调整,数据迁移,备份恢复。可扩展性:支持业务弹性扩容。...

2022-02-22 16:22:07 1889

原创 MySQL8.0轻松完成GTID组复制

前言之前文章介绍了MySQL8.0主从复制,以及衍生出来的主主复制(可点如下链接查看)。 MySQL8.0轻松搞定GTID主从复制 MySQL8.0轻松搞定GTID主主复制 今天来聊一聊MySQL8.0的组复制。主从复制技术仅解决了数据同步的问题,如果主服务器宕机,意味着数据库管理员需要介入,应用系统可能需要修改数据库连接地址或者重启才能实现。组复制只要不是大多数节点坏掉就可以继续工作,有自动检测机制,当不同节点产生资源争用冲突时,不会出现错误,按照先到者优先

2022-02-22 16:19:48 361

原创 MySQL8.0轻松完成GTID主主复制

前言之前文章介绍了GTID主从复制,实现了一主多从的MySQL架构,今天我们来介绍一下主主复制的架构。原理:主主复制就是根据主从复制的原理,将两个主库设置互为主从即可。变化:在这两个主库的基础上,还可以搭建双主多从架构。下面介绍在安装好MySQL8的centos8虚拟机上,实现GTID主主复制,以及双主多从复制的过程:虚拟机列表:Master1: 192.168.25.149Master2: 192.168.25.150Slave1:

2022-02-22 16:14:56 915

原创 MySQL8.0轻松完成GTID主从复制

为什么需要主从复制?通俗来讲,如果对数据库的读和写都在同一个数据库服务器中操作,业务系统性能会降低。为了提升业务系统性能,优化用户体验,可以通过做主从复制来减轻主数据库的负载。而且如果主数据库宕机,可快速将业务系统切换到从数据库上,可避免数据丢失。主从复制原理 主库将更新记录保存于Binlog文件中,并通过Binglog Dump线程发送给从库。 从库的I/O线程从主库读取Binlog更新的数据,写入到Relay log中。 从库的SQL线程..

2022-02-22 16:10:31 844

原创 为什么现在大家都不用外键了(二)?

前言MySQL外键(FOREIGNKEY)是表的一个特殊字段,用来建立主表与从表的关联关系,为两个表的数据建立连接,约束两个表中数据的一致性和完整性。之前的第一篇文章相关文章(「技术讨论」为什么大家很少使用外键了?),总结了一些不使用外键的场景以及使用外键的优势之处。本篇文章会基于实例来说明外键约束虽会保证表间数据的关系“始终完整一致”,但在实际操作中,每次做DELETE 或者UPDATE都必须考虑外键约束,会导致开发的时候很痛苦。保持数据的一致性和完整性,主要体现在下面两个

2022-02-22 16:05:39 571

原创 为什么大家很少使用外键了?

背景目前很多公司都不考虑加入外键了,很多人工作中也不怎么使用外键了,毕竟每次做DELETE 或者UPDATE都必须考虑外键约束,会导致开发的时候很痛苦,测试数据极为不方便。在笔者看来,在相应的场景下,如果使用的一个功能弊大于利,可能就不会选择了。所以是否使用外键取决相应的场景,也不可去完全抛弃外键。为什么会很少使用外键呢?目前使用外键确实存在一些不便,这也是大多数人不使用的原因所在。我具体总结了会存在这么几个原因:1、增加数据库压力外键等于把数据的一致性事务实

2022-02-22 16:02:53 3129

原创 事务系统的隔离级别

背景 笔者最近在回顾多版本并发控制(MVCC),上篇章从加锁的角度理解了几个异常场景(有兴趣的朋友可以点击查看「技术讨论」事物系统的几种异常场景),由此可以发现一个递进关系:在解决了上一个问题时,又发现了下一个新问题。因此才引出了,根据这几个异常场景来定义的不同的有递进关系的隔离级别的概念。在对事物系统的隔离级别分析中,我们同样可以发现:每个隔离级别,是用来解决相对一个层次的问题。 事务系统的隔离级别 1、Read-Uncommited 读未提交该隔离级别解决第..

2022-02-22 16:00:09 206

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除