好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

使用SQL Server Analysis Services数据挖掘的关联规则实现商品推荐功能

使用SQL Server Analysis Services数据挖掘的关联规则实现商品推荐功能

使用SQL Server Analysis Services数据挖掘的关联规则实现商品推荐功能

假如你有一个购物类的网站,那么你如何给你的客户来推荐产品呢?这个功能在很多电商类网站都有,那么,通过 SQL Server Analysis Services 的数据挖掘功能,你也可以轻松的来构建类似的功能。

   

将分为三个部分来演示如何实现这个功能。

1. 构建挖掘模型

2. 为挖掘模型编写服务接口

3. 开发简单的前端应用

第一篇介绍如何使用 SQL Server Analysis Services 基于此问题来构建简单的挖掘模型。

   

关于数据挖掘,简单的就是说从海量数据中发现信息的一个过程。如果说商业智能分为三个层次:告诉你发生了什么,为什么会发生,将来会发生什么。那么,数据挖掘绝对算是商业智能中最高的一个层次,告诉你将来会发生什么,也就是预测。而预测的基础就是根据海量的历史数据,结合一定的算法,以概率为基础,告诉你一条新数据某条属性的趋势。

数据挖掘的模型很多,贝叶斯,时间序列,关联规则等都是常用的模型,根据不同的问题特征可以套用不同的模型算法。比如此篇提到的商品推荐,就是典型的适合用关联规则来解决。在数据挖掘中典型的啤酒和尿布的问题,大体上就是基于这个方法。

通过 第一篇 的内容,你可以基本掌握如何构建一个基于关联规则的数据挖掘模型。

第二篇在上一篇已经构建好挖掘模型的基础之上,介绍如何构建服务接口。

   

编写服务接口的方法很多,比如使用 WCF 。为了简便,这里直接使用 ASP.NET Web Services 。

将挖掘模型的具体查询的实现部分写到 Web 服务代码中,主要是考虑到代码分层降低耦合性。另外这部分逻辑通过服务的方式来暴露接口,可以方便其它任何平台来进行调用,比如 ASP.NET, Winform, WPF 或者其它基于 java 的技术框架等。 Web 服务最主要的部分是 XML ,一个服务接口往往就是一个 URL 地址,客户端程序通过向这个地址发送 xml 请求的方式,来获取服务端代码的响应,结果再以 xml 的方式返回回来。那么既然来回通信的都是 xml 数据,是否意味这还要手动写代码来序列化和反序列化 xml 数据呢?这里面又涉及到一个 SOAP 的概念,这是一个在 10 年前很火的概念,简单对象访问协议。通过这个 SOAP 协议,客户端程序可以知道要访问一个 Web 服务,应该发送什么样的 xml 数据,以及收到服务端 xml 的数据之后,本地再如何解析这些数据。基于这样一个方式, Visual Studio 中,当你引用一个服务的时候,它就会根据这个协议,在你本地生成若干代理类,这样在你调用远程的一个 Web 服务的时候,你就会感觉像是在调用本地里的一个类的方法一样方便。

通过 第二篇 的内容,你可以基本掌握做数据挖掘查询的基本方法,以及如何使用数据挖掘模型。

第三篇在上两篇已经构建好挖掘模型和服务层的基础之上,介绍如何构构建简单的前端应用来做商品推荐功能。

   

由于我们用的是 Web 服务的方法来封装挖掘模型的查询,所以理论上这个服务可以被很多客户端应用程序访问,比如 ASP.NET, winform 和 WPF 等,这里我们选择 Silverlight 5 。

Silverlight 5 是跟 FLASH 差不多的东西,是微软平台下的 RIA 方案。在这个平台下我们可以通过 XAML 开发出绚丽的应用程序。

虽然它的光辉已经快被 HTML5 所掩盖,而且微软也停止了后续版本的更新,全力的投入到 HTML5 中,但是 HTML5 成型还尚早,在企业开发中, Silverlight 还是有十足的魅力和足够的优势以及强大的开发工具支持。

当然,如果你得项目是 ASP.NET 或者其它类型的项目,那么也可以参考此篇来进行操作。实际上此篇对于一个有经验的前端开发人员意义不大,因为这里主要讲的是如何调用一个 Web 服务。但作为一个系列考虑到每个人的侧重点都不同,为了做一个整体的介绍,所以这里还将细致到每一步的操作。

通过 第三篇 的内容,你可以看到如何通过一个客户端程序访问服务接口然后做挖掘预测查询从而实现商品推荐功能。

示例项目的结构:

希望这个小系列能在项目中帮到大家。

文章相关文件下载

分析服务项目下载

分析服务数据库备份下载

服务及前端程序下载

用到的资源:

如何获取官方的示例库并且部署它们

微软官方的数据挖掘教程

---------------------------------------------------------------

aspnetx 的 BI 笔记系列索引:

使用SQL Server Analysis Services数据挖掘的关联规则实现商品推荐功能

微软SQLServer官方示例项目部署-数据引擎和分析服务部分

使用SQL Server Analysis Services Tabular Model建立分析模型

在Silverlight下用Visifire显示多维数据集中的数据

在Silverlight下用Visifire显示多维数据集中的数据(二)

BI笔记之---增量方式处理多维数据集

BI笔记之---BI通用流程

BI笔记之---SSAS部署的几种方式

BI笔记之---SSAS库Process的几种方案  

BI笔记之--- Cube增量处理的一个场景的处理方案

BI笔记之---SSAS中关于某一度量需要先后根据不通维度的不同聚合方法的解决

BI笔记之---RDLC中读取Analysis Services中Cube的数据

---------------------------------------------------------------

来自 博客园 的 aspnetx 宋卫东

 

分类:  (BI)商业智能

作者: Leo_wl

    

出处: http://www.cnblogs.com/Leo_wl/

    

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

版权信息

查看更多关于使用SQL Server Analysis Services数据挖掘的关联规则实现商品推荐功能的详细内容...

  阅读:53次