微软 BI 系列随笔 - SSIS 2012 基础 - SSIS 目录


上一篇讲解了使用SSIS参数与环境,由于涉及到了SSIS目录的相关知识和概念,本篇将对其进行讲解。

注:在之前的版本中,是使用整合服务服务器下面的运行程序包(Running Packages)文件夹和存储程序包(Stored Packages)文件夹两个节点来管理程序包。

关于SSIS目录

“SSISDB”目录(Integration Services Catalog)是SQL Server 2012新引入的一个功能。它是管理已部署到 Integration Services 服务器的 Integration Services (SSIS) 项目的中心点。 在目录中,可以设置项目和包参数,配置环境以便为包指定运行时值,执行包并对包进行故障排除,以及管理 Integration Services 服务器操作。

SSIS目录结构

完整安装的SSISDB目录结构如下:

图中 1 是SSISDB数据库,他是SSISDB目录的基础。2 是SSISDB目录的文件结构,他是可视化管理目录。

下面分别对SSISDB目录中看到的各层解释,以及找到他在SSISDB数据库中对于的实体。

  • SSISDB -- 对应的是整个SSISDB数据库。
  • 文件夹(图中EDCSSISProcessing)

   文件夹是项目和环境的储存仓库,在部署时通常为每个项目(或一个解决方案)指定一个单独的文件夹。

   文件夹对应的是[internal].[folders]表,与之相关的权限在[internal].[folder_permissions]表。

  • 项目

   项目即是在SSDT(或Visual Studio)中创建的项目。项目是存在与项目的文件夹(Projects)中。在项目的父文件夹,可以实现项目的部署和导入包。

    • 部署项目是通过Integration Services Deployment Wizard来实现项目部署,参见SSIS 项目部署模型
    • 导入包是指通过Integration Services Project Converion Wizard来实现包的部署,这个之后会写一篇文章下讲解。
    • 在项目上可以实现配置,验证,移动,管理版本,导出ispac部署文件以及设置项目权限。
    • 可以通过选择历史版本,来控制选择包的设计内容,实现无缝的切换(灰常有用)
    • 项目对应的是[internal].[projects]表,与之相关的权限在[internal].[project_permissions],版本在[internal].[object_versions]表。

       

  • 环境

   环境是SSIS2012中新引入的用于配置包在各个环境的运行时值的容器。在环境文件夹可以添加环境,在环境属性中可以添加环境变量。

   环境对应的是[internal].[environments]表,其权限配置在[internal].[environment_references]。

   包是SSIS开发的实际可执行文件。包级别支持配置,执行和验证。

   包对应的是[internal].[packages]表,这个表包含了所有的部署过的包已经对应的版本信息。

  • 参数

   参数是定义在项目级别和包级别的参数,选择项目或者包的配置,可以设置参数的值。

   参数对应的是[internal].[object_parameters]表,这个表还包括了连接管理器的参数信息,他的每条记录也是基于不同的版本来的。

  • 环境变量

   环境变量是配置在每个环境里面的运行时变量。它存在于[internal].[environment_variables]表中。

以上列出了常用的管理单元,还有一些在SSISDB目录中没有列出来但是在SSISDB中存在的表也解释一下

  • SSISDB其他表

    • [internal].[executables] -- 记录每个版本的包里面的可执行任务
    • [internal].[operations] -- 该表记录了SSIS包的操作记录
    • [internal].[operation_permissions] --记录的每个操作记录的权限
    • [internal].[operation_os_sys_info] --记录每个操作的系统资源使用
    • [internal].[operation_messages] --记录每个操作的运行时状态,具体到包里面的各个任务的执行情况
    • [internal].[executions] --记录每个SSIS包的执行信息
    • [internal].[execution_parameter_values] --记录执行时各个参数的值
    • [internal].[executable_statistics] -- 记录每个包里面可执行任务的执行状态
    • [internal].[event_messages] -- 记录每个可执行任务的消息代码
    • [internal].[event_message_context] -- 记录每个可执行消息的上下文属性
    • [internal].[catalog_encryption_keys] -- 记录创建SSISDB时使用的密码和加密的Key值。

总结

本文介绍了SSISDB目录的结构和对应的数据库实体表,可以看出SSIS的整个架构设计。他的这个架构设计堪称完美的将开发,部署与管理紧密的结合在一起。细细看他的每一个细节,从项目到包,到可执行文件,到参数配置,版本控制,运行时日志,执行日志,消息追踪和持久化,在我们平时设计系统时是不是也可以借用一下呢?留给有兴趣的同学思考吧。

SSIS 目录的更多相关文章

  1. SSIS 参数与环境

    微软 BI 系列随笔 - SSIS 基础 - 参数与环境 简介 在上一篇博客中,主要讲述了如何实现SSIS的项目部署,参见 微软 BI 系列随笔 - SSIS 2012 基础 - SSIS 项目部署模 ...

  2. 部署SSIS包完成远程数据更新

    ** 温馨提示:如需转载本文,请注明内容出处.** 本文连接:http://www.cnblogs.com/grom/p/9018978.html 笔者需要定期从服务器更新N家客户的远程服务器数据,上 ...

  3. SSIS - 11.For循环容器

    一.For循环容器中的3个循环变量 For循环容器,类似于编程语言中的For,用于重复执行容器内的任务,直到条件返回为False.与编程语言类似,For循环容器也需要定义以下3种循环属性: 注: 必须 ...

  4. SSIS服务无法登录的解决方案

    现象1:登录SSIS报权限认证失败. 授予对 Integration Services 服务的访问权限 运行 Dcomcnfg.exe. Dcomcnfg.exe 提供用于修改注册表中的某些设置的用户 ...

  5. Sql Server 部署SSIS包完成远程数据传输

    本篇介绍如何使用SSIS和作业完成自动更新目标数据任务. ** 温馨提示:如需转载本文,请注明内容出处.** 本文链接:https://www.cnblogs.com/grom/p/9018978.h ...

  6. SSIS实践入门3:把SSIS程序包从A电脑到B电脑的转移

    接触SSIS已经有几天了,之前一直是在A电脑做一些demo和修改一些之前的SSIS程序.这次在包中拖入了一个脚本任务,但是在A电脑打开编辑一直打不开,如下图所示 在B电脑就可以打开SSIS脚本编辑器 ...

  7. SQL Server 2016 CTP2.3 的关键特性

    SQL Server 2016 CTP2.3 的关键特性 数据库方面的增强 Row Level Security已经支持In-memory OLTP 表.用户现在可以对内存优化表实施row-level ...

  8. SSIS DB目录设置 (Integration Services Catalogs)

    1.创建SSISDB目录 这里没什么好说的,点击Enable CLR Integration ,然后设置一个加密密码 2. SSIS Catalog设置 Retention Period (days) ...

  9. 微软BI 之SSIS 系列 - 在 SSIS 中将指定目录下的所有文件分类输出到不同文件夹

    开篇介绍 比如有这样的一个需求,旧的一个业务系统通常将产出的文件输出到同一个指定的目录下的不同子目录,输出的文件类型有 XML,EXCEL, TXT 这些不同后缀的文件.现在需要在 SSIS 中将它们 ...

随机推荐

  1. Mybatis 批量insert

    @Override public int insertHouseTypeScene(int htid, String name, String icon,int sort, List<House ...

  2. python内置函数 1

    常用函数 abs(x) abs()返回一个数字的绝对值.如果给出复数,返回值就是该复数的模. >>>print abs(-100) 100 >>>print abs ...

  3. Naive Bayes理论与实践

    Naive Bayes: 简单有效的常用分类算法,典型用途:垃圾邮件分类 假设:给定目标值时属性之间相互条件独立 同样,先验概率的贝叶斯估计是 优点: 1. 无监督学习的一种,实现简单,没有迭代,学习 ...

  4. C# 检测程序运行时间的方法,Stopwatch类

    //需要引用命名空间,System.Diagnostics Stopwatch watch = new Stopwatch(); //实例化一个计时器 watch.Start(); //开始计时 #r ...

  5. wireshark过滤使用

    过滤器的区别 捕捉过滤器(CaptureFilters):用于决定将什么样的信息记录在捕捉结果中.需要在开始捕捉前设置.显示过滤器(DisplayFilters):在捕捉结果中进行详细查找.他们可以在 ...

  6. Codeforces Round #371 (Div. 2) C. Sonya and Queries

    题目链接 分析:01trie树,很容易就看出来了,也没什么好说的.WA了一发是因为没有看见如果数字位数大于01序列的时候01序列也要补全0.我没有晚上爬起来打,白天发现过的人极多. /******** ...

  7. OC语言description方法和sel

    OC语言description方法和sel 一.description方法 Description方法包括类方法和对象方法.(NSObject类所包含) (一)基本知识 -description(对象 ...

  8. linux命令每日一练习-rmdir mv

    rmdir 删除一个空的文件夹,当目标文件夹非空的时候不能删除 mv 移动文件或目录 mv source target mv -i *** *** 如果目标文件存在则询问是否覆盖 mv -f *** ...

  9. iOS7程序内部如何打开评分页面

    测试发现项目在iOS7下 无法打开评价页面,但是iOS6是正常: 查了一下发现应该是iOS7 改变链接了,有个网友给出了以下的解决办法 把旧的链接改成 appString =[NSStringstri ...

  10. 2、android Service 详细用法

    定义一个服务 在项目中定义一个服务,新建一个ServiceTest项目,然后在这个项目中新增一个名为MyService的类,并让它继承自Service,完成后的代码如下所示: ? 1 2 3 4 5 ...