文登住房和建设局网站,做爰视频免费安全的网站,制作app平台需要多少钱,免费的那种软件今天给大家介绍一个基于 SQLite 构建的轻量级分布式关系型数据库#xff1a;rqlite。 rqlite 基于 Raft 协议#xff0c;结合了 SQLite 的简洁性以及高可用分布式系统的稳健性#xff0c;对开发者友好#xff0c;操作极其简便#xff0c;其核心设计理念是以最低的复杂度实…今天给大家介绍一个基于 SQLite 构建的轻量级分布式关系型数据库rqlite。 rqlite 基于 Raft 协议结合了 SQLite 的简洁性以及高可用分布式系统的稳健性对开发者友好操作极其简便其核心设计理念是以最低的复杂度实现高可靠性。
核心特性
rqlite 提供了以下关键特性
部署简单秒级部署没有任何复杂配置。开发友好简单易用的 HTTP API、CLI 以及客户端驱动。功能强大基于 SQLite支持权威检索、JSON 以及各种插件向量搜索、sqlean。大量数据 支持 GB 级别的数据管理。高可靠性通过复制实现容错性和高可用。动态集群集成 Kubernetes、Consul、etcd 以及 DNS实现自动集群管理。安全性强支持各种加密和 TLS 安全传输。灵活一致性可配置的读一致性和持久性。可扩展读通过只读节提高读取性能。事务支持HTTP API 支持事务语句。备份恢复支持节点热备压缩备份自动备份到 AWS S3 以及 MinIO支持从 SQLite 数据库文件恢复。监控信息提供诊断和统计信息节点状态信息可读性检查等。
下载安装
rqlite 支持 Linux、macOS 以及 Windows最简单安装方法的是下载二进制安装文件
https://github.com/rqlite/rqlite/releases
选择对应操作系统的文件进行解压然后执行以下命令运行单节点
./rqlited -node-id1 data/其中-node-id 指定了节点编号 data/ 是数据存储目录。服务启动后的监听地址为 http://localhost:4001。
接下来使用客户端工具 rqlite shell 连接数据库并执行 SQL 语句
$ rqlite
127.0.0.1:4001 CREATE TABLE foo (id INTEGER NOT NULL PRIMARY KEY, name TEXT)
1 row affected (0.000668 sec)
127.0.0.1:4001 .schema
-----------------------------------------------------------------------------
| sql |
-----------------------------------------------------------------------------
| CREATE TABLE foo (id INTEGER NOT NULL PRIMARY KEY, name TEXT) |
-----------------------------------------------------------------------------
127.0.0.1:4001 INSERT INTO foo(name) VALUES(fiona)
1 row affected
127.0.0.1:4001 SELECT * FROM foo
-----------
| id | name |
-----------
| 1 | fiona |
-----------如果想要创建一个分布式 rqlite 集群可以启动其他节点服务
./rqlited -node-id 2 -http-addr localhost:4003 -raft-addr localhost:4004 -join localhost:4002 data2/./rqlited -node-id 3 -http-addr localhost:4005 -raft-addr localhost:4006 -join localhost:4002 data3/我们在同一个主机上启动了另外两个服务分别使用了不同的节点编号和监听地址同时加入了第一个节点集群。
然后在客户端中查看集群状态
127.0.0.1:4001 .nodes
1:api_addr: http://localhost:4001addr: localhost:4002voter: truereachable: trueleader: trueid: 1
2:api_addr: http://localhost:4003addr: localhost:4004voter: truereachable: trueleader: falseid: 2
3:api_addr: http://localhost:4005addr: localhost:4006voter: truereachable: trueleader: falseid: 3其中第一个节点是 leader。此时我们获得了一个分布式集群数据库任何数据操作都会复制到其他节点。
官方网址https://rqlite.io/
官方文档https://rqlite.io/docs/