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

抱SQL SERVER大腿之我爱用视图

SQL SERVER大腿之我爱用视图

左直拳

我们拥有一个巨大的表,两千多万条记录。也许在行家眼里,两千多万条记录顶多算条毛,不过这条毛也忒粗壮了一点:我们的数据库占用的空间已经达到<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="5" unitname="g"><span lang="EN-US" style="FONT-SIZE: 12pt"><font face="Times New Roman">5G</font></span></chmetcnv>多了。不要以为是日志文件在搞鬼,日志文件可以自动收缩的,最多不超过<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="100" unitname="m"><span lang="EN-US" style="FONT-SIZE: 12pt"><font face="Times New Roman">100M</font></span></chmetcnv>。

这样子就给我们备份、同步带来很大的麻烦。备份、压缩、下载,谁见谁害怕。

昨天想了个办法,将这个巨无霸分出去了。分到了另一个数据库上。虽说有这么多记录,不过这些记录并不是太重要,如果放在一个分布式的系统里面看,它没有同步的必要。

思想如下:

1、将大表转移到另一个数据库上

2、原有数据库建立一个视图,相同结构,相同名字

由于该视图是单表视图,结构跟表又一致,名字也跟表名一样,那么操作这个视图,无论是查询、插入、更新或删除,都跟直接操作这个表没什么区别。这样代码也无须做任何的修改。平滑过渡。

该表上建立的索引,视图也一样的使用。

以前我见过有人为了避免某个表过大,采用的方法是建立12个结构一样的表,每个月用一个。当时就想,这种做法好是好,但代码岂不是烦死了。现在想起来,查询的时候,可以使用视图将12个表用 UNION ALL 结合起来,当一个表用。

视图在分布式数据库中使用应该很方便。

相关文章:

  • python初学往哪个方向比较容易_学习Python应该往哪个方向发展?
  • 学习Extjs与RoR的集成有感
  • python是什么工程_十年开发工程师告诉你python是做什么的,新手必看哦!
  • 硅谷游记
  • mysql custom 环境变量_mysql安装问题
  • 依然渐
  • mysql multi delete_mysql存储过程出现Unknown table 'a' in MULTI DELETE的解决办法
  • 活着的意义
  • python定义复数类complex使代码能够工作_定义一个复数类Complex,使得下面的代码能够工作...
  • java 生产者消费者问题_生产者消费者问题Java三种实现
  • Bézier Curve 简略论述(1)
  • 邮件标题乱码 java_Java mail 发送邮件 主题(标题)乱码
  • UltraEdit正则表达式搜索替换小技巧
  • java 动态调用可变参数传递_「params」Java基础------动态参数(可变参数,例如:Object... params) - seo实验室...
  • 清空列表,重新验证
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • JavaScript 基础知识 - 入门篇(一)
  • java取消线程实例
  • node.js
  • python 装饰器(一)
  • Redux系列x:源码分析
  • vue2.0一起在懵逼的海洋里越陷越深(四)
  • 读懂package.json -- 依赖管理
  • 基于Mobx的多页面小程序的全局共享状态管理实践
  • 如何抓住下一波零售风口?看RPA玩转零售自动化
  • 微信支付JSAPI,实测!终极方案
  • 新书推荐|Windows黑客编程技术详解
  • 译有关态射的一切
  • 原创:新手布局福音!微信小程序使用flex的一些基础样式属性(一)
  • 原生Ajax
  • ionic异常记录
  • #HarmonyOS:Web组件的使用
  • (Matalb回归预测)PSO-BP粒子群算法优化BP神经网络的多维回归预测
  • (十五)devops持续集成开发——jenkins流水线构建策略配置及触发器的使用
  • **PHP分步表单提交思路(分页表单提交)
  • ./include/caffe/util/cudnn.hpp: In function ‘const char* cudnnGetErrorString(cudnnStatus_t)’: ./incl
  • .FileZilla的使用和主动模式被动模式介绍
  • .Mobi域名介绍
  • .net core webapi 部署iis_一键部署VS插件:让.NET开发者更幸福
  • .NET MAUI学习笔记——2.构建第一个程序_初级篇
  • .net 按比例显示图片的缩略图
  • .net 微服务 服务保护 自动重试 Polly
  • .NET 中什么样的类是可使用 await 异步等待的?
  • .Net(C#)自定义WinForm控件之小结篇
  • .NET微信公众号开发-2.0创建自定义菜单
  • .net中的Queue和Stack
  • @四年级家长,这条香港优才计划+华侨生联考捷径,一定要看!
  • [ vulhub漏洞复现篇 ] Hadoop-yarn-RPC 未授权访问漏洞复现
  • [ vulhub漏洞复现篇 ] struts2远程代码执行漏洞 S2-005 (CVE-2010-1870)
  • [ 英语 ] 马斯克抱水槽“入主”推特总部中那句 Let that sink in 到底是什么梗?
  • []新浪博客如何插入代码(其他博客应该也可以)
  • [1204 寻找子串位置] 解题报告
  • [2023-年度总结]凡是过往,皆为序章
  • [ASP.NET MVC]Ajax与CustomErrors的尴尬
  • [C语言]——内存函数