sql-server - 使用来自 SQL Server 的数据进行自动时间序列预测
问题描述
我正在开发一个项目,该项目包括创建一个实时在线仪表板(使用引导程序、Visual Studio 和 C# 等),具有时间序列预测功能。
数据源来自 SQL Server。实现这一目标的最佳一般方法是什么:
- 我是否需要准确地在数据库中进行预测,然后只需提取结果并将其显示到仪表板或。
- 我是否需要提取必要的数据,然后在 Visual Studio 和 C# 部分进行预测。
- 还是我错过了什么?
解决方案
通常,您会从源获取数据的本地副本并将它们加载到 BI 引擎/数据库中 - 让我们这样说:
Sales|Month
$100:Jan
$200:Feb
$300:Mar
那时,您将执行预测/标记/黑魔法 - 将数据写回 BI 数据库 - 这次标记“真实”和“评估”记录并进行任何所需的聚合。
也许你的桌子现在看起来像这样:
Sales|Month|Source
$100:Jan|SalesSystem
$200:Feb|SalesSystem
$300:Mar|SalesSystem
$400:Apr|ForecastingAlgorithm1234
$500:May|ForecastingAlgorithm1234
然后,这种结合的现实/投影来源是您需要运行或呈现的任何可视化或进一步分析的近似来源。
在此示例中,“预测算法”与系统无关 - 它可以在 Visual Studio(.net 等)或 SQL Server 中执行,具体取决于您需要的技术。
这里的关键是遵守一些简单的原则: - 维护数据沿袭 - 不要在源系统中编写或“工作”(使用单独的 BI SQL 实例 - 或至少使用数据库) - 保持规范和构造的清晰度数据 - 不要在内存中“工作” - 将其全部具体化到表/数据库中以供后续分析和调试 - 相信我 - 在最初的几次迭代中会出错,并且取消选择具体化数据比临时更容易!