数据传输和分配方法

时间:2009-07-02 12:04:53

标签: sql-server sql-server-2005

这是我第一次尝试构建一种wiki(一般的),所以请支持! :) 我正在编译一个处理传输和分发数据的方法列表。请将您的想法添加到我的列表中。我会更新文档并重新发布,以便每个人都能从中受益。如果我错过了一个方法,请告诉我,我会编辑它!

  1. 复制
  2. BCP /批量插入
  3. 分布式查询/链接服务器
  4. SSIS
  5. 复制

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

      我对BCP实用程序不太熟悉,或者根据其他可用服务对它有何帮助。这是贡献有用的地方!但这是我可以收集的内容:

      1. BCP:快速转移
      2. 批量插入:用作内联T-SQL解决方案。可以预定。但是,数据格式必须非常干净
      3. 分布式查询/链接服务器

        1. 链接服务器:提供对SQL Server复制提供的各种数据源的访问
        2. 链接服务器:使用复制不支持或需要临时访问的数据源进行连接
        3. 链接服务器:比OPENDATASOURCE或OPENROWSET
        4. 表现更好
        5. OPENDATASOURCE和OPENROWSET功能:方便从临时数据源检索数据。 OPENROWSET也有BULK设施,可能/可能不需要格式文件,可能是fiddley
        6. OPENQUERY:不支持变量
        7. 所有都是T-SQL解决方案。相对容易实施和设置
        8. 所有这些都依赖于源和destion之间的连接,这可能会影响性能和可伸缩性
        9. SSIS 我再次对SSIS没有多少经验。这就是我所知道的:

          1. 连接到不同的数据库
          2. 您对上述所有方法有什么经验和想法?

2 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

Service Broker

  1. 极致表现。与SQL Server引擎事务和数据访问的紧密集成可实现高数据吞吐量。
  2. 提供reliable guaranteed delivery面对不可靠的网络链接和通信伙伴可用性的停机时间。即使在脱机或未连接时,应用程序也可以简单地发送数据,SSB将透明地处理所需的重试,同时保持一次完整的订单保证。
  3. 通过routes将物理位置与应用程序代码分离。应用程序可以发送到数据逻辑名称,在部署时解析逻辑名称到物理位置的分辨率,允许在拓扑更改时进行飞行中的调整。
  4. 内置支持高可用性解决方案,群集和镜像。镜像可以透明地部署,无需更改应用程序,因为只更改了路由。
  5. 跨域通信。基于证书的身份验证和授权允许在不相关的Windows域之间进行安全通信,例如基于Internet的B2B方案。
  6. 消息到达时
  7. Activation允许数据传输处理的动态可扩展性。
  8. Correlated processing exclusive lock-out。会话组消除了从应用程序开发人员锁定相关数据itmes处理的负担。只要会话组密钥用作业务项SSB保证的数据分区密钥,就不会有两个请求处理相同的业务项。
  9. Priority support。可以在队列之前发送和处理更高优先级的项目。这适用于遵循消息优先级的消息传递基础结构,RECEIVE动词也基于优先级使消息出列。
  10. 大规模部署。 SSB允许涉及数千个通信伙伴的解决方案。它内置支持deploying dedicated message forwarders通信的多路复用,充当通信节点,减少物理连接(套接字)的数量,并允许后端连接到大量客户端(数十万和数十万)
  11. 用于横向扩展的内置负载平衡。新的数据处理站点可以作为简单的部署时间路由操作即时透明地添加。
  12. SSB是一个通用的通信框架,因此不提供out-o-box表复制功能(更改跟踪,冲突解决或模式更改传播),这些都留作SSB应用程序的应用程序语义。
  13. 一切都是T-SQL。没有新的语言需要学习,没有新的工具可以掌握。
  14. 选择不当的支持工具进行设置,监控和故障排除。 SQL Server 2008 has a diagnostics tool可帮助解决大多数SSB运行时和部署问题。