昨天我和一位同事讨论过他使用SSIS(或类似的东西)用SSIS包做一些非常酷的事情的情况,他以“Reginald Williams博士”的名义传递了这个名字。 “并且基于一些加权方案,该系统足够聪明,可以弄清楚如何对其进行标记并将其存储在数据库中作为“Salutation- First Name - Last Name - Suffix”。他抛出了一些流行语,如BI,SSIS,ETL和数据挖掘。我真的想要更多信息,但甚至不知道从哪里开始询问。
我是一名.Net开发人员,精通C#,Vb.Net,WPF等......但我不知道这些技术是什么,如何将它们添加到我的技能组中,以及是否这是我真正应该关注的事情。任何和所有方向都会有所帮助。
答案 0 :(得分:21)
SSIS == SQL Server Integration Services它是一个Extract Transform and Load(ETL)工具,它是SQL7,SQL2K时代SQL数据转换服务或DTS的优秀实现。它是表达工作流程的绝佳工具,其中数据从A点移动到B点(以及c和d等),并通过该过程进行更改,例如合并到非规范化设计或数据清理。
BI或商业智能是技术领域中整个类别的绰号,它现在是一个很好的地方。 BI技能非常有价值且难以获得,其中一个原因是在实验室中很难重现真正的BI案例,因此教学几乎总是在现实世界中完成。
从高层次来看,BI项目通常涉及报告的终点。通常作为开发人员,我们习惯于交易报告编写,例如PO的详细信息,但BI可以进入非常广泛的报告,涵盖数十年的产品销售趋势并处理数亿条记录。我们为应用程序设计数据库的方式并不适合这种报告,因此其他工具和技术被发明并用于BI领域。这些是像Cubes这样的东西,你经常听到它叫做OLAP立方体。 OLAP多维数据集通常来自一个数据仓库,它只不过是另一个数据库 - 但是典型的仓库包含来自多个,通常是几十个其他应用程序数据库的数据。您的库存应用程序,购买应用程序,HR应用程序和其他一大堆都包含创建完整业务图像的大量数据,BI架构师将使用SSIS之类的东西从所有这些系统中提取数据,按摩它并将其存储在数据仓库中,该数据仓库采用不同类型的设计,更适合报告。一旦进入仓库,他将使用Analysis服务在该数据上创建多维数据集,并使用Reporting Services来显示有关该数据的报告。
编辑:对不起,忘了数据挖掘,这是另一个非特定术语,描述和概念或过程,而不是一个工具。在一个简单的例子中,它是一种识别数据模式的有条理的方法。在过去,一个好的业务分析会查看趋势数据但是现代数据库中你所说的数据集太大而无法手动梳理 - 数据挖掘允许你指示计算机梳理这些数据并识别感兴趣的模式
希望有所帮助
答案 1 :(得分:3)
您的同事所做的可能更好地描述为字符串的“智能解析”。这可以在许多复杂程度上完成 - 例如,使用统计模型为您提供“博士”的可能性是一个称呼而不是名字。或者它可以只使用简单的常见称呼查找列表,在这种情况下,它只是常规的程序代码,仅此而已。
SSIS是SQL Server Integration Services的缩写。它基本上是DTS类固醇;有些人喜欢它,有些人讨厌它。用它来做你正在谈论的那种事情是很棘手的;它主要用于从各种来源获取数据并将其组合,转换并将其加载到其他地方。它可以做一些漂亮的事情,其中许多往往是数据挖掘,但最终它是一个生产工具,用于向一个方向或另一个方向填充数据。它在数据挖掘社区中并没有得到特别好的尊重。
Data Mining是一门完整的学科,专注于使用一些(通常是大量)数据来预测未来的答案或更好地理解现有数据中的模式。这绝对是一个很好的领域,但不是你可以选择的东西,没有对数学和算法的深入研究。关于这个主题的好书是this one。
“商业智能”实际上更像是一种流行语而非特定技术,对不同的人来说可能意味着不同的东西。在基础上,这个想法建议对业务数据做一些不那么愚蠢的事情,并且通常它指的是随着时间的推移分析趋势,通常使用OLAP。它也可能包括数据挖掘或人工智能算法,但由于没有严格的定义,任何想要卖给你东西的人都会告诉你它提供“商业智能”,并希望你不要再挖掘。
答案 2 :(得分:2)
SSIS是SQL Server Integration Services,对于执行ETL(提取,转换和加载)非常有用,这些ETL是许多数据仓库/ business intelligence解决方案的前端,可将数据集成到易于使用的维模型中。 SSIS对于较小的项目也很有用,可以作为从其他存储库或文件加载旧数据或数据的便捷方式。
Data mining通常意味着使用来自集成资源的数据来推断交易数据中不明显的信息(通过集成多个来源为数据提供更多“维度”。
BI是一个很大的话题,所以除非你想进入那个领域,否则它可能不是一个值得关注的东西,但SSIS在小型项目中很有用,无论如何都值得学习。