Sql server 数据传输和分发方法

Sql server 数据传输和分发方法,sql-server,sql-server-2005,Sql Server,Sql Server 2005,这是我第一次尝试构建一种wiki通用版,请支持!: 我正在汇编一系列处理数据传输和分发的方法。请把你的想法加到我的清单上。为了大家的利益,我将更新文档并重新发布。如果我错过了一个方法,请让我知道,我会编辑它 复制 BCP/批量插入 分布式查询/链接服务器 SSIS 复制 应用程序需要将数据从一个或多个服务器整合到中央存储库 将报告功能从主SQL Server移到单独的SQL Server 支持来自多个服务器的大量用户 需要筛选行/列 BCP/批量插入 我不太熟悉BCP实用程序,也不太熟悉它在其他

这是我第一次尝试构建一种wiki通用版,请支持!: 我正在汇编一系列处理数据传输和分发的方法。请把你的想法加到我的清单上。为了大家的利益,我将更新文档并重新发布。如果我错过了一个方法,请让我知道,我会编辑它

复制 BCP/批量插入 分布式查询/链接服务器 SSIS 复制

应用程序需要将数据从一个或多个服务器整合到中央存储库 将报告功能从主SQL Server移到单独的SQL Server 支持来自多个服务器的大量用户 需要筛选行/列 BCP/批量插入

我不太熟悉BCP实用程序,也不太熟悉它在其他可用服务方面的帮助。这就是贡献会有帮助的地方!但我能收集到以下信息:

BCP:非常快地转移东西 大容量插入:作为内联T-SQL解决方案很有用。可以安排。但是,数据格式必须非常干净 分布式查询/链接服务器

链接服务器:提供对比SQL Server复制提供的更多种类的数据源的访问 链接服务器:与复制不支持或需要临时访问的数据源连接 链接服务器:性能优于OPENDATASOURCE或OPENROWSET OPENDATASOURCE和OPENROWSET函数:便于临时从数据源检索数据。OPENROWSET也有批量功能,可能/可能不需要fiddley格式的文件 OPENQUERY:不支持变量 所有这些都是T-SQL解决方案。相对容易实现和设置 所有这些都依赖于源和目标之间的连接,这可能会影响性能和可伸缩性 SSIS 同样,我没有太多的SSIS经验。以下是我所知道的:

与不同数据库的连接
对于上述所有方法,您的经验和想法是什么?

SSIS可以做的不仅仅是移动数据。它可以对XML文件执行操作,调用web服务,发送电子邮件,在2005年执行任意脚本VB.NET,在2008年执行任意脚本C。它可以在MSMQ和WMI上执行操作,在电子表格和平面文件上操作等。

Service Broker

极限性能。与SQL Server引擎事务和数据访问紧密集成,可实现高数据吞吐量。 面对不可靠的网络链接和通信合作伙伴可用性方面的停机,提供服务。即使在离线或未连接的情况下,应用程序也可以简单地发送数据,SSB将透明地处理所需的重试,同时保持一次到位的保证。 通过将物理位置与应用程序代码分离。应用程序可以发送到数据逻辑名称,逻辑名称到物理位置的解析在部署时解析,允许在拓扑更改时进行飞行中调整。 内置对高可用性解决方案、群集和镜像的支持。镜像可以在不更改应用程序的情况下透明部署,因为只更改了路由。 跨域通信。基于证书的身份验证和授权允许在不相关的windows域之间进行安全通信,如基于Internet的B2B场景。 消息到达时允许数据传输处理的动态可伸缩性。 . 会话组消除了应用程序开发人员锁定相关数据itmes处理的负担。只要会话组密钥用作业务项的数据分区密钥,SSB保证不会有两个请求处理同一业务项。 . 优先级较高的项目可以在队列之前发送和处理。这适用于遵循消息优先级的消息传递基础结构,动词也适用于基于优先级的消息出列。 大规模部署。SSB允许涉及数千个通信合作伙伴的解决方案。它内置了对作为通信节点的通信多路复用的支持,减少了物理连接套接字的数量,并允许后端连接到数量非常庞大的几十万个客户端。 内置负载平衡,用于扩展。新的数据处理站点可以作为简单的部署时路由操作在运行中透明地添加。 SSB是一个通用通信框架,因此不提供开箱即用的表复制功能—更改跟踪、冲突解决或模式更改传播,这些功能保留为SSB应用程序的应用程序语义。 一切都是T-SQL。没有新的语言需要学习,没有新的工具需要掌握。 用于设置、监视和故障排除的支持工具选择不当。这有助于解决大多数SSB运行时和部署问题。