cube

一文读懂Apache Kylin(麒麟)

荒凉一梦 提交于 2019-12-16 00:10:58
“麒麟出没,必有祥瑞。”                               —— 中国古谚语 Kylin思维导图 前言 随着移动互联网、物联网等技术的发展,近些年人类所积累的数据正在呈爆炸式的增长,大数据时代已经来临。但是海量数据的收集只是大数据技术的第一步,如何让数据产生价值才是大数据领域的终极目标。Hadoop的出现解决了数据存储问题,但如何对海量数据进行OLAP查询,却一直令人十分头疼。 企业中的查询大致可分为即席查询和定制查询两种。之前出现的很多OLAP引擎,包括Hive、Presto、SparkSQL等,虽然在很大程度上降低了数据分析的难度,但它们都只适用于即席查询的场景。它们的优点是查询灵活,但是随着数据量和计算复杂度的增长,响应时间不能得到保证。而定制查询多数情况下是对用户的操作做出实时反应,Hive等查询引擎动辄数分钟甚至数十分钟的响应时间显然是不能满足需求的。在很长一段时间里,企业只能对数据仓库中的数据进行提前计算,再将算好后的结果存储在MySQL等关系型数据库中,再提供给用户进行查询。但是当业务复杂度和数据量逐渐升高后,使用这套方案的开发成本和维护成本都显著上升。因此,如何对已经固化下来的查询进行亚秒级返回一直是企业应用中的一个痛点。 在这种情况下,Apache Kylin应运而生。不同于“大规模并行处理”(Massive Parallel

MondrianSchema编写心得

匆匆过客 提交于 2019-12-13 18:52:40
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> MondrianSchema编写心得 1. Mondrian 是什么? Mondrian是一个用Java成的OLAP引擎。它实现了MDX语言、XML解析、JOLAP规范。它从SQL和其它数据源读取数据并把数据聚集在内存缓存中,然后经过 Java API用多维的方式对结果进行展示。 2. Mondrian 组成与架构 Mondrian又四个manager组成,见下图: l Session Manager:最为重要的一个部分。接受MDX查询、解析MDX,返回结果。 l Schema Manager:与初始化紧密相关。主要是一些重要的数据结构如缓存池的构建以及多维模型的生成。 l Aggregate Manager:实现了对聚集表的管理。主要是对OLAP缓存的管理,属于性能优化的部分。 l Dimension Manager:维度的管理。实现多维模型中维度和关系数据库表中列的映射,在Schema Manager也有部分功能处理这些映射。 从架构上可以分为四个层次: l 计算层:分析,验证,执行MDX语句。先计算坐标轴,然后再计算每个单元格的值,从效率上的考虑,计算曾批量的从聚合层获取单元格数据集合。 l 聚合层:聚合层中缓存了多维查询结果,即单元格的数据集合,如果计算层所需要的数据不在缓存中

Coord texture array does not works correctly with glDrawElements

陌路散爱 提交于 2019-12-13 06:10:04
问题 the purpose of my program is to load and display a simple cube with the same texture on each face. But the problem is that the output is not very good (just 4 faces are textured correctly).I tried lots of combinations of coordinates in the textures array but most of the time it's worse. Is it possible to set textures correctly with the function glDrawElements or not? #define OFFSET_BUFFER(bytes) ((GLfloat *)NULL + bytes) GLfloat vertices[] = { -1.0, -1.0, -1.0, 1.0, -1.0, -1.0, 1.0, 1.0, -1.0

Cumulative Sum/ Running Total | MDX

本秂侑毒 提交于 2019-12-13 03:21:50
问题 I have an SSAS Cube requirement (MDX) as below: I am trying to create a calculated measure “Cumulative Sum/ Running Total” with the combination of multiple dimensions (around 7 dimensions). In addition, the users will be using any dimensions that they want. For example, we have a Product, Program, SubProgram, ProgramStatus, SubProgramStatus, Customer, and Date. The users should be able to add the dimension’s attribute to the lowest level as well as they should be able to roll-up the data to a

SSAS: named queries

試著忘記壹切 提交于 2019-12-13 00:44:52
问题 I must first admit that I'm new to Analysis Services but now must extend an existing complex cube with a new dimension. So its even difficult to tell where my problem is without saying that i dont even have a plan how to start. Ok, i will try to tell what i want to achieve. Given is a Datasourceview with a named calculation 'Returns'. Its expression is: CASE WHEN fimaxActionCode IN (1, 2, 3, 4, 5, 8, 9, 12, 14, 17, 18, 20, 21, 22, 23, 24, 25, 30, 31, 32, 35) THEN 'yes' ELSE 'no' END

draw cube into 3D scatterplot in RGL

安稳与你 提交于 2019-12-12 17:01:58
问题 I'm trying to add a smaller cube/mesh (with specified side length) to a 3D scatterplot. I'd like for the cube to be positioned at the origin. How would I go about doing that? I've played around with cube3d() but I can't seem to position the cube right nor make it a mesh (so I can see the data points it contains. Here's what I have: library(rgl) x <- runif(100) y <- runif(100) z <- runif(100) plot3d(x,y,z, type="p", col="red", xlab="x", ylab="y", zlab="z", site=5, lwd=15) 回答1: There is a

Is there a way to change the default drill through behavior?

做~自己de王妃 提交于 2019-12-12 05:47:13
问题 It has been said there is no way to change the default drill through behavior with ssas . However, if we look closely we discover that we can actually exercise a bit more flexibility. currently double click opens a new sheets an populates data in it, but it is using some default fields rather than fields assigned in the Action . Is there a way to change the default drill through behavior using a code C# in which we define columns we want to show by default ? Regards . 回答1: I know it has been

What cube deployment changes will force a reprocess?

梦想与她 提交于 2019-12-12 02:56:47
问题 Sometimes when I deploy a cube that has been changed (from BIDS), I can continue to browse the existing cube data. Other times, the engine insists I reprocess the data before I can browse the cube. I can't find a definitive resource showing which changes require a data reprocess and which do not. SSAS 2008. 回答1: In general, you need to process when adding or editing measures adding a dimension attribute editing dimension attribute relationships or order by properties A more complete list can

Change the context with Subselect MDX from Excel client

纵饮孤独 提交于 2019-12-12 02:24:55
问题 I have two time dimensions, production period and accounting period, and a measure that I want to aggregate with either dimension but not with both when users query the cube from excel. To do that I created a flag measure to check if both dimensions are being used CREATE MEMBER CURRENTCUBE.[Measures].[AcctProdFlag] AS IIF ( [DIM Accounting Period].[Accounting Period Hierarchy].CURRENTMEMBER.level.ordinal <> 0 and [DIM Production Period].[Production Month Hierarchy].currentmember.level.ordinal

UNION in SSAS MDX query

回眸只為那壹抹淺笑 提交于 2019-12-11 15:26:51
问题 Is it possible to write UNION in SSAS MDX query ? For Example : `SELECT {[Measures].[Sales Amount],[Measures].[Tax Amount]} ON COLUMNS, {[Date].[Fiscal].[Fiscal Year].&[2002], [Date].[Fiscal].[Fiscal Year].&[2003]} ON ROWS FROM [Adventure_Workenter code heres_1] WHERE ([Sales Territory].[Southwest]) UNION SELECT {[Measures].[Sales Amount], [Measures].[Tax Amount] } ON COLUMNS, {[Date].[Fiscal].[Fiscal Year].&[2002], [Date].[Fiscal].[Fiscal Year].&[2003]} ON ROWS FROM [Adventure_Works_2] WHERE