数据的水平分割

数据的水平分割

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

数据的水平分割此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“”,获取验证码。在微信里搜索“”或者“”或者微信扫描右侧二维码都可以关注本站微信公众号。

       早前公司有个大系统没有做数据的水平分割,导致兴许的性能优化不能做到最佳,有些功能优化到7s,8s就无法继续了。这个大系统曾经是分21个点部署,然后进行了大集中,仅仅部署了一个点。

       1. 在做数据的水平切割之前一定要理解系统的业务。我的系统是MIS,数据能够分为两类:一类是基础数据,一类是业务流程数据。基础数据的理解就是支撑其它业务流转的数据,如部门、人员、权限、资源库等。业务流程数据就是业务单据,如报销流程等。

       2. 基础数据是不用做水平的分割的,当然假设是腾讯这样的系统,人员信息很大的还是要做分割的,我们的系统基础数据往往是很小的。业务流程数据要做水平分割。

       3. 分割的几种方式,如果有限制有30个局的数据:

          a. 分表

                长处:安全性更高,MIS系统上线后实施免不了要在后台改数据,万一少写一个条件就悲剧了。对开发者的数据库技能要求低一些,在1千万的表上操作比在一亿的表上操作要简单。

                缺点:做查询的时候要组装;在跨局做统计的时候实现会复杂一些。DDL操作要写非常多脚本。

          b. 分区

                长处:写代码简单;跨局统计方便。

                缺点:一定要确保带分区条件,对开发者的数据库操作技能更高。DDL(加字段,改动字段类型或长度,加索引都是DDL)会比較困难,假设表上有操作,DDL都会失败。跟分表的不同,

         4. 终于的分割方式

               分表:数据量巨大的表,安全性高的表。

               单分区非重点模块,数据量不大,无需做过期化

               复合分区重点模块,须要做过期化的模块

               不做分区和分表:基础数据。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/118018.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • phpmyadmin安装教程及配置设置

    phpmyadmin安装教程及配置设置.一般网上下载到的phpmyadmin是一个压缩包,我们将其释放到htdocs目录中,例如htdocs\phpmyadmin。  2.打开phpmyadmin目录,在此目录下是否有config.sample.inc.php文件,如果存在,那么将其改名为config.inc.php。(根据版本不同,有可能直接就有config.inc.php文件,那就无需改名,也有可能根本就没有config.

  • VIM中的保存和退出、VIM退出命令、如何退出vim编辑、VIM命令大全

    VIM中的保存和退出、VIM退出命令、如何退出vim编辑、VIM命令大全退出命令是,按ESC键跳到命令模式,然后输入q(不保存)或者wq(保存)退出。其他退出命令::w保存文件但不退出vi:wfile将修改另外保存到file中,不退出vi:w!强制保存,不推出vi:wq保存文件并退出vi:wq!强制保存文件,并退出vi:q不保存文件,退出vi:q!不保存文件,强制退出vi:e!放弃所有修改,从上次保存文件开始再编辑

  • visibilitychange – 指定标签页可见时,刷新页面数据

    visibilitychange – 指定标签页可见时,刷新页面数据三个知识点:一通过监听浏览器页面可见性改变(visibilitychange)事件,来判断标签页是否可见二配置路由的meta,来判断是否是指定的标签页三调用其它模块的actions,刷新数据router.jsroutes:[{path:”/”,redirect:”index”},{path:”/ind…

  • python读写json_python格式化json

    python读写json_python格式化jsonJSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。JSON在python中分别由list和dict组成。这是用于序列化的两个模块:json:用于字符串和p

  • idea连接mysql数据库报java.lang.RuntimeException: com.mysql.cj.exceptions.InvalidConnectionAttributeExcepti

    idea连接mysql数据库报java.lang.RuntimeException: com.mysql.cj.exceptions.InvalidConnectionAttributeExcepti出错场景:使用idea连接mysql(5.2版本)报错:java.lang.RuntimeException:com.mysql.cj.exceptions.InvalidConnectionAttributeException:Theservertimezonevalue’Öйú±ê׼ʱ¼ä’isunrecognizedorrepresentsmoreth…

  • RTSP视频流显示(海康威视)

    RTSP视频流显示(海康威视)RTSP视频流显示(海康威视)VLCSDK(C++)ffmpeg+Nginx本文目的主要是想要在html上实时显示海康威视的摄像头数据,笔者尝试了如下三种方式:VLCSDK(C++)ffmpeg+Nginx下面分别说说通过这几种方式如何实现在web页面上显示。VLC填的地址就是摄像头RTSP视频流地址,然后点串流:左上角是这样的说明就已经在转换了:网页显示注意…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号