利用SQL Sserver进行数据分层抽样操作流程

1. 创建Integration Services项目

如下图所示,首先建立Integration Services项目,自定义名称,项目保存位置等信息。


利用SQL Sserver进行数据分层抽样操作流程_第1张图片
利用SQL Sserver进行数据分层抽样操作流程_第2张图片

2. 创建Data Flow Task

在控制流选项卡的状态下创建Data Flow Task


利用SQL Sserver进行数据分层抽样操作流程_第3张图片

3. 开始创建分层抽样数据

3.1 添加OLE DB Source

切换到数据流选项卡,添加OLE DB Source,用于装在数据源,在没有建立数据连接的情况下,右边有一个红色的叉。


利用SQL Sserver进行数据分层抽样操作流程_第4张图片

注意:一定要使用OLE DB Source,而不是OLE DB Destination

3.2 设置数据源

双击上图的OLE DB Source,跳出如下OLE DB源编辑器


利用SQL Sserver进行数据分层抽样操作流程_第5张图片

1.如果建立过连接,那么在OLE DB连接管理器点选需要连接即可;
2.如果没有连接可用,那么在新建一个数据库连接,配置相关信息即可;
3.建立好连接后,选择需要的表或者视图;
4.在预览里,可以查看连接好的表前200行数据;

3.3 创建Conditional Split

创建条件分层数据

利用SQL Sserver进行数据分层抽样操作流程_第6张图片

在没有Conditional Split与OLE DB Source之间的数据流之前,如果如果去设置Conditional Split的属性,会报错,当你去编辑属性的时候,发现根本找不到你需要的 表字段

利用SQL Sserver进行数据分层抽样操作流程_第7张图片

3.4 建立OLE DB Source与Conditional Split之间的数据流

利用SQL Sserver进行数据分层抽样操作流程_第8张图片

建立好数据流之后,再去设置分层条件

3.5 设置分层条件

根据列字段,设置分层的条件


利用SQL Sserver进行数据分层抽样操作流程_第9张图片
Paste_Image.png

如上图所示,这里使用了class字段进行分类,class字段位字符类型数据,因此在设置条件时,需要使用英文状态下的双引号包起来,如果出现如果所示的红色文字,请注意检查是否使用了中文状态下的双引号。输出名称自由设置即可。

3.6 插入Row Sampling

如下图所示,插入两个Row Sampling,一个用于装载Negative Data,一个用于装载Positive Data


利用SQL Sserver进行数据分层抽样操作流程_第10张图片
利用SQL Sserver进行数据分层抽样操作流程_第11张图片

注意:在建立Conditional Split与Row Sampling之间的数据流时,注意数据的数据与我们设置的Row Sampling预期是否一致。

3.7 设置Row Sampling的属性

双击Row Sampling,设置属性,如下图所,设置行数,选中样本输出名称及未选中样本输出名称,输出名称可以自行设定,便于自己区分。
勾选 使用以下随机种子选项,这样每次抽样的结果都会是一样的。


利用SQL Sserver进行数据分层抽样操作流程_第12张图片

注意:此次采用分层抽样而非概率随机抽样,因此此次需要抽取的数据行数,需要自行根据实际情况进行设定,如果采用八二原则,则需要计算分类群体的总量数据,在总量的基础上再进行 训练->测试数据的分割。

3.8 插入Union All并设置数据的合并

在次之前,我们已经将数据进行分层,并设置好各层的训练数据,测试数据的配比,在此,我们需要将分层数据进行抽样汇总,需要使用Union All单元。


利用SQL Sserver进行数据分层抽样操作流程_第13张图片

注意:数据输出之间的关联。

3.9 插入OLE DB Destination

最后,插入OLE DB Destination,用于分层抽样数据的目标宿主,在配置属性里面,新建表用于存储对应的分层数据。


利用SQL Sserver进行数据分层抽样操作流程_第14张图片
Paste_Image.png

注意:在创建向导里新建,会弹出创建的表,根据自己的需求,可以修改创建的表名称。
至此,基本已经建立分层抽样数据,但是,当我们查看数据流图时,发现OLE DB Destination上还有红色的叉。这是怎么回事。

利用SQL Sserver进行数据分层抽样操作流程_第15张图片

3.10 设置新建表字段与数据源之间的关联。

上一步的红色叉警告,是因为我们没对OLE DB Destination的表字段与数据源之间的关联,我们只需要在属性中配置他们的关系即可。


利用SQL Sserver进行数据分层抽样操作流程_第16张图片

打开属性向导,切换至映射选项卡,建立映射关系,确定即可。这样,红色警告就会消失。至此,分层抽样数据流图已经建立完毕。


利用SQL Sserver进行数据分层抽样操作流程_第17张图片

4. 运行项目,对数据进行分层抽样

万事具备,只欠运行。
点击启动,运行,就可以得到最终的数据。


利用SQL Sserver进行数据分层抽样操作流程_第18张图片

当我们看到数据流上有数据信息产生,有绿色的勾,那么即表示成功建立完毕。点击下面的链接,可以返回到数据流图界面。

利用SQL Sserver进行数据分层抽样操作流程_第19张图片

5. 数据库查看分层抽样数据

打开数据库,可以发现数据库中创建了两个新表,即我们在3.9中创建的表,里面有对应的分层数据。

利用SQL Sserver进行数据分层抽样操作流程_第20张图片

至此,分层抽样数据准备完毕,可以用于数据的建模分析。

你可能感兴趣的:(利用SQL Sserver进行数据分层抽样操作流程)