事情是这样的,我有二十台数据库,然后每天有二万台设备的各类数据新增进来,需求就是每一千台的设备的数据放在一个数据库里面。
设备id是固定的FB00001~FB20000,通过什么中间件可以快速协调起来
20台数据库用什么中间件
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- 冰思雨 2021-11-09 16:19关注
如果是新开发的项目,可以采用分库的方式。20个数据库就创建20个数据源,每个数据源对应一个数据,然后,编写一个函数,通过设备ID返回对应的数据源或者DAO实现类的对象。这样做有一个好处,就是,20个数据库的表结构是一致的,并且,每张表存哪个设备都可以,表名与设备ID没有关系。
如果是老项目扩容,说明数据库中的表名,与设备ID有关了,那就比较复杂了。如果时间允许,可以对项目进行重构。
很少有项目,把数据库表的表名与设备ID进行关联的,后期维护和更新将变得越来越复杂。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 metadata提取的PDF元数据,如何转换为一个Excel
- ¥15 关于arduino编程toCharArray()函数的使用
- ¥100 vc++混合CEF采用CLR方式编译报错
- ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
- ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
- ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
- ¥50 如何openEuler 22.03上安装配置drbd
- ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
- ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
- ¥15 Windows11, backspace, enter, space键失灵