- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我们公司,用户已经通过标准前端(Excel)查询activepivot。但我们想用 Java 构建一个自定义 MDX 应用程序来查询 ActivePivot。目标是能够订阅多个特定 View 并实时检索聚合数据更新,以便为我们的多个内部系统提供数据。
我知道 ActivePivot 实现XMLA 标准并具有自定义 Web 服务。但我想知道发送 MDX 查询的最佳选择是什么?为什么? XMLA 标准支持实时更新吗?
最佳答案
ActivePivot 确实主要使用 MDX 语言进行查询。正如您所指出的,有几种不同的方法可以将 MDX 查询发送到 ActivePivot 并获得答案。
第一种也是最标准的方法是使用 XMLA 标准查询 ActivePivot。例如,当您使用 Excel、Tableau 或大多数支持 MDX 的 GUI 来查询 ActivePivot 时,就会发生这种情况。但是,此方法仅对即席查询有效。您无法将 ActivePivot 的连续查询功能与 XMLA 结合使用。
为了注册连续查询,您需要使用 ActivePivot 附带的现有 Web 服务,特别是:
一般工作流程如下:
此时,监听器线程将接收已注册 MDX 查询的当前结果集,之后将仅接收已更改的单元格,因为它们的值随着新事务而发生变化。
以下是查询注册的示例代码:
// Create my MDX query
final String mdx =
"SELECT NON EMPTY {DrilldownLevel({[Bookings].[ALL].[AllMember]})} ON ROWS " +
"FROM [EquityDerivativesCube] " +
"WHERE ([Measures].[contributors.COUNT])";
final IMDXQuery mdxQuery = new MDXQuery(mdx);
// Retrieve your various webservices
final IStreamingService streamingService = ...;
final ILongPollingService longPollingService = ...;
final IIdGenerator idGenerator = ...;
// Initiate a (long polling based) communication channel
final String listenerId = idGenerator.generateListenerIds(1)[0];
longPollingService.addListener(PUBLICATION_DOMAIN, listenerId);
new Thread(new Listener(longPollingService, listenerId)).start();
// Subscribe a continuous mdx query, events will be received
// through the communication channel.
final String mdxStreamId = idGenerator.generateListenerIds(1)[0];
final IStreamProperties mdxStreamProperties = new StreamProperties(
mdxStreamId,
PUBLICATION_DOMAIN,
InitialState.STARTED,
true);
streamingService.createStream(mdxQuery, mdxStreamProperties);
// From now on the listener will receive the real-time events
这是一个简单的监听器代码:
public class Listener implements Runnable {
final ILongPollingService service;
final String listenerId;
Listener(ILongPollingService service, String listenerId) {
this.service = service;
this.listenerId = listenerId;
}
@Override
public void run() {
for(int iteration = 0; iteration < 100; iteration++) {
IBulkedStreamEvents events = service.listen(listenerId);
if(events != null) {
logger.log(Level.INFO, "Received events:");
for(final IDomainStreamEvent domainEvent: events.getDomainEvents()) {
for(final IStreamEvent event : domainEvent.getEvents())
logger.log(Level.INFO, event.toString());
}
} else {
logger.log(Level.INFO, "No events received.");
}
}
}
}
关于java - 我们应该使用哪些 Web 服务将 MDX 查询发送到 ActivePivot?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12478290/
我们正在聚合一些大型矩阵并有一个自定义矩阵类。这些是使用自定义聚合函数聚合的。格式化程序负责显示部分聚合矩阵度量以进行调试,但似乎即使有格式化程序,整个矩阵仍会序列化并在显示该度量时发送到 Live。
我在哪里可以获得 ActivePivot In Memory 分析工具的 ActivePivot.lic。我正在尝试从 Java 运行 MDX 查询。但低于错误, SEVERE: Error load
假设我有一个 ActivePivot 多维数据集,其中的事实仅包含值和货币。假设我的多维数据集将货币作为常规维度。 我们用具有多种货币的事实填充立方体。 我们有一个外汇服务,它使用货币和引用货币来计算
我正在考虑为 ActivePivot 服务器的不同部分和最重要的后处理器实现自动化测试。 因为我刚开始,所以我想了解更多有关该领域的最新技术、最佳实践是什么以及是否有任何需要避免的注意事项。 如果您有
假设我有太多历史数据(2012 年和 2011 年的数据),无法使用 activepivot 将其放在一台计算机上。我可以在两台计算机之间拆分数据(一台具有 2011 年的数据,另一台具有 2012
我们使用 ActivePivot 监控金融交易的实时 PnL(损益)。新交易(新记录)会在白天实时添加或更新到多维数据集中,ActivePivot 还连接到实时市场数据源,从而触发我们后处理器的刷新。
我想通过发送带有 Rest 请求的 MDX 从 activePivot 的多维数据集检索数据。我尝试这样做并检索了一个 json 对象,然后我解析了这个 json 对象以仅检索特定信息(查看图片)。
关于分布式多维数据集的快速问题。我已经看到它们被建议作为这里几个问题的解决方案 ( Such as this ) 我很好奇是否可以在同一个 JVM 中运行两个或更多多态分布式多维数据集 - 所以一个
我们正在将 ActivePivot 应用程序迁移到新服务器(4 个 Intel Xeon 插槽,512GB 内存)。部署后,我们启动了我们的应用程序基准测试(这是大型 OLAP 查询并发与实时事务的混
在我们的ActivePivot项目中,我们聚合了大型模拟数据 vector ( vector 的长度可以达到一百万个值),并且内存消耗非常高。 大多数时候, vector 中的大多数值都为零。 Act
如何将MongoDB数据源加载到ActivePivot cube中?有没有可用于该目的的图书馆?谢谢。 最佳答案 您可以按照以下步骤操作: 基于 java 驱动程序(https://docs.mong
在我们公司,用户已经通过标准前端(Excel)查询activepivot。但我们想用 Java 构建一个自定义 MDX 应用程序来查询 ActivePivot。目标是能够订阅多个特定 View 并实时
如何使用 python 将 MDX 查询发送到 ActivePivot 来检索 CSV 输出文件?而不是 XMLA 或 Web 服务。 最佳答案 有一个 POST 端点可以从 MDX 查询获取 CSV
我是一名优秀的程序员,十分优秀!