Yahoo! JAPANのデータ基盤とHadoop #dbts2016

Preview:

Citation preview

ヤフー株式会社

データ&サイエンスソリューション統括本部

杉山 朋広

Yahoo! JAPANのデータ基盤とHadoop

自己紹介

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 2

杉山 朋広(すぎやま ともひろ)

2002年

ヤフー株式会社中途入社

2002年ー2011年

Yahoo!ウォレットの開発・運用

Yahoo! JAPAN IDのログイン・登録・DBの運用

2012年ー現在

Hadoopクラスタの構築・運用

広告集計システムの開発

広告システム向けのデータプラットフォームの構築

>3000万 MAU

>100 services 2億 商品数

82%of PC users

74%of smartphone users

100以上DUB

No.1App publisher※1

>8000万

※1 ゲームアプリケーションを除く

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

4

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

5

Agenda

• データ基盤の概要

• データ基盤の歴史

• 次世代基盤

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 6

Agenda

• データ基盤の概要

• データ基盤の歴史

• 次世代基盤

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 7

データ基盤の概要

日本有数の規模

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 8

S3互換ストレージ

6000nodes

2000nodes

200dbs

500dbs

1.7PB

1500nodes

データ基盤の概要>Hadoop利用の歴史

Caption

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 9

スケールの問題と共に成長

一部の部署

で先行利用

マルチテナ

ント化

分析データ

拡張

タイムライン型

コンテンツ&広告

0

10

20

30

40

50

60

70

80

90

100

0

1,000

2,000

3,000

4,000

5,000

6,000

2009 2010 2011 2012 2013 2014 2015 2016

Ro

w H

DFS

Sto

rage

(in

PB

) →

Nu

mb

er

of

No

de

s →

Nodes HDFS

データ基盤の概要>Hadoop利用の歴史

Caption

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 10

スケールの問題と共に成長

一部の部署

で先行利用

マルチテナ

ント化

分析データ

拡張

タイムライン型

コンテンツ&広告

0

10

20

30

40

50

60

70

80

90

100

0

1,000

2,000

3,000

4,000

5,000

6,000

2009 2010 2011 2012 2013 2014 2015 2016

Ro

w H

DFS

Sto

rage

(in

PB

) →

Nu

mb

er

of

No

de

s →

Nodes HDFSHadoop以前 黎明期 導入期 データ爆増 これから

Agenda

• データ基盤の概要

• データ基盤の歴史

• 次世代基盤

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 11

データ基盤の歴史>Hadoop以前

Caption

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 12

Hadoopがデータ基盤に採用される前の時代

一部の部署

で先行利用

マルチテナ

ント化

分析データ

拡張

タイムライン型

コンテンツ&広告

0

10

20

30

40

50

60

70

80

90

100

0

1,000

2,000

3,000

4,000

5,000

6,000

2009 2010 2011 2012 2013 2014 2015 2016

Ro

w H

DFS

Sto

rage

(in

PB

) →

Nu

mb

er

of

No

de

s →

Nodes HDFSHadoop以前 黎明期 導入期 データ爆増 これから

データ基盤の歴史>Hadoop以前

高性能なストレージを中心に置いた設計

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 13

WebServer

WebServer

WebServer

DataPipeline

(Y!Incorigin)

Teradata

ORACLE

MySQL

NetworkStorage

BatchC++

Batchperl

Batchphp

• ストレージをスケールインすることで性能を向上• バッチ処理は独自の分散フレームワーク• クエリエンジンはRDBが主流• 独自の分散フレームワークの限界・・

データ基盤の歴史>黎明期

Caption

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 14

Hadoopをはじめて投入

一部の部署

で先行利用

マルチテナ

ント化

分析データ

拡張

タイムライン型

コンテンツ&広告

0

10

20

30

40

50

60

70

80

90

100

0

1,000

2,000

3,000

4,000

5,000

6,000

2009 2010 2011 2012 2013 2014 2015 2016

Ro

w H

DFS

Sto

rage

(in

PB

) →

Nu

mb

er

of

No

de

s →

Nodes HDFSHadoop以前 黎明期 導入期 データ爆増 これから

データ基盤の歴史>黎明期>Hadoop

内製分散システムの限界からHadoopを選定

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 15

• 既存の分散フレームワークの限界• 事業部ごとに予算化し、10〜100ノード程度のHadoopクラスタを個別に保有• ストレージのI/O軽減にも寄与

レガシーシステム Hadoop

最大並列数 30ノード 4,000ノード

分散フレームワーク 内製で開発 hadoopがサポート

開発リソース 内製 オープンソース

開発範囲分散フレームワークとアプリケーション

アプリケーションのみ

データ基盤の歴史>黎明期>データ基盤

予算がある部門による検証段階

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 16

• Hadoopは事業部予算で10〜100ノード程度のクラスタが乱立• 部門の予算では100ノードくらいが限界• 予算とスケーラビリティの限界・・

Hadoop(x10〜x100)

WebServer

WebServer

WebServer

DataPipeline

(Y!Incorigin)

Teradata

ORACLE

MySQL

NetworkStorage

BatchC++

Batchperl

Batchphp

データ基盤の歴史>導入期

Caption

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 17

クラスタを集約しコストを最適化

一部の部署

で先行利用

マルチテナ

ント化

分析データ

拡張

タイムライン型

コンテンツ&広告

0

10

20

30

40

50

60

70

80

90

100

0

1,000

2,000

3,000

4,000

5,000

6,000

2009 2010 2011 2012 2013 2014 2015 2016

Ro

w H

DFS

Sto

rage

(in

PB

) →

Nu

mb

er

of

No

de

s →

Nodes HDFSHadoop以前 黎明期 導入期 データ爆増 これから

データ基盤の歴史>導入期>Hadoop

大きなクラスタを共同利用

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 18

Hadoop x 1000

• 事業部予算から全社共通な予算へ• マルチテナンシーを実現するためにHadoop Securityに対応• 空いたリソースを有効活用

Hadoopx100

Hadoopx50

事業部A

Hadoopx50 Hadoop

x30

事業部B

事業部Aリソース

35%

事業部Bリソース

25%

事業部Cリソース

20%

共通リソース

20%

データ基盤の歴史>導入期>データ基盤

全社基盤化により利用促進

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 19

• ストレージからアップロードする機能をサポート• 事業部のアプリケーションが直接ストレージにアクセスしなくなった• 予算がない部門も利用可能に• Hadoopへの使用率が加速・・

Hadoop(x1000)

Hadoop(x10〜x100)

WebServer

WebServer

WebServer

DataPipeline

(Y!Incorigin)

NetworkStorage

Teradata

ORACLE

MySQL

データ基盤の歴史>データ爆増期

Caption

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 20

本格的なデータ利活用のはじまり

一部の部署

で先行利用

マルチテナ

ント化

分析データ

拡張

タイムライン型

コンテンツ&広告

0

10

20

30

40

50

60

70

80

90

100

0

1,000

2,000

3,000

4,000

5,000

6,000

2009 2010 2011 2012 2013 2014 2015 2016

Ro

w H

DFS

Sto

rage

(in

PB

) →

Nu

mb

er

of

No

de

s →

Nodes HDFSHadoop以前 黎明期 導入期 データ爆増 これから

データ基盤の歴史>データ爆増期>Hadoop

クラスタの全体最適化

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 21

Hadoop(x3000)

Hive/Tez(x700)

• メインのクラスタのノード数を増強• SLAが厳しいサービスに特化したクラスタを用意

Hadoop(x1000)

アドホック 定常ジョブ 高SLA アドホック 定常ジョブ 高SLA

Data

データ基盤の歴史>データ爆増期>データ基盤

データ利用の効率化を促進

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 22

WebServer

WebServer

WebServer

DataPipeline

(Y!Incorigin)

Hadoop(x3000)

ObjectStore(YJ origin)

cassandra

Hive/Tez

NetworkStorage

• Hadoopクラスタの増強• 高SLAなサービスには専用クラスタを提供• Hive, cassandraなど次世代のデータストアを導入

Teradata

ORACLE

MySQL

データ基盤の歴史>まとめ

性能・コストの最適化からマルチビッグデータへ

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 23

開発リソースのフォーカス

全社基盤化による性能・コスト最適

データ集約によるマルチビッグデータ基盤の実現

Agenda

• データ基盤の概要

• データ基盤の歴史

• 次世代基盤

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 24

次世代基盤

Caption

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 25

技術革新による最適化

一部の部署

で先行利用

マルチテナ

ント化

分析データ

拡張

タイムライン型

コンテンツ&広告

0

10

20

30

40

50

60

70

80

90

100

0

1,000

2,000

3,000

4,000

5,000

6,000

2009 2010 2011 2012 2013 2014 2015 2016

Ro

w H

DFS

Sto

rage

(in

PB

) →

Nu

mb

er

of

No

de

s →

Nodes HDFSHadoop以前 黎明期 導入期 データ爆増 これから

次世代基盤

最適化の3要素

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 26

効率化

設備投資

進化

次世代基盤>設備投資

積極的な設備投資

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 27

効率化

設備投資

進化

設備投資額(億円)

180

2012年度 2015年度

380

次世代基盤>効率化

DC・HW・SWの相乗効果による効率化

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 28

データセンター

ハードウェア

ソフトウェア

✖️ 2

✖️ 2

✖️ 2

✖️ 8効率化

設備投資

進化

次世代基盤>効率化

コストの削減と性能向上の施策

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 29

海外DC利用で電力コスト圧縮

保守性重視から性能重視へ

HadoopやCassandraの開発

データセンター

ハードウェア

ソフトウェア

効率化

設備投資

進化

次世代基盤>進化

トップベンダーとの開発協力

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 30

効率化

設備投資

進化

次世代基盤>進化

シリコンバレー拠点の開設

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 31

効率化

設備投資

進化

次世代基盤>データ基盤

パイプラインのOSS化・コモディティ化

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 32

WebServer

WebServer

WebServer

NewData

Pipeline(Kafka cluster)

Hadoop

StreamPlatform

• データ取得においてもストレージ依存を脱却• ストリーム処理基盤の追加• Hadoopだけでなく、KVS,RDBも適材適所で活用

Tezllap

ObjectStore(YJ origin)

cassandra

Hive/Tez

Teradata

ORACLE

MySQL

次世代基盤>まとめ

ROIを引き上げデータ基盤の課題を解決

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 33

キャパシティの上限を増やす

コスト効率を上げる

進化のスピードを上げる

⇒ 設備投資

⇒ 技術革新

⇒ パートナー・SV拠点

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

34

Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止

35

Recommended