sap startup forum tokyo 2013 / sap hana one ビックデータに会いたくて
DESCRIPTION
SAP HANA Oneの性能って他のプロダクトと比較してどうなの?ってことで、様々なプロダクトと性能比較してみます。 実際に12億件のデータを挿入して検索を掛けることでHANAの速度を体感できます。TRANSCRIPT
HANA Startupビックデータに会いたくて
13年6月29日土曜日
13年6月29日土曜日
x 30人
13年6月29日土曜日
12億件の生データ
13年6月29日土曜日
Amazon S3CSV:65.1 GiB
13年6月29日土曜日
どうやって料理する?
13年6月29日土曜日
13年6月29日土曜日
MySQLSecond Generation 2XL
(m3.2xlarge)
CPU:8コアECU:26
メモリ:30 GiBノード:1つ価格:$1.520/h
13年6月29日土曜日
SAP HANA OneCluster Compute 8XL
(cc2.8xlarge)
CPU:32コアECU:88
メモリ:60.5 GiBノード:1つ価格:$4.065/h
13年6月29日土曜日
Amazon RedshiftHigh Storage 8XL (dw.hs1.8xlarge)
CPU:16コアECU:35
メモリ:120 GiBノード:2つ価格:$20.00/h
13年6月29日土曜日
Amazon EMR /w HiveHigh Memory 4XL
(m2.4xlarge)
CPU:8コアECU:26
メモリ:68.4 GiBノード:4つ価格:$4.04/h
13年6月29日土曜日
Amazon DynamoDBProvisioned IOPS
write : 10000 IOPSread : 10000 IOPS価格:$10.12/h
13年6月29日土曜日
各環境のテーブルを定義する
13年6月29日土曜日
CREATE TABLE detail( client_id varchar(4) NOT NULL, sales_key varchar(50) NOT NULL, receipt_line integer NOT NULL,
sales_date timestamp NOT NULL, article_key integer, article_key2 integer,
coupon_jancd varchar(13), sales integer, sales_tax integer,
amount integer, discount integer, coupon integer, gross integer,
regdate timestamp );
13年6月29日土曜日
Amazon S3のデータをインポートする方法
13年6月29日土曜日
MySQLの場合> LOAD DATA INFILE "/usr/local/detail_aa"
INTO TABLE hanatest.detail;
13年6月29日土曜日
SAP HANA Oneの場合> IMPORT FROM CSV FILE
'/backup/detail_aa.csv'INTO "HOGE"."DETAIL"
WITH THREADS 10BATCH 10000
RECORD DELIMITED BY '\n'FIELD DELIMITED BY '\t';
MERGE DELTA OF "HOGE"."DETAIL";
13年6月29日土曜日
Amazon Redshiftの場合> copy detail from
's3://bucket/hoge/detail_aa' CREDENTIALS
'aws_access_key_id=?????;aws_secret_access_key=?????'
delimiter '\t';
13年6月29日土曜日
Amazon EMR /w Hiveの場合> create external table detail (
client_id string, sales_key string,receipt_line int, sales_date timestamp,)
row format delimitedfields terminated by '\t' lines terminated by '\n'
stored as textfile location 's3://hoge/detail';
13年6月29日土曜日
Amazon DynamoDBの場合> CREATE EXTERNAL TABLE detail (client_id string, sales_key string) STORED BY
'org.apache.hadoop.hive.dynamodb.DynamoDBStorageHandler'
TBLPROPERTIES ("dynamodb.table.name" = "DETAIL_DYNAMO",
"dynamodb.column.mapping" = "col1: client_id,col2: sales_key");
13年6月29日土曜日
インデックス無し
13年6月29日土曜日
普通のテーブル定義です!
13年6月29日土曜日
select count(*) from ”DETAIL”;
result : 1,233,895,734
hana : 0.02 sredshift : 0.42 smysql : 24.0 s
emr : 約60分...
13年6月29日土曜日
select * from ”DETAIL”
result : all
hana : 0.04 sredshift : 0.27 s
mysql : 0.00 s (local)
13年6月29日土曜日
select count(*) from (select distinct "ARTICLE_KEY"
from "DETAIL")
result : 30,253
hana : 1.31 sredshift : 21.93 smysql : 53.42 s
13年6月29日土曜日
select "SALES_DATE" from "DETAIL" where "SALES_KEY" = ‘123456781234567’
and "RECEIPT_LINE" = ‘123’
result : 1
hana : 0.04 sredshift : 0.26 smysql : 32.41 s
13年6月29日土曜日
select "SALES_DATE" from "DETAIL"
where "SALES_KEY" like ‘%5678123%’ and "RECEIPT_LINE" = ‘123’
result : 27,719
hana : 0.57 sredshift : 6.88 smysql : 31.67 s
13年6月29日土曜日
実は、、、
13年6月29日土曜日
SAP HANA : 12億レコードAmazon Redshift : 7億レコード
MySQL : 1億レコード
でした。
13年6月29日土曜日
なぜ早い?
13年6月29日土曜日
SAP HANAが早い理由1.CPU最適化2.インメモリ
3.カラム型データストア4.データ圧縮
13年6月29日土曜日
Amazon Redshiftが良い場合1.増え続けるビックデータ2.クラスタリングしたい3.サービス利用したい
4.処理性能を後から上げたい
13年6月29日土曜日
Amazon DynamoDBが良い場合1.スパイクな書き込みを保証したい2.スパイクな読込みを保証したい3.読み取り一貫性を保証したい※SQLな集計関数は使えません
13年6月29日土曜日
Amazon EMRが良い場合1.非定型な情報を集計したい
2.Hiveと合わせてSQL使いたい
13年6月29日土曜日
MySQLが良い場合1.正規化された情報を扱いたい2.トランザクション管理したい
13年6月29日土曜日
Amazon S3が良い場合
1.無限にスケールするストレージ2.検索などがない場合3.KVSな情報の場合
4.追記書き込みが無い場合5.結果整合性で問題ない場合
13年6月29日土曜日
クラウド破産w
13年6月29日土曜日
13年6月29日土曜日
次回予告
スパイクアクセスに耐えたくて
13年6月29日土曜日