首先,我现在可能会误解BigData功能。所以,如果我太乐观,请不要犹豫,纠正我。
我通常使用常规KPI,比如告诉我: 在某个月内,每个经理满足某些复杂条件(加入几个事实表)的新客户数量。
这些请求非常动态,因此无法预测预先计算的数据。我们使用OLAP和MDX进行动态报告。动态计算的代价是性能。用户通常会等待一分钟以上的结果。
我来到了BigData。我读过一些文章,论坛,文档,导致我得出含糊不清的结论。 BigData提供了在几秒钟内处理数据的工具,但它不能很好地适应BI任务,例如连接,预聚合。在hadoop概念上没有经典的DWH等等。
尽管如此,这是一个理论。我找到麒麟让我试一试。我挖的越多,出现的问题就越多。其中一些:
实际上,我可能会提出错误的问题而完全误解了这个概念,但希望有一些好的线索。请随意提供您认为对BI和Bigdata合并有用的任何建议。
我知道http://kylin.apache.org/docs15/index.html 但是在没有后端背景的情况下尝试它我感觉不舒服。
答案 0 :(得分:1)
如果您熟悉Apache Spark,这也是一个好的开始。在ActiveViam,我们使用Spark进行大数据处理,我们还需要对相同的数据进行交互式OLAP查询。所以我们制作了一个名为Sparkube的扩展,它将Spark数据集公开为多维立方体。
一旦您的数据集以这种方式公开,您就可以直接在Spark上访问所有OLAP MDX功能,而无需移动数据,无需直接从Excel或Tableau部署软件而无需配置。
例如,如何将CSV文件的内容挂载到内存中并将其作为多维立方体公开:
// Load a file into a Spark dataset.
// Here we load a CSV file, get the column names from
// the CSV headers, and use Spark automatic type inference.
var ds = spark.read
.format("csv")
.option("header","true")
.option("inferSchema","true")
.load("path/to/file.csv")
// Import the sparkube library (the sparkube jar must be in the classpath)
import com.activeviam.sparkube._
// Expose the dataset as a multidimensional cube.
// You can start visualizing the cube right away at http://localhost:9090/ui
// or connect from Excel with the XMLA protocol at http://localhost:9090/xmla
new Sparkube().fromDataset(ds)
.withName("My first cube")
.expose()
答案 1 :(得分:0)
Apache Kylin是正确的工具,因为您正在寻找多维分析。它提供了连接和聚合的预计算,因此SQL / MDX查询可以在不超过几秒的时间内返回。
要使用Apache Kylin,您可以扮演两个角色:管理员和分析师。作为管理员,您需要准备一个Hadoop集群并在其上部署Kylin。这需要有关Hadoop和Linux shell的知识。群集的大小和硬件取决于您的数据量。
安装完成后,您作为分析师可以在Kylin中构建模型,多维数据集和运行SQL。这需要有关关系模型,OLAP和SQL的知识。无需编程。 Kylin支持ODBC / JDBC接口,您可以连接熟悉的BI工具来可视化Kylin中的数据。
通常,第一次用户将在Hadoop沙箱中尝试Apache Kylin。这可以消除许多Hadoop的复杂性并节省时间。
答案 2 :(得分:0)
Bigdata意味着大量的数据。你可以通过bigdata hadoop的帮助来获取任何类型的数据。但OLAP通常用于较小的数据。 使用Hive和HBase对Hadoop数据集进行OLAP访问。