20
1 Vectorwise on Real Enterprise Environment - Comfortable Agile Analytics - Insight Technology, Inc. 新久保 浩二

A12 Vectorwise on real enterprise environment by 新久保浩二

Embed Size (px)

Citation preview

Page 1: A12 Vectorwise on real enterprise environment by 新久保浩二

1

Vectorwise

on Real Enterprise Environment

- Comfortable Agile Analytics -

Insight Technology, Inc.

新久保 浩二

Page 2: A12 Vectorwise on real enterprise environment by 新久保浩二

2

1. Insight Qube & Vectorwise

2. おら オラ Oracle どっぷり検証生活

2. Oracle ACE

3. @kouji_s_0808

4. JPOUG(Japan Oracle User Group)

本日はOracle以外の話です。

本資料に使用されている社名、ロゴ、製品、サービス名およびブランド名は、該当する各社の登録商標または商標です。本資料の一部あるいは全体について、許可なく複製および転載することを禁じます。

Page 3: A12 Vectorwise on real enterprise environment by 新久保浩二

3

1. Vectorwise(Column oriented Database)の概要

2. Agile Analytics による “心地よさ” 体験

Page 4: A12 Vectorwise on real enterprise environment by 新久保浩二

4

History

‘70s RDBMS黎明期から開発は行われている

’76 カナダ統計局の RAPID (カナダの国勢調査および統計的処理システム)

* 80年代には世界中でRAPIDが共有され、90年代まで使用された(wikipedia)

’00 長年、Sybase IQが商用のColumnar Databaseとして存在

NOW 近年、大量データにおける分析需要の高まりから様々な製品およびプロジェクトが誕生

また、商用大手ベンダーも列指向と行指向のハイブリッド化を進めている

Commercial

Sybase IQ

Aster Data

Vertica

Greenplum

VectorWise

Free or Open

InfiniDB CE

MonetDB

C-Store

LucidDB x100

Page 5: A12 Vectorwise on real enterprise environment by 新久保浩二

5

• 列指向とは?

• メリットは?

(シーケンシャルな)アクセス効率 + データ圧縮 = 分析基盤に向いている

Prod ID Prod Name

Prod ID Prod Name

Prod ID Prod Name

Prod ID Prod Name

Prod ID Prod Name

Date

Date

Date

Date

Date

Prod ID Prod Name

Prod ID Prod Name

Prod ID Prod Name

Prod ID Prod Name

Prod ID Prod Name

Date

Date

Date

Date

Date

1ブロックには様々な

タイプのデータが格納

されているので圧縮効

率を上げにくい

1ブロックには同様の

タイプのデータが格納

されているので圧縮効

率を上げやすい

Page 6: A12 Vectorwise on real enterprise environment by 新久保浩二

6

• デメリットは?

一般的に

(ランダムな)アクセスが非効率 + データ圧縮 = OLTP基盤に向いていない

Prod ID Prod Name

Prod ID Prod Name

Prod ID Prod Name

Prod ID Prod Name

Prod ID Prod Name

Date

Date

Date

Date

Date

Prod ID Prod Name

Prod ID Prod Name

Prod ID Prod Name

Prod ID Prod Name

Prod ID Prod Name

Date

Date

Date

Date

Date

更新時に圧縮・展開

のオーバーヘッドが

大きい(*1)

(*1) 圧縮のデメリットはカラムナーデータベースに限った話ではありません

Page 7: A12 Vectorwise on real enterprise environment by 新久保浩二

7

TPC-Hベンチマーク(www.tpc.org)に

おけるNon-Cluster

分野において、最速

のデータベース

Page 8: A12 Vectorwise on real enterprise environment by 新久保浩二

8

- CPU

SIMD (Vector Processing)

Utilizing CPU Cache as execution memory

Parallel Execution (Optimizing CPU many cores)

- IO (Optimizing large data scan)

Column-based Storage

Data Compression

Storage Index

Page 9: A12 Vectorwise on real enterprise environment by 新久保浩二

9

SIMD (Single Instruction Multiple Data)

Pentium ⅢよりSSE(Streaming SIMD Extensions)として搭載され、Sandy BridgeよりIntel AVX(Advanced Vector eXtensions)へ

・・

・・

・・

・・

・・

Instruction

Data

Output

Page 10: A12 Vectorwise on real enterprise environment by 新久保浩二

10 (*) DBT3のデータを使ったTPC-H相当のベンチマーク (弊社調べ)

good

11166.392

853.186

82.085

0

2000

4000

6000

8000

10000

12000

RDBMS X on HDD VectorWise2.0 on HDD VectorWise2.0 on SSD

Query22

Query21

Query20

Query19

Query18

Query17

Query16

Query15

Query14

Query13

Query12

Query11

Query10

Query09

Query08

Query07

Query06

Query05

Query04

Query03

Query02

Query01

ElapsedTime

13

136

Page 11: A12 Vectorwise on real enterprise environment by 新久保浩二

11 (*) 2012/09/14 – 2012/10/09 までのTwitterデータから(弊社調べ)

Page 12: A12 Vectorwise on real enterprise environment by 新久保浩二

12

ひらめき

検討

分析 検証

結果

Legacy Analytics

分析は結果として何がアウトプットされるか

プロジェクト初期段階で見えづらい

最初の”ひらめき”の結果が出るまでに、時間と

お金がかかり、最初の“ひらめき”の信頼度の

責任が重い

Agile Analytics

“ひらめき”から超高速に結果に結び付け、

”何度も”分析、検証のプロセスを実行し、

精度の高いアウトプットをプロジェクト

初期段階から得る

数千万~数百億件 程度のデータの分析、

集計なら、サクッとこなしましょうよ。

という単純な話

Page 13: A12 Vectorwise on real enterprise environment by 新久保浩二

13

- Twitterのデータが約8,000万件 (2012/09/15 ~ 2012/10/11)

- Mecabによる形態素解析データが約6,000万件 (日本語圏のTweetのみ対象)

- 奈良先端大学の日本語評価極性辞書が1.1万件

(http://cl.naist.jp/~inui/research/EM/sentiment-lexicon.html)

- Juman辞書内のドメイン情報が1.3万件

関連する言葉ランキングや、マクロな気持ち(Positive/Negative)

を分析する人工無脳

* 出力されるアウトプットには全く責任を負えませんので悪しからず…

Page 14: A12 Vectorwise on real enterprise environment by 新久保浩二

14

SELECT …

FROM Twitter本文 本文

,Twitter言葉 言葉

,(各種辞書データ 辞書)

WHERE 本文.ID = 言葉.ID

(AND 言葉.言葉 = 辞書.言葉 AND 言葉.品詞 = 辞書.品詞)

AND upper(本文.140文字のTEXT) like ‘%大文字キーワード%’

AND 本文.Tweetされた時刻 between 開始 and 終了

GROUP BY date_format(Tweetされた時刻,’日付フォーマット’)

,…;

各デモアプリケーション内での典型的なSQL文のイメージ

SQL的には結構、重い

SQLになっています。

- キーワードマッチに

よるCPU負荷

- 大量データによる

I/O負荷

Page 15: A12 Vectorwise on real enterprise environment by 新久保浩二

15

Redhat Enterprise

Linux 6.2 64bit

Intel Xeon E5-2690

2.90GHz * 2

256 GB

Redhat Enterprise

Linux 5.7 64bit

Intel Xeon E5645

2.40GHz * 4

256 GB

SATA SSD * 14

(RAID10)

SATA 1K rpm HDD *

18 (RAID10)

Redhat Enterprise

Linux 5.7 64bit

Intel Xeon E5645

2.40GHz * 4

256 GB

SATA SSD * 18

(RAID10)

DBMS X Vectorwise 2.5.1 DBMS X

Page 16: A12 Vectorwise on real enterprise environment by 新久保浩二

16

Page 17: A12 Vectorwise on real enterprise environment by 新久保浩二

17

DBMS-X on SSD

Vectorwise on SSD

168.4秒 → 6.7秒

Page 18: A12 Vectorwise on real enterprise environment by 新久保浩二

18 (*) WEB上の各種記事より (弊社調べ)

まず、データからイメージしてもらいたいこと

製造業、金融業 (コールセンター)

製造業大手では、お客様からの問い合わせ情報が5年で2,000万件弱

製薬

製薬業界データで年間1,000 ~ 1,500万件、MR関連データで500万件

マーケティングデータで数千万件

流通(POS)

売上規模によるが、明細レベルで、年間、数十億 ~ 数百億件

Page 19: A12 Vectorwise on real enterprise environment by 新久保浩二

19 (*) 弊社調べ

Time is money

is priceless

ひらめき

Page 20: A12 Vectorwise on real enterprise environment by 新久保浩二

20

Any Questions ?