有关构建浏览器应用程序的建议,以便在公司内部可视化数据库中的数据?

时间:2013-10-09 19:50:38

标签: python database ms-access web-applications visualization

我正在为这个预期的应用寻找解决方案。

我在我们的投资组合中维护着一份公司名单的表现数据库。该数据库是该公司日常业绩的集合,可追溯至几个月。表的格式如下(简化版):

ID, Date, Investment_Name, Market_Share, %_change
1, 1/1/2000, SPX, 0.1, 0.05
2, 1/1/2000, INDU, 0.2, -0.01
...
101, 1/2/2000, SPX, 0.1, 0.03
102, 1/2/2000, INDU, 0.2, 0.03
...

数据目前在Access中维护,我为自己设置了查询,以查看整个投资组合的每日回报,获取所选证券的历史序列等。基本上我能想到的任何事情我可以查询

...

现在我正在尝试为其他人创建一些内容来访问这些数据。我希望它是一个应用程序(托管在我们的本地网络上),让人们了解我们公司当前的表现。我能想到的最简单的事情是创建一个浏览器应用程序来查询数据库并提供数据的可视化。用户可以自由选择要以表格和图表形式查看的内容。也许制作一些模块,在每个资产类别中显示“前5”“底5”。更高级的功能是制作“假设”场景,改变安全构成和类似的东西。

我的发展经验非常有限。我知道python在可行的程度上,已经使用像pandas和matplotlib这样的东西来进行局部绘图。我想知道是否有一种轻量级的方法来使用其他一些python模块设置这样的系统?或者是否有可用于此类任务的Web框架?我确信这是许多组织中的常见任务,我很想知道实现这一目标的最简单方法是什么。

非常感谢你的时间。

3 个答案:

答案 0 :(得分:0)

最简单的方法可能是将数据加载到共享数据库中(使用任何版本的SQL,在您的情况下,SQL Server最有可能是在Access中启动时),然后再使用Spotfire(http://spotfire.tibco.com/ )或Tableau(http://www.tableausoftware.com/)。我已经使用了Tableau,它非常漂亮,您可以预先报告一些报告,并允许您的用户实时操作数据。它还有一个我从未使用过的网页界面。

两者都有点贵,但我不知道这是否适合你。祝你好运!

答案 1 :(得分:0)

不一定完全符合您的要求,但可以完成大部分相同的目标,具体取决于安全问题,现场要求等......

Google推出了一款测试版产品,这些产品已整合到他们的Google云端硬盘产品中,名为Fusion Tables。它基本上是一个简单,简化的云托管数据库引擎。它支持通过URL进行基于SQL的更新或在界面内手动更新。此外,它还内置了许多可视化功能。根据您需要的安全程度,和/或如果您已经有谷歌应用程序用于业务,这可能是一个可供选择的选项。

你可以设置一个新的融合表(获取谷歌帐户,登录,转到谷歌驱动器,然后单击创建,应该有一个表或融合表或其他一些作为创建选项)。然后,您可以创建字段并手动添加数据,或者只导入已有的现有表。然后编辑共享属性,以便在必要时为其他人提供只读权限或对表的读写权限以及可以从中创建的各种可视化。内置了一些图表和图形功能,但我自己并没有过多地使用它,因为我主要使用它的集成映射功能。

同样,对于你所要求的不是完美的解决方案,但认为它可能有所帮助,所以我想分享。

答案 2 :(得分:0)

有各种开源BI工具,主要参与者是:

这不仅仅是一个工具,你想要将数据保存在Access中吗?或者你想把它放在像mysql或postgresql这样的东西中,你将如何自动化ETL(另见http://www.talend.com),记录定义等。

自己建造它更酷,但也不那么容易。您可以在pandas上构建一个RESTful api(例如在UWSGI / Flask上运行),然后在其上放置一个像d3.js(http://d3js.org)这样的html5库。但这是一个非常大的努力,特别是对于一个人的团队。如果我是你,我会看看pentaho;)