Run*_*une 11 sql-server ssas web-server olap
我的任务是为一家大型零售连锁店设计一个解决方案。他们希望允许其 120 万客户中的每一个都登录到一个网站,查看大约 50 个类别的最近购买(当月、上月、年初至今)的分布情况。数据将每天更新一次。
我正在考虑建立一个基于 SQL Server 2012 的 OLAP 多维数据集,并让网站直接查询这个多维数据集,利用主动缓存等功能。但是,作为一名开发人员,我几乎没有使用 SQL Server 的分析服务部分的经验,因此我非常关心此解决方案的性能。
将网站直接连接到 OLAP 多维数据集听起来像一个可行的解决方案吗?这些系统是否像 SQL Server 一样对来自多个用户的负载做出反应,使其成为一个合理的解决方案,或者它们的行为是否完全不同?
我不希望用户经常检查他们的状态,我当然会在网络服务器等上使用缓存。
Con*_*lls 11
您可以使用 OLAP 系统执行此操作 - SSAS 对此类应用程序的一些好处包括:
SSAS 可以很容易地横向扩展 - 特别是因为这是一个只读应用程序,不需要多维数据集写回。
可以调整聚合以最小化 I/O,从而允许调整多维数据集以提高效率。
OLAP 客户端软件和第三方控件(Web 和富客户端)可从许多供应商处轻松获得。
SQL Server 2012 商业智能版几乎具有 SSAS 的所有可伸缩性功能,因此它可以用作 SQL Server 企业版(或第三方)数据库前端多维数据集的经济高效的平台。请注意,许可可能是一个问题,因为 BI 版本仅限 CAL。
SSAS 具有数据挖掘功能,可用于对数据进行购物篮分析,并在网站上提供“建议购买”功能。
另一方面,要求是显示相对受限的数据集,因此 OLAP 服务器的临时切片和切片功能可能会过大,无论是在软件成本还是运行它的硬件基础架构成本方面( SSAS 非常需要资源)。您可能可以通过定期刷新的摘要数据库来满足您的直接要求,并且以更少的硬件和许可成本来实现。
乍一看,我认为 OLAP 可能不是满足您现有要求的必要条件。但是,它当然可以通过这种方式完成,并且您可能会从数据挖掘功能中获得一些帮助,以提供“建议购买”功能。
SSAS 是一个非常繁重的话题。您对数据库引擎的了解几乎都不能应用于 Analysis Services。如果唯一的目标是为这个报告提供一个后端,那么与定期刷新存储在一个报告中的一些摘要数据的更传统的方法相比,加快 Analysis Services 的速度和实施 OLAP 数据库将是一个相当大的开销。关系数据库,或创建从定期生成的执行快照运行的 Reporting Services 报告。
也就是说,如果您真的长期需要 Analysis Services 的某些优势,例如临时多维报告和 MDX 表达式(您可以做一些非常酷的事情),并且您正在使用一个非常大的数据仓库,使其显着优于关系数据库,那么它可能值得学习。然而,不要指望在一天之内就能拿到它。