Apache Kylin

AnalyticDB实现和特点浅析

泄露秘密 提交于 2020-08-10 22:09:14
目录 AnalyticDB介绍与背景 AnalyticDB详细解析 架构设计 数据分区 读写分离和读写流程 其他特性介绍 混合(列-行)存储引擎 索引 小结 本篇主要是根据AnalyticDB的论文,来讨论AnalyticDB出现的背景,各个模块的设计,一些特性的解析。可能还会在一些点上还会穿插一些与当前业界开源实现的比对,希望能够有一个更加深入的探讨。OK,那我们开始吧。 AnalyticDB介绍与背景 要说AnalyticDB,那起码得知道它是干什么的。这里直接贴下百度百科的介绍: AnalyticDB是阿里云自主研发的一款实时分析数据库,可以毫秒级针对千亿级数据进行即时的多维分析透视。 简单地说,就是实时OLAP型数据库,它的对标产品是Apache Kylin,Apache Druid,Clickhouse这些。然后AnalyticDB的特点, 包括高并发实时摄入数据,兼容Mysql协议,无需预计算即可有的极快响应时间,多种数据源接入,大规模集群管理等 。好吧,这几个特点都很官方,不急,接下来会逐渐讨论各个点。 然后介绍下AnalyticDB的背景。 首先先说说传统的OLAP型数据仓库,以往构建OLAP型数据仓库通常都是采用离线模式, 即在晚上设置定时任务将前一天的数据同步到数据仓库中,第二天数据分析师或报表工具就可以根据数据产出分析结果 。但这样的问题是数据延迟太高了

某二手交易平台大数据平台从 0 到 1 演进与实践

|▌冷眼眸甩不掉的悲伤 提交于 2020-08-10 15:46:00
在人口流量红利不再,获客成本越来越高的时代,精益创业、MVP 的概念已经深入人心,精细化运营也是大势所趋,而这些背后本质上都依赖数据化运营,那如何根据现有业务,快速从 0 开始打造一个契合业务的数据产品呢?本文将以某二手交易平台业务为基础,讲述整个数据平台从 0 到 1 的演进与实践,希望对大家能有所启发。 1、背景 在某二手交易平台开始大数据平台建设之前,整个数据从需求提出到研发流程再到数据报表、数据产品,也是经历过一段非常混沌的时期,而且效率和质量往往很难得到保障,主要表现为以下几个方面: (1)可用性差 比如经常出现计算延迟、异常,数据指标也常常数据对不上,很多相似的指标不清楚具体差异在哪,即使同一个指标也可能不同的同学开发的而对不上。另外数据波动无感知,比如日志格式出错,结果第二天才发现有问题。 (2)维护成本高 成百上千的日志模块,不知从何维护,出了问题也不知道从哪里可以追溯到源头和负责人。 (3)业务快速迭代,精细化、数据化运营需求和研发资源之间的矛盾 2、目标与方案 (1)目标 数据可管理、可维护、可扩展、高可用 及时、准确、直观的呈现业务数据与问题 降低使用门槛,提升使用效率 (2)方案 数据仓库化 数据平台化 3、数据仓库建设 结构化 层次化 主题化 模型化:用户模型/事件模型 ETL ETL 是整个数据仓库的核心,正如业界流传的一句话:Garbage In,

某二手交易平台大数据平台从 0 到 1 演进与实践

≡放荡痞女 提交于 2020-08-09 08:53:52
在人口流量红利不再,获客成本越来越高的时代,精益创业、MVP 的概念已经深入人心,精细化运营也是大势所趋,而这些背后本质上都依赖数据化运营,那如何根据现有业务,快速从 0 开始打造一个契合业务的数据产品呢?本文将以某二手交易平台业务为基础,讲述整个数据平台从 0 到 1 的演进与实践,希望对大家能有所启发。 1、背景 在某二手交易平台开始大数据平台建设之前,整个数据从需求提出到研发流程再到数据报表、数据产品,也是经历过一段非常混沌的时期,而且效率和质量往往很难得到保障,主要表现为以下几个方面: (1)可用性差 比如经常出现计算延迟、异常,数据指标也常常数据对不上,很多相似的指标不清楚具体差异在哪,即使同一个指标也可能不同的同学开发的而对不上。另外数据波动无感知,比如日志格式出错,结果第二天才发现有问题。 (2)维护成本高 成百上千的日志模块,不知从何维护,出了问题也不知道从哪里可以追溯到源头和负责人。 (3)业务快速迭代,精细化、数据化运营需求和研发资源之间的矛盾 2、目标与方案 (1)目标 数据可管理、可维护、可扩展、高可用 及时、准确、直观的呈现业务数据与问题 降低使用门槛,提升使用效率 (2)方案 数据仓库化 数据平台化 3、数据仓库建设 结构化 层次化 主题化 模型化:用户模型/事件模型 ETL ETL 是整个数据仓库的核心,正如业界流传的一句话:Garbage In,

另辟蹊径建数仓,美团外卖为什么选用Doris(精品干货)

南楼画角 提交于 2020-08-06 16:36:59
序言 本文侧重于以Doris引擎为“发动机”的数仓生产架构的改进与思考。在开源的大环境下,各种数据引擎百花齐放,但由于业务的复杂性与多样性,目前并没有哪个引擎能够适配所有业务场景,因此希望通过我们的业务实践与思考为大家提供一些经验参考。美团外卖数仓技术团队致力于将数据应用效率最大化,同时兼顾研发、生产与运维成本的最小化,建设持续进步的数仓能力,也欢迎大家多给我们提出建议。 一、数仓交互层引擎的应用现状 目前,互联网业务规模变得越来越大,不论是业务生产系统还是日志系统,基本上都是基于Hadoop/Spark分布式大数据技术生态来构建数据仓库,然后对数据进行适当的分层、加工、管理。而在数据应用交互层面,由于时效性的要求,数据最终的展现查询还是需要通过DBMS(MySQL)、MOLAP(Kylin)引擎来进行支撑。如下图所示: 汇总数据的交互: 业务团队日常经营分析最典型的场景就是各种维度下的自定义查询,面对如此灵活可变、所见即所得的应用场景,美团平台使用Kylin作为公司的主要MOLAP引擎。MOLAP是预计算生产,在增量业务,预设维度分析场景下表现良好,但在变化维的场景下生产成本巨大。例如,如果使用最新商家类型回溯商家近三个月的表现,需要重新计算三个月的Cube,需花费几个小时,来计算近TB的历史数据。另外,应对非预设维度分析,MOLAP模型需要重新进行适配计算,也需要一定的迭代工作

Kylin的工作原理

会有一股神秘感。 提交于 2020-07-29 01:47:02
Apache Kylin 的工作原理本质上是 MOLAP (多维立方体分析) 。 维度和度量 维度就是观察数据的角度 ,例如: 电商的销售数据,可以从时间的维度来观察,也可以细化从时间和地区的维度来观察 统计时,可以把维度值相同的记录聚合在一起,然后应用聚合函数做累加、平均、去重计数等聚合计算 度量就是被聚合的统计值,也是聚合运算的结果 。 时间(维度) 销售额(度量) 2019 1Q 1.7M 2019 2Q 2.1M 2019 3Q 1.6M 2019 4Q 1.8M 时间(维度) 地区(维度) 销售额(度量) 2019 1Q 中国 1.0M 2019 1Q 北美 0.7M 2019 2Q 中国 1.5M 2019 2Q 北美 0.6M 2019 3Q 中国 0.9M 2019 3Q 北美 0.7M 2019 4Q 中国 0.9M 2019 4Q 北美 0.9M Cube 和 Cuboid 一个数据表或数据模型上的字段就它们要么是维度,要么是度量(可以被聚合) 给定一个数据模型,可以对其上的所有维度进行组合。对于 N 个维度来说,组合的所有可能性共有 2 的 N 次方种 对于每一种维度的组合 ,将度量做聚合运算,然后将运算的结果保存为一个物化视图,称为 Cuboid (立方形) 所有维度组合的 Cuboid 作为一个整体,被称为 Cube (立方体) 。一个 Cube

Apache Kylin 命令注入漏洞 CVE-2020-1956 POC 分析

若如初见. 提交于 2020-07-28 20:38:24
作者:香依香偎 原文链接: 闻道解惑(wendao_jiehuo) 本文为作者投稿,Seebug Paper 期待你的分享,凡经采用即有礼品相送! 投稿邮箱:paper@seebug.org CVE-2020-1956 2020年5月22日, CNVD 通报了 Apache Kylin 存在命令注入漏洞 CVE-2020-1956 ,地址在 http://www.cnnvd.org.cn/web/xxk/ldxqById.tag?CNNVD=CNNVD-202005-1133 。 Apache Kylin 是美国 Apache 软件基金会的一款开源的分布式分析型数据仓库。该产品主要提供 Hadoop/Spark 之上的 SQL 查询接口及多维分析( OLAP )等功能。 Apache Kylin 中的静态 API 存在安全漏洞。攻击者可借助特制输入利用该漏洞在系统上执行任意OS命令。以下产品及版本受到影响: Apache Kylin 2.3.0版本至2.3.2版本,2.4.0版本至2.4.1版本,2.5.0版本至2.5.2版本,2.6.0版本至2.6.5版本,3.0.0-alpha版本,3.0.0-alpha2版本,3.0.0-beta版本,3.0.0版本,3.0.1版本。 下面就来分析一下这个漏洞。 一、搭建环境 Kylin 的环境并不好搭建,包括 Hadoop、Hbase

没有国产主机,怎么开发:交叉编译和QEMU虚拟机

别来无恙 提交于 2020-07-27 13:05:09
1. 背景 近期国产化的趋势越来越浓,包括国产操作系统、国产CPU等。时隔十多年,QQ for Linux也更新了。做为软件开发人员,“有幸”也需要适配国产化。至于国产化的意义等就不在此讨论。 本文提到的国产主机主要是指使用国产CPU和操作系统的计算机,比如:操作系统是银河麒麟,CPU是飞腾FT2000。如果需要做适配开发,起码需要一台对应的主机吧。据说在国产化早期,有钱都难买到机器,需要特殊渠道申请购买。不过,现在购买还是比较方便的。 通过客户提供的正规正统的厂家询价,着实吓一跳,一台居然要一万多!!而同等性能配置的windows-x86普通台式主机,才两三千块左右,相差有点大呀。本着能省就省的原则,上万能的某宝看能不能淘一个。真得感谢马爸爸和深圳华强北,5千多块,突然感觉肉没那么痛了。 其实完全可以理解,国产的批量肯定很小很小,价格必然是高的。对于不专门开发“国产软件”的公司来说,买一台使用率比较低的机器不太值得。后面将介绍在没有国产主机情况下,进行软件开发的两种替代方法:交叉编译和QEMU虚拟机。 2. 银河麒麟是什么 银河麒麟操作系统有服务器版本和桌面版本,本文使用的是桌面版本。具体细节看官方的介绍即可,就不做搬运工了。官方说的自主研发、安全可控都不是我们所关心的,我们只需要关心它的内核是什么,会不会如网上所说根本就是个Ubutun,改个皮肤而已?!。

没有国产主机,怎么开发:交叉编译和QEMU虚拟机

笑着哭i 提交于 2020-07-24 22:07:47
1. 背景 近期国产化的趋势越来越浓,包括国产操作系统、国产CPU等。时隔十多年,QQ for Linux也更新了。做为软件开发人员,“有幸”也需要适配国产化。至于国产化的意义等就不在此讨论。 本文提到的国产主机主要是指使用国产CPU和操作系统的计算机,比如:操作系统是银河麒麟,CPU是飞腾FT2000。如果需要做适配开发,起码需要一台对应的主机吧。据说在国产化早期,有钱都难买到机器,需要特殊渠道申请购买。不过,现在购买还是比较方便的。 通过客户提供的正规正统的厂家询价,着实吓一跳,一台居然要一万多!!而同等性能配置的windows-x86普通台式主机,才两三千块左右,相差有点大呀。本着能省就省的原则,上万能的某宝看能不能淘一个。真得感谢马爸爸和深圳华强北,5千多块,突然感觉肉没那么痛了。 其实完全可以理解,国产的批量肯定很小很小,价格必然是高的。对于不专门开发“国产软件”的公司来说,买一台使用率比较低的机器不太值得。后面将介绍在没有国产主机情况下,进行软件开发的两种替代方法:交叉编译和QEMU虚拟机。 2. 银河麒麟是什么 银河麒麟操作系统有服务器版本和桌面版本,本文使用的是桌面版本。具体细节看官方的介绍即可,就不做搬运工了。官方说的自主研发、安全可控都不是我们所关心的,我们只需要关心它的内核是什么,会不会如网上所说根本就是个Ubutun,改个皮肤而已?!。

windows 10安装 superset 集成kylin2.5.0

谁说我不能喝 提交于 2020-04-29 14:03:57
Superset 是一个数据探索和可视化平台,设计用来提供直观的,可视化的,交互式的分析体验,专注于数据可视化展现。 Superset 提供了两种分析数据源的方式: 1. 用户可以以单表形式直接查询多种数据源,包括 Presto、Hive、Impala、SparkSQL、MySQL、Postgres、Oracle、Redshift、SQL Server、Druid 、kylin等数据源。 2. 一个 SQL 的 IDE 供高级分析师使用 SQL 查询定义所需要分析的数据集,这种方法使用户在一个查询中实现用 Superset 查询数据源的多表,并立即对查询进行可视化分析。 安装python3.6 此过程简单,下载对应OS版本安装即可。 安装virtualenv Superset需要安装的组件较多,最好是使用virtualenv独立一套python环境 D:\python\Anaconda3>pip install virtualenv Collecting virtualenv Downloading https://files.pythonhosted.org/packages/7c/17/9b7b6cddfd255388b58c61e25b091047f6814183e1d63741c8df8dcd65a2/virtualenv-16.1.0-py2.py3-none-any

ssd固态硬盘(NVME)安装window10记录

为君一笑 提交于 2020-04-12 14:01:31
问题描述    系统偶尔死机,感觉是window版本更新的太频繁,导致异常bug .安装ubuntu-kylin ubuntu-18.04-LTS(体验比kylin好点), 奈何linux下的体验跟window的差别很大 。又迁回来, 由于系统存在ssd6(m2)型的接口 。导致用官方的镜像安装不能很好支持ssd.折腾了很久,zhencaodan。 问题解决 用PE安装系统读取install.win, PE用途就是能格式化ssd(存在封装ssd驱动的才可以识别) ,目前发现老毛桃PE是支持的,安装也很顺利! 为啥用老毛桃PE(主要大部分PE都没有ssd驱动分区工具不能识别ssd) 官方镜像提示错误 https://msdn.itellyou.cn/ ###收集的官方系统磁力地址 老毛桃PE制作U盘启动项 https://www.laomaotao.net/ ####很给力的PE,安装完毕会自动安装相关软件(如果不需要可以自己卸载和杀毒就可以了) 1、制作启动项后设置电脑以U盘第一选择进入引导 2、磁盘分区对ssd以GUID引导格式化 3、安装系统到磁盘(重启后要设置UEFI引导,GUID必须是这个引导) 重启后静静等待系统安装 来源: oschina 链接: https://my.oschina.net/u/4261553/blog/3230802