Apache Kylinについて
Hadoop / Spark Conference Japan 2016
http://www.yahoo.co.jp/
ヤフー株式会社 古山 慎悟
2016年2月8日
はじめに
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 2
続きはRejected HCJ 2016で!!!
3Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
http://www.zusaar.com/event/17397003
ここから本編
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 4
Apache Kylinについて
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 5
アーキテクチャ
強み
弱み
• OLAPの実行エンジンで、キューブをプレビルドしオンライ
ンのクエリのレイテンシを下げる戦略をとっている
• プレビルドしたキューブはHBaseに配置し、クエリの実行
時にはプレビルドしたキューブから結果セットを生成する
• キューブをプレビルドするので、“BigAccount”的なファクトの
多重度の歪みに強い
• ディメンションの多重度の歪みに弱い
アーキテクチャ
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 6
出所:http://www.ebaytechblog.com/2014/10/20/announcing-kylin-extreme-olap-engine-for-big-data/
強み
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 7
• ほとんどのデータはパレート則的にファクトの多重度に歪みをみせる
• たとえば、取引をたくさんしてくれている上客(BigAccount)であればある
ほどその顧客に関するデータ量が大きくなる
• そのユーザーのためのクエリを返すためのワークロードが他の顧客より多
いので、そのユーザーにとってのUXが損なわれる
• Kylinのアーキテクチャだと、上記のようなファクトの歪みがクエリのレイテ
ンシに影響しない
• たとえば、顧客IDに対する集計をプレビルドしておけば、顧客別の集計結
果を返すために必要なワークロードはどの顧客でも1件のlookupになる
(こともある)
• さらに、アプリケーションからは、SQLを介してプレビルドしたキューブ
が透過的にみえるので、パフォーマンスチューニングのためにデータを再
設計する必要がない
弱み
• 一方で、ディメンジョンの多重度には弱い
• ディメンジョンの多重度:値の種類(ex. 男女)
• ファクトの多重度:値の種類ごとのレコード数
• Kylinのアーキテクチャだと、キューブのディメンジョンの組み合わせ数に相
当するくらいのキー数のデータにプレビルドする(こともある)
• ディメンション表に多重度が多いカラムがあると(100万以上とか)、
キューブのビルドが遅くなり、クエリのレイテンシにも悪影響がある
• 組み合わせを素直につくらない仕組みや(Aggregation Group)、組み合わ
せをなるべく減らす仕組み(Mandatory Dimension, Hierarchy
Dimension, Derived Dimension)が実装されている
• ご参考: http://www.slideshare.net/YangLi43/design-cube-in-apache-kylin
• でも辛い
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 8
おわりに
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 9
続きはRejected HCJ 2016で!!!
10Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
http://www.zusaar.com/event/17397003
EOP
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 11

Apache Kylinについて #hcj2016

  • 1.
    Apache Kylinについて Hadoop /Spark Conference Japan 2016 http://www.yahoo.co.jp/ ヤフー株式会社 古山 慎悟 2016年2月8日
  • 2.
    はじめに Copyright (C) 2016Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 2
  • 3.
    続きはRejected HCJ 2016で!!! 3Copyright(C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 http://www.zusaar.com/event/17397003
  • 4.
    ここから本編 Copyright (C) 2016Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 4
  • 5.
    Apache Kylinについて Copyright (C)2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 5 アーキテクチャ 強み 弱み • OLAPの実行エンジンで、キューブをプレビルドしオンライ ンのクエリのレイテンシを下げる戦略をとっている • プレビルドしたキューブはHBaseに配置し、クエリの実行 時にはプレビルドしたキューブから結果セットを生成する • キューブをプレビルドするので、“BigAccount”的なファクトの 多重度の歪みに強い • ディメンションの多重度の歪みに弱い
  • 6.
    アーキテクチャ Copyright (C) 2016Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 6 出所:http://www.ebaytechblog.com/2014/10/20/announcing-kylin-extreme-olap-engine-for-big-data/
  • 7.
    強み Copyright (C) 2016Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 7 • ほとんどのデータはパレート則的にファクトの多重度に歪みをみせる • たとえば、取引をたくさんしてくれている上客(BigAccount)であればある ほどその顧客に関するデータ量が大きくなる • そのユーザーのためのクエリを返すためのワークロードが他の顧客より多 いので、そのユーザーにとってのUXが損なわれる • Kylinのアーキテクチャだと、上記のようなファクトの歪みがクエリのレイテ ンシに影響しない • たとえば、顧客IDに対する集計をプレビルドしておけば、顧客別の集計結 果を返すために必要なワークロードはどの顧客でも1件のlookupになる (こともある) • さらに、アプリケーションからは、SQLを介してプレビルドしたキューブ が透過的にみえるので、パフォーマンスチューニングのためにデータを再 設計する必要がない
  • 8.
    弱み • 一方で、ディメンジョンの多重度には弱い • ディメンジョンの多重度:値の種類(ex.男女) • ファクトの多重度:値の種類ごとのレコード数 • Kylinのアーキテクチャだと、キューブのディメンジョンの組み合わせ数に相 当するくらいのキー数のデータにプレビルドする(こともある) • ディメンション表に多重度が多いカラムがあると(100万以上とか)、 キューブのビルドが遅くなり、クエリのレイテンシにも悪影響がある • 組み合わせを素直につくらない仕組みや(Aggregation Group)、組み合わ せをなるべく減らす仕組み(Mandatory Dimension, Hierarchy Dimension, Derived Dimension)が実装されている • ご参考: http://www.slideshare.net/YangLi43/design-cube-in-apache-kylin • でも辛い Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 8
  • 9.
    おわりに Copyright (C) 2016Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 9
  • 10.
    続きはRejected HCJ 2016で!!! 10Copyright(C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 http://www.zusaar.com/event/17397003
  • 11.
    EOP Copyright (C) 2016Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 11