zoukankan      html  css  js  c++  java
  • Kylin 1 背景、历史与使命

    1.1 背景和

    今天,大数据域的展如火如荼,各种新技术层出不,整个生欣欣向荣。作大数据域最重要的技——Apache Hadoop,从生至今已有10周年。它最初只是致力于简单的分布式存,然后在其之上实现模并行算,到如今它已在实时分析、多分析、交互式分析、机器学甚至人工智能等方面都有着足的展。

    2013年年初,eBay内部使用的传统数据仓库及商智能平台用碰到了瓶,即传统的架构只支持垂直展,通在一台机器上增加CPU内存等源来提升数据理能力,相于数据指数的增很快就达到了极限。另一方面,Hadoop大数据平台然能存和批量理大模数据,但与BI平台的接技依然不成熟,无法提供高效的交互式查询。于是找更好的方案便成了当之急。正好在2013年年中的eBay公司启了一个大数据目,其中的一内容就是BI on Hadoop研。当eBay中国卓越中心建了一支很小的团队,他在分析和测试了多种开源和商解决方案之后,发现没有一种方案能完全足当的需求,即在超大模数据集上提供秒查询性能,并能基于HadoopBI平台无整合等。在研究了多种可能性之后,最eBay Apache Kylin核心团队决定自己实现一套OLAP on Hadoop的解决方案, 以弥补业界的个空白。与此同eBay公司也非常鼓励开源各个目,

    社区,eBayApache Kylin核心团队在向负责整个技平台的高裁做汇报候,得到的一个反就是要从第一天就做好开源的准

     
       

     

    1-1 Hortonworks CTOTwitterApache Kylin评论

    经过一年多的研,在2014年的9月底,Kylin平台在eBay内部正式上线。它一上线便吸引了多个种子客KylinHadoop上提供了准的、友好的SQL接口,外加查询速度非常迅速,原本要用几分查询现在几秒就能返回果,BI分析的工作效率得到了几百倍的提升,因此Kylin 得了公司内部客、合作伙伴及管理的高度价。2014101日, 负责卿将Kylin的源代提交到github.com并正式开源,当天就得了家的关注和可,如1-1所示的是HortonworksCTO

    Twitter出的价。

    很快,Hadoop社区的多朋友都鼓励eBayApack Kylin核心团队该项献到Apache件基金会(ASF),它能与其他大数据目一起得更好的展,在经过一个月的紧张和撰写了无数个版本的目建议书之后,Kylin目于201411月正式加入Apache孵化器目,并有多位深的社区活作我导师

    再次付出无数努力之后,2015年的11月,Apache件基金会宣布Apache Kylin正式成为顶级项目。是第一个也是唯一一个完全由我国团队贡献到全球最大的开源件基金会的顶级项目。负责卿成Apache Kylin目管理委PMC主席,也是Apache件基金会160多个顶级项目中的唯一一个中国人,Apache Kyln造了史。正如Kylin导师——Apache孵化器副Ted DunningASF官方新稿中的价:“…Apache Kylin代表了洲国家,特是中国,在开源社区中越来越高的参与度…”

    20163月,由Apache Kylin核心开建的创业公司Kyligence正式成立。就如每一个成功的开源目背后都有一家创业公司一

    Hadoop域有ClouderaHortoworks等;Spark域有DatabricksKafka域有Confluent),Kylin也可以通Kyligence一步投入保持高速研,并且Kylin的社区和生圈也会得到不断的展和壮大,可以预见这个开源目将会越来越好。

    界最盛名的技术类独立评选中,InfoWorldBossie Award每年都会独立挑评论相关的技用和品等。20159月,Apache Kylin得了2015年度的最佳开源大数据工具20169月,Apache Kylin再次蝉此国,与Google TensorFlow名。Apache Kylin的充分可和褒

    1.2 Apache Kylin的使命

    Kylin的使命是超高速的大数据OLAPOnline Analytical Processing), 也就是要大数据分析像使用数据样简单迅速,用查询请求可以在秒内返回,交互式数据分析将以前所未有的速度放大数据里潜藏的知和信息,在面未来的挑战时占得先机。

    1.2.1 什么要使用Apache Kylin

    自从10年前Hadoop生以来,大数据的存和批问题均得到了妥善解决,而如何高速地分析数据也就成了下一个挑。于是各式各“SQL on Hadoop”术应运而生,其中以Hive代表,ImpalaPrestoPhoenixDrillSparkSQL随其后。它的主要技模并行Massive Parallel ProcessingMPP列式存Columnar Storage。大模并行理可以调动多台机器一起行并行算,用线性增加的源来时间线性下降。列式存储则记录按列存放,这样做不可以在访问时取需要的列,可以利用存储设备长连续读取的特点,大大提高取的速率。使得Hadoop上的SQL查询速度从小提高到了分

    然而分钟级别查询仍然离交互式分析的现实需求。分析敲入查询指令,按下回需要去倒杯咖啡,静静地等待查询结果。得到果之后才能根据情况查询,再做下一分析。如此反复, 一个具体的景分析常常需要几小甚至几天才能完成,效率低下。

    是因模并行理和列式存储虽然提高了算和存的速度,但并没有改变查询问题本身的时间度,也没有改变查询时间数据量成线性增的关系一事。假设查询1亿记录1,那

    查询10亿记录就需10100亿记录就至少需要140。当然,可以用很多的化技术缩查询时间,比如更快的存、更高效的压缩算法,等等,但体来查询性能与数据量呈线性相关一点是无法改的。然大模并行理允十倍或百倍地扩张计算集群,以期望保持分钟级别查询速度,但购买和部署十倍或百倍的算集群又怎能易做到,更何况有高昂的硬件运成本。

    另外,于分析,完的、经过验证的数据模型比分析性能更加重要,直接访问纷繁复的原始数据并行相关分析其并不是很友好的体,特是在超大模的数据集上,分析将更多的精力花在了等待查询结果上,而不是在更加重要的建立域模型上。

    1.2.2 Apache Kylin解决关键问题

    Apache Kylin的初衷就是要解决千亿条、万亿记录的秒级查询问题,其中的关就是要打破查询时间随着数据量成线性增律。仔思考大数据OLAP,可以注意到两个事

    • 大数据查询要的一般是统计结果,是多条记录经过聚合函数算后统计值。原始的记录则不是必需的,或者访问频率和概率都极低。
    • 聚合是按行的,由于业务和分析需求是有限的,有意

    度聚合合也是相有限的,一般不会随着数据的膨而增

    基于以上两点,我可以得到一个新的思路——“预计尽量多地算聚合果,在查询时尽量使用算的果得出查询结

    果,从而避免直接描可能无限增的原始记录

    例来,使用如下的SQL查询101日那天量最高的商品:

     
       

     

    传统的方法需要描所有的记录,再找到101日的记录

    然后按商品聚合,最后排序返回。假如101日有1亿条交易,那么查询须读取并累至少1亿记录,且查询速度会随将来量的增加而逐步下降。如果日交易量提高一倍到2亿,那么查询执行的时间可能也会增加一倍。

    而使用预计算的方法会事先按[sell_dateitem]sumsell_amount)并存下来,在查询时找到101日的售商品就可以直接排序返回了。取的记录数最大不会超过维[sell_dateitem]合数。个数字将远远小于实际记录,比如101日的1亿条交易包含了100万条商品,那么预计算后就只有100万条记录了,是原来的百分之一。并且记录是按商品聚合的果,因此又省去了运行的聚合运算。从未来的展来看,查询速度只会随日期和商品数目的增化,与记录数不再有直接系。假如日交易量提高一倍到2亿,但只要商品的数不,那么预计算的记录总数就不会查询的速度也不会

    预计就是Kylin模并行列式存之外,提供

    大数据分析的第三个关

  • 相关阅读:
    leetcode教程系列——Binary Tree
    《Ranked List Loss for Deep Metric Learning》CVPR 2019
    《Domain Agnostic Learning with Disentangled Representations》ICML 2019
    Pytorch从0开始实现YOLO V3指南 part5——设计输入和输出的流程
    Pytorch从0开始实现YOLO V3指南 part4——置信度阈值和非极大值抑制
    Pytorch从0开始实现YOLO V3指南 part3——实现网络前向传播
    Pytorch从0开始实现YOLO V3指南 part2——搭建网络结构层
    Pytorch从0开始实现YOLO V3指南 part1——理解YOLO的工作
    让我佩服的人生 文章
    win8.1配置cordova+ionic等一系列东西
  • 原文地址:https://www.cnblogs.com/xibuhaohao/p/11377641.html
Copyright © 2011-2022 走看看