防止集群制造技术

技术编号:39586698 阅读:5 留言:0更新日期:2023-12-03 19:38
本发明专利技术提供一种防止集群

【技术实现步骤摘要】
防止集群SQLite数据库并行读写死锁的方法及装置


[0001]本专利技术属于分布式文件系统的集群配置
,具体涉及一种防止集群
SQLite
数据库并行读写死锁的方法及装置


技术介绍

[0002]SQlite
数据库是轻型数据库,是一种文件型数据库,本身不支持网络访问,作为轻量级数据库,
SQLite
数据库存储在单机单文件,一个
.sqlite
文件就包含了
SQLite
数据库所有的东西

[0003]NAS
,是
Network Attached Storage
的简称,网络附属存储,就是连接在网络上,具备资料存储功能的装置,因此也称为网络存储器
。NAS
服务器是一种专用数据存储服务器,以数据为中心,将存储设备与服务器彻底分离,集中管理数据,从而释放带宽以及提高性能
。NAS
集群由一组
NAS
服务器组成,不同的
NAS
服务器可以被分配不同的任务,可以根据使用途径在不同的
NAS
上执行不同的任务

[0004]对于
NAS
服务器集群中部署分布式文件系统,可以保障每个节点访问该系统,将
SQLite
数据库保存到该分布式文件系统中,能够使得服务器集群中多个节点可以同时访问数据库,但是
SQLite
数据库不支持并发写入

而当服务器集群中多个节点同时访问
SQLite
数据库时,使得同时向
SQLite
数据库写入数据的概率增加,极容易出现
SQLite
数据库死锁,从而导致
SQLite
数据库文件无法使用,甚至数据丢失造成
NAS
服务器集群无法使用的问题

[0005]因此,针对上述缺陷,提供一种防止集群
SQLite
数据库并行读写死锁的方法及装置,是非常有必要的


技术实现思路

[0006]针对上述服务器集群中多个节点同时向
SQLite
数据库写入数据时,极容易出现
SQLite
数据库死锁,从而导致
SQLite
数据库文件无法使用,甚至数据丢失造成
NAS
服务器集群无法使用的缺陷,本专利技术提供一种防止集群
SQLite
数据库并行读写死锁的方法及装置,以解决上述技术问题

[0007]第一方面,本专利技术提供一种防止集群
SQLite
数据库并行读写死锁的方法,包括如下步骤:
[0008]S1.

NAS
服务器集群中部署
glusterfs
分布式文件系统,并将
SQLite
数据库保存到
glusterfs
分布式文件系统中;
[0009]S2.

NAS
服务器集群内每个节点上部署
Redis
本地模式,实现
Redis
数据库文件在
glusterfs
分布式文件系统的保存;
[0010]S3.

NAS
服务器集群中配置一个主节点及若干从节点,在主节点配置
Redis
服务端以及在各从节点配置
Redis
客户端,对主节点进行监控,并当检测到主节点故障时,将任一个从节点设置为主节点进行
Redis
服务端配置;
[0011]S4.
对需要向
SQlite
数据库写入数据的进程,先在
Redis
服务端以向
Redis
数据库
文件中设置唯一键值对的方式设置进程锁,并在完成数据写入后,释放
SQLite
数据库的进程锁,确保
SQLite
数据库并行读写

[0012]进一步地,步骤
S1
具体步骤如下:
[0013]S11.

NAS
服务器集群中部署
glusterfs
分布式文件系统,建立
NAS
服务器集群中各节点与
glusterfs
分布式文件系统的连接通路;
[0014]S12.

SQLite
数据库保存到
glusterfs
分布式文件系统中,实现
NAS
服务器集群中各节点通过连接通路访问
SQLite
数据库

[0015]进一步地,步骤
S2
具体步骤如下:
[0016]S21.
选择
NAS
服务器集群的任一节进行
Redis
配置文件部署;
[0017]S22.
将部署的
Redis
配置文件通过
glusterfs
分布式文件系统部署到
NAS
服务器集群内各个节点;
[0018]S23.
通过
Redis
配置文件在
NAS
服务器集群内每个节点部署本地的
Redis
单机模式,并通过
glusterfs
分布式文件系统进行
NAS
服务器集群中
Redis
数据库文件同步

[0019]进一步地,步骤
S3
具体步骤如下:
[0020]S31.

NAS
服务器集群中任一节点配置为主节点,在主节点配置
Redis
服务端;
[0021]S32.

NAS
服务器集群中除主节点外的节点均配置为从节点,在从节点配置
Redis
客户端;
[0022]S33.

NAS
服务器集群中各节点进行监控,判断主节点是否正常;
[0023]若是,进入步骤
S4

[0024]若否,进入步骤
S34

[0025]S34.

NAS
服务器集群中任意一个正常的从节点设为主节点,在新的主节点配置
Redis
服务端

[0026]进一步地,步骤
S4
具体步骤如下:
[0027]S41.
预先在作为
Redis
服务端的主节点的
Redis
数据库文件中创建键值表;
[0028]S42.
当从节点检测到需要向...

【技术保护点】

【技术特征摘要】
1.
一种防止集群
SQLit e
数据库并行读写死锁的方法,其特征在于,包括如下步骤:
S1.
在网络附属存储服务器集群中部署开源分布式文件系统,并将轻型数据库保存到开源分布式文件系统中;
S2.
在网络附属存储服务器集群内每个节点上部署远程字典服务本地模式,实现远程字典服务数据库文件在开源分布式文件系统的保存;
S 3.
在网络附属存储服务器集群中配置一个主节点及若干从节点,在主节点配置远程字典服务服务端以及在各从节点配置远程字典服务客户端,对主节点进行监控,并当检测到主节点故障时,将任一个从节点设置为主节点进行远程字典服务服务端配置;
S4.
对需要向轻型数据库写入数据的进程,先在远程字典服务服务端以向远程字典服务数据库文件中设置唯一键值对的方式设置进程锁,并在完成数据写入后,释放轻型数据库的进程锁,确保轻型数据库并行读写
。2.
如权利要求1所述的防止集群
SQLit e
数据库并行读写死锁的方法,其特征在于,步骤
S1
具体步骤如下:
S11.
在网络附属存储服务器集群中部署开源分布式文件系统,建立网络附属存储服务器集群中各节点与开源分布式文件系统的连接通路;
S12.
将轻型数据库保存到开源分布式文件系统中,实现网络附属存储服务器集群中各节点通过连接通路访问轻型数据库
。3.
如权利要求1所述的防止集群
SQLit e
数据库并行读写死锁的方法,其特征在于,步骤
S2
具体步骤如下:
S21.
选择网络附属存储服务器集群的任一节进行远程字典服务配置文件部署;
S22.
将部署的远程字典服务配置文件通过开源分布式文件系统部署到网络附属存储服务器集群内各个节点;
S23.
通过远程字典服务配置文件在网络附属存储服务器集群内每个节点部署本地的远程字典服务单机模式,并通过开源分布式文件系统进行网络附属存储服务器集群中远程字典服务数据库文件同步
。4.
如权利要求3所述的防止集群
SQLit e
数据库并行读写死锁的方法,其特征在于,步骤
S 3
具体步骤如下:
S 31.
将网络附属存储服务器集群中任一节点配置为主节点,在主节点配置远程字典服务服务端;
S 32.
将网络附属存储服务器集群中除主节点外的节点均配置为从节点,在从节点配置远程字典服务客户端;
S 33.
对网络附属存储服务器集群中各节点进行监控,判断主节点是否正常;若是,进入步骤
S4
;若否,进入步骤
S 34

S 34.
将网络附属存储服务器集群中任意一个正常的从节点设为主节点,在新的主节点配置远程字典服务服务端
。5.
如权利要求4所述的防止集群
SQLit e
数据库并行读写死锁的方法,其特征在于,步骤
S4
具体步骤如下:
S41.
预先在作为远程字典服务服务端的主节点的远程字典服务数据库文件中创建键
值表;
S42.
当从节点检测到需要向轻型数据库写入数据的进程时,登录远程字典服务服务端,使用
SETNX
命令以向键值表中创建记录的形式设置锁,并在记录创建成功时,允许向轻型数据库写入数据,而在记录创建失败时,禁止向轻型数据写入数据
。6.
如权利...

【专利技术属性】
技术研发人员:储欣媛侯胜伟李盈
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1