当前位置: 首页 > news >正文

What‘s new in Arana v0.2.0

Arana 定位于云原生数据库代理,它可以以 sidecar 模式部署为数据库服务网格,项目地址是 https://github.com/arana-db/arana 。Arana 提供透明的数据访问能力,当用户在使用时,可以不用关心数据库的 “分片” 细节,像使用单机 MySQL 数据库一样使用 Arana

在这个秋高气爽的季节,Arana 社区很高兴的宣布,经过社区 47 位贡献者一年多的努力,我们正式发布了 0.2.0 版本。该版本不仅做了很多优化工作,修复了一些 bug,还引入了多项新功能。这些新功能包括 配置中心支持 watch 机制动态监听配置变更,支持可视化的 admin 配置管理后台,对数据库表的 sharding 能力进一步增强,支持更丰富的 DDL 语句,同时支持影子表特性,方便进行数据库压测工作,这些能力将会为用户提供更为稳定和高效的使用体验。

1. 新特性

  1. 支持配置中心 watch 机制,可以将修改的配置信息实时推送到 Arana,确保更新配置及时生效 PR 347 作者:chuntaojun;

  2. 配置中心支持使用 Nacos 中间件 PR 659 作者:Mulavar;

  3. 支持可视化 admin 配置管理后台 PR arana-ui/1 作者:GavinLam164;

  4. 对已有数据库表 sharding 特性进行增强,sequence 支持段模式 PR 400 作者:Mulavar、多字段片键支持 PR 681 作者:jjeffcaii;

  5. 优化 SQL 函数执行器,将 javascript 函数执行方案转换成 Go 语言原生实现方案,提升函数代码实现可维护性 Issue 454 作者:Charlie17Li、gongna-au、mengchuang123、baerwang、raspberry-hu、JasonZhang95、csynineyang、PangXing 等等;

  6. 支持更丰富的 DDL 语句操作,包括:create/drop table PR 653 作者:csynineyang、alter table PR 184 作者:PangXing、create/drop index PR 254 作者:cjphaha;

  7. 主持影子表特性,方便进行数据库压测工作 PR 412 作者:csynineyang、PR 433 作者:PangXing、PR 405 作者:csynineyang、PR 363 作者:Lvnszn、PR 303 作者:Lvnszn;

  8. 支持 MySQL 8.0 版本 PR 450 作者:jjeffcaii;

2. Bug 修复

  1. 修复 select 语句中当 table 不存在时导致的应用崩溃 PR 693 作者:gongna-au;

  2. 修复并发更新数据时导致的数据库连接泄露 PR 669 作者:jjeffcaii;

  3. 修复空查询结果返回值,参照 MySQL 规范 PR 654 作者:jjeffcaii;

  4. 修复 etcd 作为配置中心是出现的 too large lease TTL 错误 PR 651 作者:PangXing;

  5. 修复 use 语句执行结果出现 Unknown database 错误 PR 618 作者:jjeffcaii;

  6. 修复配置中心 watch event 机制导致的启动异常 PR 589 作者:PangXing;

  7. 修复使用 jdbc 连接 arana 时出现 Unknown system variable 'query_cache_size' 错误 PR 357 作者:csynineyang;

  8. 修复 index 不存在时,show index 语句返回信息异常 PR 372 作者:jjeffcaii;

3. 未来规划

随着 0.2.0 版本的发布,Arana 社区 0.3.0 版本的功能特性进行了规划,在 0.3.0 版本中我们规划如下几个重大特性功能:

  1. 实现跨数据库实例的 join 能力,完善不同数据库表之间的连接查询能力;
  2. 实现基于 XA 的分布式事务能力;
  3. 实现 shardingless 能力,向上层用户屏蔽分库分表细节,降低用户学习使用成本。

以上就是在 0.3.0 中规划的新特性,大家敬请期待。

如果你对 arana 产品或者这个开源项目感兴趣,欢迎微信搜索 PikiwiDB 加为好友,并备注 “加入 Arana”,它会拉你加入 Arana 微信交流群。

相关文章:

What‘s new in Arana v0.2.0

Arana 定位于云原生数据库代理,它可以以 sidecar 模式部署为数据库服务网格,项目地址是 https://github.com/arana-db/arana 。Arana 提供透明的数据访问能力,当用户在使用时,可以不用关心数据库的 “分片” 细节,像使…...

STM32 串口接收中断被莫名关闭

使用cubeidestm32f4进行调试,发现UART4串口会被莫名的关掉,导致不能接收数据,经过排查如下: HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout) {uint8_t *pd…...

接口测试vs功能测试

接口测试和功能测试的区别: 本文主要分为两个部分: 第一部分:主要从问题出发,引入接口测试的相关内容并与前端测试进行简单对比,总结两者之前的区别与联系。但该部分只交代了怎么做和如何做?并没有解释为什…...

前端面试题整理(1.0)

1.nextTick原理 Vue是异步执行Dom更新的,一旦观察到数据变化,Vue就会开启一个队列,然后把在同一个事件循环(event loop)当中观察到数据变化的Watcher推送到这个队列。如果这个Watcher被触发多次,智慧被推送…...

使用Spire.PDF for Python插件从PDF文件提取文字和图片信息

目录 一、Spire.PDF插件的安装 二、从PDF文件提取文字信息 三、从PDF文件提取图片信息 四、提取图片和文字信息的进阶应用 总结 在Python中,提取PDF文件的文字和图片信息是一种常见的需求。为了满足这个需求,许多开发者会选择使用Spire.PDF插件&…...

springBoot整合讯飞星火认知大模型

1.概述 讯飞星火大模型是科大讯飞最近开放的拥有跨领域的知识和语言理解能力的大模型,能够完成问答对话和文学创作等。由于讯飞星火大模型最近可以免费试用,开发者都可以免费申请一个QPS不超过2的账号,用来实现对平台能力的验证。本文将利用…...

JMM对数据竞争的定义

JMM对数据竞争的定义 Java内存模型规范对数据竞争的定义如下在一个线程中写一个变量,在另一个线程读同一个变量,而且写和读没有通过同步来排序。如果一个多线程程序能正确同步,这个程序将是一个没有数据竞争的程序。当程序未正确同步时&…...

民安智库(湖北知名满意度测评公司)食品安全满意度调查如何开展

食品安全问题一直以来都是社会各界广泛关注的焦点之一。近年来,食品安全事件频发,引起了公众的高度关注和担忧。因此,开展食品安全满意度调查,了解公众对食品安全状况的认知和满意程度,对于促进食品安全共建共治共享具…...

Rust 语法笔记

变量绑定(声明变量) let 变量名: 类型 变量值; let 变量名 变量值[类型]; // 整型 默认 i32;浮点 默认 f64所有的 let 绑定都必须尾接;,代码块也不例外。 mut 可以通过重新声明的方式来改变变量类型 可以下划线改善数字的可读…...

AI智慧安防智能监控平台如何做到健身房智能视频监控?

随着大家对健身的重视,健身房也开始遍地开花,健身房的兴起是必然的,但是健身房的管理不容疏忽,通过EasyCVR智能视频监控系统,则可以解决监管不足的问题。 1、安全摄像头布局 根据健身房的大小和布局,合理规…...

ps插件Coolorus for Mac中文激活版

Coolorus是一款非常实用的Photoshop插件,它为Photoshop增加了色环配色面板,让设计师可以更直观地选择颜色。同时,Coolorus还提供了多种专业配色方案,如鲜艳色、复古色、日常色等,设计师可以直接套用这些方案&#xff0…...

MySQL的索引——索引的介绍及其数据结构B+树 索引的类型 索引的使用及其失效场景 相关名词解释

前言 索引是存储引擎用于快速查找数据纪录的一种数据结构,索引是数据库中经常提及的一个词,究竟什么是索引,索引的数据结构是什么,索引有什么类型? 本篇博客尝试阐述数据库索引的相关内容,涉及什么是索引…...

第十六届中国智慧城市大会 | 国产化三维重建技术服务智慧城市建设

2023年10月13日,由武汉大势智慧科技有限公司、飞燕航空遥感技术有限公司主办的第十六届智慧城市大会-实景三维技术创新与应用论坛在广州成功举办。 来自实景三维、自然资源、数字孪生、AI大数据、航空遥感等多个领域的专家,深度分享各自的智慧城市建设经…...

通过数组的指针获得数组个数

这几天学习智能指针时,自己在练习写个管理数组指针的类时碰到了通过数组指针获取数组个数的问题 1.在网上查询了通过数组指针获取数组个数的方法,对于自定义数据在前四个节点保存了数组个数 Student* pAry new Student[3];size_t num *((size_t*)pAry - 1);//3测试是成功的…...

GeoServer改造Springboot启动四(解决post接口方法无法用@requestbody为入参的请求)

1、修改源码4 解决问题:解决Controller接口post方法(如图 19)无法用@requestbody为入参的 json数据进行请求,用swagger请求示例如图 20,具体错误呈现如图 21。 图 19Controller接口示例 图 20post接口请求示例 图 21post接...

C#,数值计算——分类与推理Phylagglomnode的计算方法与源程序

1 文本格式 using System; using System.Collections.Generic; namespace Legalsoft.Truffer { public class Phylagglomnode { public int mo { get; set; } public int ldau { get; set; } public int rdau { get; set; } public …...

mysql、oracle 构建数据

mysql 构建数据 --创建表 set sql_modeONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,ALLOW_INVALID_DATES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION CREATE TABLE vote_records_memory ( id int(10) unsigned NOT NULL AUTO_INCRE…...

二叉树;二叉树的前序、中序、后序遍历及查找;顺序存储二叉树;线索化二叉树

数组、链表和树存储方式分析 对于树结构,不论是查找修改还是增加删除,效率都比较高,结合了链表和数组的优点,如以下的二叉树: 1、数组的第一个元素作为第一个节点 2、数组的第二个元素3比7小,放在7的左边…...

有手就会做!保姆级Jmeter分布式压测操作流程(图文并茂)

分布式压测原理 分布式压测操作 保证本机和执行机的JDK和Jmeter版本一致配置Jmeter环境变量配置Jmeter配置文件 上传每个执行机服务jmeter chmod -R 755 apache-jmeter-5.1.1/ 执行机配置写自己的ip 控制机配置所有执行机ip,把server.rmi.ssl.disable改成true 将本机也作为压…...

澳洲谷揽GRANAR谷物分析仪维修GR-1800蛋白检测仪

澳洲GRANAR谷揽GR-1800谷物分析仪应用领域:大豆、油菜籽、亚麻籽 常用分析指标:蛋白质、芥酸、水分、灰分 、油脂等 分析时间:<3min 使用场景:谷物收购、生产加工、实验室 GR-1800i型号特点 1.检测时间由3分钟缩短…...

别再死记硬背了!一张图看懂DDR到DDR4内存的演变史(附关键参数对比)

从DDR到DDR4:内存技术的进化图谱与设计哲学 在计算机硬件发展的长河中,内存技术的迭代如同一部微缩的科技史诗。从2000年DDR标准的诞生到如今DDR4的普及,每一次升级都不仅仅是数字的跃进,更是工程智慧的结晶。对于硬件爱好者、嵌入…...

Hyperf 成熟方案的PHP数据清洗、ETL工具链最好的库

Hyperf 本身没有专门的"开箱即用 ETL"官方组件,但有几个成熟方案可以组合使用: rt — …...

10分钟上手PPTAgent:从文档到精美幻灯片的完整教程

10分钟上手PPTAgent:从文档到精美幻灯片的完整教程 【免费下载链接】PPTAgent An Agentic Framework for Reflective PowerPoint Generation 项目地址: https://gitcode.com/gh_mirrors/pp/PPTAgent PPTAgent是一款基于智能代理框架的幻灯片生成工具&#xf…...

从田间到K8s集群,传感器数据延迟从2.8s降至47ms!Docker 27容器化调优全路径解析,仅限首批200位农科工程师获取

第一章:从田间到K8s集群的农业传感器数据容器化演进全景在智慧农业实践中,土壤湿度、环境温湿度、光照强度与CO₂浓度等多源传感器数据正以前所未有的频率被采集。传统部署模式中,这些边缘设备常直连本地网关,数据经脚本清洗后写入…...

零基础入门 HTTP!从基础到精通,彻底搞懂核心逻辑,收藏这一篇就够了

彻底搞懂HTTP HTTP发展史 HTTP(Hypertext Transfer Protocol,超文本传输协议)是用于在互联网上传输超文本(如网页)的应用层协议。 最早版本0.9 仅用于简单的文档浏览,功能极其有限。 正式版本1.0 引入…...

基础算法——区间合并

题目给定n个区间[li,ri],要求合并所有有交集的区间。注意如果在端点处相交,也算有交集。输出合并完成后的区间个数。例如:[1,3]和[2,6]可以合并为一个区间[1,6]。输入格式第一行包含整数n。接下来n行,每行包含两个整数l和r。输出格…...

火绒+SFC命令,给你的Win10系统做一次免费“体检”和“修复”

火绒SFC命令:Win10系统深度维护与健康修复指南 在数字时代,电脑系统的稳定性如同人体的免疫力——平时不易察觉其重要性,一旦出现问题却可能引发连锁反应。许多用户在清理完流氓软件后常陷入新的焦虑:系统文件是否已被破坏&#x…...

避开蓝桥杯DS1302时钟的坑:按键调整时间时的数据转换与防错处理

避开蓝桥杯DS1302时钟的坑:按键调整时间时的数据转换与防错处理 在蓝桥杯单片机竞赛中,DS1302实时时钟模块的应用几乎是必考项目。许多参赛选手能够轻松完成基础的时钟读写功能,却在实现按键调整时间时频频踩坑——明明代码逻辑看似正确&…...

嵌入式开发避坑:U-Boot环境变量(ENV)配置错了,板子启动不了怎么办?

嵌入式开发实战:U-Boot环境变量配置错误导致系统无法启动的排查指南 刚接触嵌入式开发的朋友们,有没有遇到过这样的情况:你满怀期待地给开发板通电,结果屏幕一片漆黑,串口终端卡在U-Boot阶段一动不动?这种时…...

Vue3 + Pinia项目里,Rollup打包报循环依赖警告?别慌,一个真实案例教你定位和修复

Vue3 Pinia项目中Rollup循环依赖警告的实战排查与修复 最近在重构一个Vue3企业级后台项目时,遇到了一个棘手的Rollup打包警告。项目采用Vue3 Pinia Rollup技术栈,警告信息直指循环依赖问题。作为有三年Vue实战经验的开发者,我决定深入剖析…...