使用SSAS,TFS和& S管理团队开发BIDS

时间:2010-04-16 15:20:51

标签: tfs project-management ssas

我目前是企业数据软件和多维数据集的单一BI开发人员。我使用SQL Server 2008,SSAS和SSIS作为我的基本工具包。我使用Visual Studio + BIDS和TFS进行IDE和源代码控制。我即将与离岸供应商合作开展多个项目,我担心管理变革。我主要担心的是我和离岸团队之间的合并和变化。合并和管理对SQL&amp ;;的更改只有一个人的XML已经够糟糕了,但是对于多个开发人员而言,这似乎是一场噩梦。有关如何最好地构建开发的任何想法,知道有时候无法避免多个人对同一个文件进行更改吗?

4 个答案:

答案 0 :(得分:3)

SSIS,SSAS和SSRS文件不合并。它们存储在一个大大改变的xml文件中 - 即使是微小的更改(例如更改属性) - 因此实际上不可能合并。

所以不要考虑在一个文件上进行并行开发。您需要考虑如何实现人们不需要在一个文件上进行并行开发。首先禁用多个签出文件。您甚至可以考虑启用该选项以在结帐时获取最新版本。

然后开始考虑如何实现人们可以独立工作。这更像是您构建工作和文件的方式:

  • 为人们提供他们可以工作的区域。一个SSIS包只在任何特定时刻由X人开发。
  • 制作较小的文件,以便两个人在同一文件中工作所需的更改很小。

我已经向BIDS的不兼容性产品团队提供了反馈意见。这是一个众所周知的问题,但很难解决。他们不知道什么时候可以真正对这些文件进行并行开发。在此之前,请远离并行开发。

答案 1 :(得分:0)

正如Ewald Hofman所说,SSAS和SSIS不合并。

我在一个工作环境中解决了以下问题:

  • 只在必要时使用SSIS(模糊算法或类似的东西)。使用SQL代码尽可能多地替换SSIS包(有关数据同步,请参阅Linked Server。例如,参见维度/事实表创建的MEARGE命令)。
  • 按如下方式构建您的数据仓库结构:
  • 构建2个数据库,一个用于"原始源数据"来自源系统和一个(#34;阶段"数据库)的维度和事实视图和表格
  • 使用可以部署整个"阶段的程序"数据库
  • 把结构放在"阶段"数据库到您的存储库
  • 构建一个C#应用程序,通过AMO API构建您的维度和多维数据集(我知道,这在开始时是一项艰巨的工作,但它值得 - 想想你获得了什么 - 请看下面的专业人员)

  • 将舞台数据库和C#应用程序添加到您的存储库(TFS / Git等)

该结构的优点:

  • 您有一个可以放入存储库的可合并结构
  • 您使用的是AMO API
  • 您可以自动生成新分区
  • 您可以使用程序自动化并将度量值组克隆到不同的多维数据集(我认为这有时是一个很大的好处!)
  • 您可以外包翻译并轻松导入(多维数据集设计师可能不是最好的翻译者)

缺点:

  • 供应商可能不会调整该结构
  • 你需要支付更多(因为技能要求较高或教他个人结构)
  • 您可能需要了解C#的新语言 - 如果您还没有

结论:

  • 有可能获得合并友好的环境
  • 你会迷失于不错的点击运行工具f.e. BIDS - 但将进入高自动化功能的过程
  • 由于个性化程度高,外包可能无利可图

答案 2 :(得分:-1)

答案 3 :(得分:-1)

只要两个团队都使用出价和TFS,这应该不是问题。

假设您的tsql代码在每个对象的单个文件中签入源代码控制,合并TSQL代码是直接的,因为它是基于文本的。我发现VSTS数据库项目有助于此。

如下所示,合并SSIS和MSAS的基于XML的源文件可能很麻烦。为了减轻一些痛苦,我发现将每个程序包限制为单个数据流或逻辑工作单元有助于减少开发人员对程序包的争用。然后我从一个或多个主包中调用这些包。我还尝试使用sprocs,view或udfs来外部化我的所有tsql源查询,以便进一步减少编辑包的需要。使用配置文件和变量也有助于更小的程度。

MSSAS立方体有点难度。我最好的建议是调查第三方xml差异工具。我已经能够使用基于标准文本的工具成功合并小的更改,但这可能是一项艰巨的任务。