SQL Server 数据归档方案-阿里云开发者社区

开发者社区> 技术小甜> 正文

SQL Server 数据归档方案

简介:
+关注继续查看

目的

本文旨在从数据库管理方面,提供将SQL Server大数据表归档的解决方案。可以作为新业务上线时进行方案设计的参考。

 

归档方案选型

方案一:

方案介绍

BCP导出数据到本地目录目录后,遍历目录文件BCP导入到临时表,再循环删除源表数据。通过Insert into … Left Join …通过主键关联临时表和归档表排除存在的数据。(或通过2008及后续版本的Merge语句,不存在插入,存在更新)

clip_image001

方案优缺点

优点:BCP性能好、通过SP容易控制逻辑、维护简单

缺点:逻辑略繁琐

 

方案二:

方案介绍

BCP导出数据到远程目录后循环删除源表数据,遍历目录文件BCP导入到临时表,再通过Insert into … Left Join …通过主键关联临时表和归档表排除存在的数据。(或通过2008及后续版本的Merge语句,不存在插入,存在更新)

clip_image002

方案优缺点

优点:BCP性能好、通过SP容易控制逻辑、维护简单

缺点:逻辑略繁琐,两台主机需要能UNC共享访问

 

方案三:

方案介绍

BCP导出数据到本地目录后FTP到远程目录,再循环删除源表数据,遍历目录文件BCP导入到临时表,再通过Insert into … Left Join …通过主键关联临时表和归档表排除存在的数据。(或通过2008及后续版本的Merge语句,不存在插入,存在更新)

clip_image003

方案优缺点

优点:BCP性能好、通过SP容易控制逻辑、维护简单

缺点:逻辑略繁琐,远程要架设FTP服务器

 

方案四:

方案介绍

BCP导出数据到远程目录后循环删除源表数据,遍历目录文件SSIS数据导入和更新。

clip_image004

方案优缺点

优点:BCP性能好

缺点:字段变更后SSIS包需同步修改,SSIS包维护麻烦,两台主机需要能UNC共享访问

 

方案五:

方案介绍

BCP导出数据到本地目录后FTP到远程目录,循环删除源表数据,再遍历目录文件SSIS数据导入和更新。

clip_image005

方案优缺点

优点:BCP性能好

缺点:字段变更好,SSIS包需同步修改,SSIS包维护麻烦,远程要架设FTP服务器

 

方案六:

方案介绍

数据插入到另一个临时归档库后循环删除源表数据,再将临时归档表复制到远程。

clip_image006

方案优缺点

优点:逻辑简单

缺点:需要另建一个临时归档库、增加了负载

 

方案七:

方案介绍

数据通过Linkedserver插入远程归档表后循环删除。

clip_image007

方案优缺点

优点:逻辑简单

缺点:LinkedServer远程性能问题

 

方案八:

方案介绍

切换分区到临时表,数据再通过LinkedServer插入远程归档表。

clip_image008

方案优缺点

优点:数据归档方便

缺点:只针对分区表

 

方案九:

方案介绍

SSIS将数据插入或更新到归档表后循环删除源表。

clip_image009

方案优缺点

优点:逻辑集成

缺点:维护成本高,定位问题麻烦

 

方案十:

方案介绍

开源软件,如eyeArchive

方案优缺点

优点:开源软件

缺点:方法单一


















本文转自UltraSQL51CTO博客,原文链接:http://blog.51cto.com/ultrasql/1579443 ,如需转载请自行联系原作者


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
9494 0
Oracle与SQL Server数据类型对应关系
SQL Server 数据类型 Oracle 数据类型 bigint NUMBER binary LONG RAW NOT NULL bit NUMBER (1, 0) char VARCHAR2 (900) NOT NULL datetime
1210 0
将DataTable 数据插入 SQL SERVER 数据库
原文: 将DataTable 数据插入 SQL SERVER 数据库 以下提供3中方式将DataTable中的数据插入到SQL SERVER 数据库: 一:使用sqlcommand.
886 0
SQL SERVER 数据库备份
SQL SERVER 数据库备份复制代码/** 批量循环备份用户数据库,做为数据库迁移临时用 */ SET NOCOUNT ON DECLARE @d varchar(8) DECLARE @Backup_Flag NVARCHAR(10) SET @d=convert(varchar(8),ge...
737 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
13177 0
SQL Server数据转换服务的四个妙用
  在企业中,各种数据分布于各个场合中。如在企业采用SQL Server数据库之前,可能采用了Excle或者MY SQL等数据库。他们的格式不同,存储的位置也不同。但是,管理者在决策的时候,可能需要用到各方面的数据。
909 0
SQL Server 2008数据类型
在创建表时,必须为表中的每列指派一种数据类型。本节将介绍SQL Server中最常用的一些数据类型。即使创建自定义数据类型,它也必须基于一种标准的SQL Server数据类型。例如,可以使用如下语法创建一种自定义数据类型(Address),但要注意,它基于SQL Server标准的varchar数据类型。
704 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
6890 0
+关注
10146
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载