关于内部OLAP工具的一些设计思路

本文涉及的产品
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
简介: 更新: 内部olap工具终于来了 https://deepinsight.alipay.com/index.htm#/list/self-analysis ----------------------------------------------------- 最近一年在蚂蚁接触了很多的数据分析需求,会用到各种交付工具,总的来说是非常方便的,唯一一个没有找到最佳实践的需求场景是OL

更新: 内部olap工具终于来了

https://deepinsight.alipay.com/index.htm#/list/self-analysis

最近一年在蚂蚁接触了很多的数据分析需求,会用到各种交付工具,总的来说是非常方便的,唯一一个没有找到最佳实践的需求场景是OLAP,现有的这些工具基本上都无法直接给到需求方使用;所以特地总结一下olap相关的一些工具设计思路,希望能给平台产品有些帮忙;如果已经有可用的产品了,还请告知~

当前了解到的内部两大主力工具

1、Deepinsight
链接: https://deepinsight.alipay.com/index.htm#/welcome/home/roleBusiness
无olap功能,但是提供数据集的共享,可以在后台编辑界面实现olap功能,页面如下:
image.png

可以用olap的数据源,用olap的方法配置报表,查询就伤不起了

2、FBI
链接: https://sg.fbi.alibaba-inc.com/fbi/home.htm
自称有olap功能,但也是在配置逻辑里面实现的,页面如下:
image.png

只能说不DI更难用

3、AEM的olap
链接: https://aem.alibaba-inc.com/project/aes/page/analytics
最像olap的页面,可惜只是应用内部的简单实现,这里列出来就是给大家对比下,页面如下:
image.png

这个算是按照 olap的产品思路做的东西了,可惜我们没办法能力复用

4、其他
DI 和 FBI 可以说基本没有olap的产品能力,所以就不具体说了,大家可以去参考其他大厂的olap产品对比下
咱们同学分享的 【产品调研】字节跳动BI解决方案-Datawind
https://www.atatech.org/articles/178756?commentId=302744&msgid=4234715#comment-302744
里面有olap的页面:
image.png

字节的这个olap设计是大家比较认可的,几年前在友商那边做的olap就是这种,在产品层面并没有太多复杂的东西,所以我们要求不高的

用户希望的OLAP工具

直接说几个当前数仓环境下,用户的主要诉求,因为和传统的olap已经不太一样了,这个是我们做olap最应该注意的地方。
1、 简单可用
主题选择+维度选择+指标选择+筛选功能+可视化方式 = 查询结果
不需要记住使用方法,点几下鼠标就可以搞定;
配置类的东西交给后台研发同学

2、不怕查询太慢
这一点和olap自身定位有些冲突,但真实场景用户确实可以接受10-20秒的等待;
因为找数据同学提数据、提需求,绝对不止这个时间,分析大部分的场景都不是急迫的,大家都知道大数据量查询慢,所以非常理解;
点几下鼠标,等几分钟,比自己写sql写关联跑任务简单多了

3、配置发布要快
也就是研发侧的响应要快,新增一个数据主题,新增一个维度或者指标,可以快速上线使用;
这就是有和没有的问题,大家可以接受查询慢,但是维度、指标一定要有,这个才是他们可以获取数据的前提;
所以开发配置的功能要高效

技术方案方面

宗旨就是:在慢的基础上尽可能的提供快速查询的能力
计算引擎:odps做预加工和托低计算,adb、explorer等做实时计算,hbase进行distinct预计算或实时计算
查询固化:自动将查询生成odps离线任务和数据

对于到底要不要做预计算,从经验上看,增加了架构的复杂度,预计算的扩展性很差,在当前分布式计算速度已经很快的情况下,直接计算性价比更高;可以在需求层面做分拆,按不同的需求设计不同的粒度数据主题

产品方案方面

主题选择+维度选择+指标选择+筛选功能+可视化方式 = 查询结果
如上,形成6个主要功能区域;
维度和指标一定要分组、筛选功能一定要灵活、分析保存和共享能力一定要有

最后、
还是太懒了,写不了太多东西,希望有用

相关实践学习
AnalyticDB MySQL海量数据秒级分析体验
快速上手AnalyticDB MySQL,玩转SQL开发等功能!本教程介绍如何在AnalyticDB MySQL中,一键加载内置数据集,并基于自动生成的查询脚本,运行复杂查询语句,秒级生成查询结果。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
目录
相关文章
|
7月前
|
Cloud Native OLAP OLTP
在业务处理分析一体化的背景下,开发者如何平衡OLTP和OLAP数据库的技术需求与选型?
在业务处理分析一体化的背景下,开发者如何平衡OLTP和OLAP数据库的技术需求与选型?
197 4
|
4月前
|
SQL 消息中间件 OLAP
OneSQL OLAP实践问题之实时数仓中数据的分层如何解决
OneSQL OLAP实践问题之实时数仓中数据的分层如何解决
72 1
|
6月前
|
存储 SQL BI
深入解析实时数仓Doris:介绍、架构剖析、应用场景与数据划分细节
深入解析实时数仓Doris:介绍、架构剖析、应用场景与数据划分细节
|
7月前
|
分布式计算 负载均衡 关系型数据库
关系型数据库设计集群架构需求分析
【5月更文挑战第6天】关系型数据库设计集群架构的需求分析是一个综合考虑业务需求、性能、可用性、可扩展性、数据一致性、安全性、成本效益和技术选型等多个方面的过程。通过深入分析和评估,可以设计出满足业务需求且高效可靠的数据库集群架构。
76 3
关系型数据库设计集群架构需求分析
|
7月前
|
存储 监控 负载均衡
InfluxDB最佳实践:数据模型设计与查询优化
【4月更文挑战第30天】本文探讨了InfluxDB的最佳实践,重点在于数据模型设计和查询优化。合理选择字段类型,根据业务逻辑划分Measurement,利用Tags进行索引优化,以及适时数据归档和清理,能有效提升性能。查询优化包括使用索引、精简查询语句、应用聚合函数及限制返回结果。分布式查询和分片适用于大规模数据集,以实现并行查询和负载均衡。这些策略旨在帮助用户优化InfluxDB的性能,进行高效时序数据分析。
|
7月前
|
存储 SQL 分布式计算
TiDB整体架构概览:构建高效分布式数据库的关键设计
【2月更文挑战第26天】本文旨在全面概述TiDB的整体架构,深入剖析其关键组件和功能,从而帮助读者理解TiDB如何构建高效、稳定的分布式数据库。我们将探讨TiDB的计算层、存储层以及其他核心组件,并解释这些组件是如何协同工作以实现卓越的性能和扩展性的。通过本文,读者将能够深入了解TiDB的整体架构,为后续的学习和实践奠定坚实基础。
|
7月前
|
SQL 分布式计算 Java
数仓学习---7、数据仓库设计、数据仓库环境准备、模拟数据生成
数仓学习---7、数据仓库设计、数据仓库环境准备
289 2
|
存储 分布式计算 安全
「技术选型」OLTP 和OLAP的异同
「技术选型」OLTP 和OLAP的异同
|
存储 分布式计算 Oracle
OLAP架构及技术实现的演进简介
这个阶段中,OLAP主要基于以Oracle、MySQL为代表的一众关系型数据实现。在ROLAP架构下,直接使用这些数据库作为存储与计算的载体。在MOLAP架构下,则借助物化视图的形式实现各数据操作。但难以解决的问题是,不论是ROLAP还是MOLAP,在数据体量大、维度数目多的情况下都存在严重的性能问题。
609 0
OLAP架构及技术实现的演进简介
|
存储 消息中间件 缓存
「数据密集型系统搭建」原理篇|OLAP、OLTP,竟然是两个世界
本篇来聊聊OLAP与OLTP的区别以及它们各自的适用场景,以此话题为导引和大家聊聊技术视野与知识储备对于研发同学的重要性,站在事务处理与在线分析的角度分别论述下两个数据世界的底层构建逻辑。
711 0
「数据密集型系统搭建」原理篇|OLAP、OLTP,竟然是两个世界