用于NodeJ的OLAP服务器

2024-05-16 00:53:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在寻找为一个应用程序提供分析的方法,这个应用程序由用NodeJs和MySQL编写的REST服务器驱动。发现了OLAP,它实际上可以使这变得更容易。在

找到了一个python库,它提供了一个名为“Slicer”的OLAP HTTP服务器

http://cubes.databrewery.org/

  • 有人能解释一下这是怎么回事吗?这是否意味着我必须更新我的模式。并创建所谓的事实表?

  • 这可以和我的NodeJS应用程序一起使用吗?有什么例子吗?因为我只创建了一个服务器应用程序。python是否驻留在同一个nodejs服务器上。如何开始?(永远应用程序js'是我的默认脚本)

  • 如果因为没有exp而不能使用python,那么在Nodejs中使用python的基础是什么?

我的模型基本上是单词列表,所以我的olap查询是以天、周、月为单位,用英语、法语、德语等语言编写的单词,长度为2、5、10个字母

非常感谢您的想法、提示和指导!在


Tags: 方法org服务器rest应用程序httpmysqlnodejs
1条回答
网友
1楼 · 发布于 2024-05-16 00:53:32

正如您所发现的,CUbes提供了一个HTTPS OLAP服务器(slicer工具)。在

Can someone explain how this works?

作为OLAP服务器,可以向服务器发出OLAP查询。该API基于REST/JSON,因此您可以通过HTTP轻松地从Javascript、nodejs、Python或任何其他语言查询服务器。在

服务器可以回答OLAP查询。OLAP查询基于“事实”和“维度”的模型。例如,您可以查询“给定国家和产品的总销售额,按月列出”。在

Does this mean I have to update my schema. And create what is called fact tables?

OLAP查询是围绕事实和维度概念构建的。在

面向OLAP的数据仓库策略通常涉及到创建这些事实表和维度表,构建所谓的Star Schema或雪花模式。这些模式为关系数据库上的OLAP类型查询提供了更好的性能。数据通常由ETL进程(它可以是一个简单的脚本)加载,该进程以适当的形式加载数据。在

但是,Python多维数据集框架并不强制您更改模式或创建备用模式。它有一个SQL后端,允许您定义模型(根据事实和维度),而无需更改实际的数据库模型。这是模型定义的文档:https://pythonhosted.org/cubes/model.html。在

但是,在某些情况下,您可能仍然希望为数据挖掘定义一个模式,并使用转换过程定期加载数据。这取决于您的需要、您拥有的数据量、性能考虑因素等。。。在

有了Cubes,您还可以使用其他非RDBMS后端(即MongoDB),其中一些提供了像Cubes这样的OLAP服务器可以利用的内置聚合功能。在

Can this be used in conjunction with my NodeJS App?

可以从NodeJS向多维数据集切片器服务器发出查询。在

Any examples?

有一个Javascript客户端库来查询多维数据集。你可能想用这个:https://github.com/Stiivi/cubes.js/

我不知道任何使用NodeJS的例子。您可以尝试从Cubes(https://github.com/Stiivi/cubes/tree/master/incubator)中包含的AngularJS应用程序中获得一些灵感。另一个客户端工具是CubesViewer,在构建模型时可能会用到它:http://jjmontesl.github.io/cubesviewer/。在

Since I have only created single server apps. Would python reside on the same nodejs server. How will it start? ('forever app.js' is my default script)

您可以将Cubes Slicer服务器作为一个web应用程序运行(直接从您的web服务器,即Apache)。例如,对于Apache,您将使用apachewsgi mod,它允许为python应用程序提供服务。在

切片器也可以作为独立进程中的小型web服务器运行,这在开发过程中非常方便(但我不建议在生产环境中使用)。在这种情况下,它将监听另一个端口(通常是:http://localhost:5000)。在

If I cant use python since I have no exp, what are basics to do it in Nodejs?

实际上根本不需要使用Python。您可以配置和使用Python多维数据集作为OLAP服务器,并从Javascript代码(即直接从浏览器)运行查询。从客户端的角度来看,就像一个数据库系统,您可以通过HTTP进行查询并获得JSON格式的响应。在

相关问题 更多 >