はじめに
**Alibaba Cloud E-MapReduce(EMR)**を試してみました。
EMRは大量のデータの分析と処理を可能にするビッグデータ処理ソリューションです。
HadoopやEMR自体の説明はすでにWeb上に良質な記事がたくさんありますので、
AlibabaのEMRに特化した説明とします。
AlibabaCloudとは
Alibaba Cloudは日本国内では知る人ぞ知るクラウドサービスですが、
グローバルのマーケットシェアで見ると世界5位(Amazon, Microsoft, Google, IBMに次ぐ)
につけています。
サービスラインナップとしては、AWS/Azureに匹敵するものを提供しています。
サービス比較としていい記事がありましたので興味のある方はどうぞ↓
[2019年5月版] Alibaba Cloudの中国版/国際版/日本版比較表(and AWS/Azure/GCP)
また、アリババ自身がデータ活用を原動力にして成長してきたこともあり、
ビッグデータ系ではデータ収集〜データ管理/加工〜分析〜可視化まで包括的なサービスラインナップを提供しています。
AlibabaCloud EMRのアーキテクチャ
AlibabaCloud EMRのアーキテクチャです。
OSSはオブジェクトストレージ(AWSでいうとS3)で、OSSをHDFSのように扱うことで計算資源とストレージを分離することができます。
(この点はAWS EMRと同じです)
AlibabaCloud EMRで使用可能なコンポーネント
AlibabaCloud EMRで使用可能なコンポーネントとバージョンの一覧を掲載します。
AWSとの比較もしています。
コンポーネント | Alibaba EMR-3.20.0 | AWS EMR-5.23.0 |
---|---|---|
Hadoop | 2.8.5 | 2.8.5 |
YARN | 2.8.5 | 2.8.5 |
Hive | 3.1.1 | 2.3.4 |
Spark | 2.4.2 | 2.4.0 |
Knox | 1.1.0 | - |
Zeppelin | 0.8.1 | 0.8.1 |
Tez | 0.9.1 | 0.9.1 |
ApacheDS | 2.0.0 | - |
Ganglia | 3.7.2 | 3.7.2 |
Pig | 0.14.0 | 0.17.0 |
Sqoop | 1.4.7 | 1.4.7 |
Hue | 4.1.0 | 4.3.0 |
HBase | 1.4.9 | 1.4.9 |
ZooKeeper | 3.4.13 | 3.4.13 |
Presto | 0.213 | 0.215 |
Impala | 2.12.2 | - |
Flume | 1.8.0 | - |
Livy | 0.6.0 | 0.5.0 |
Superset | 0.28.1 | - |
Ranger | 1.2.0 | - |
Flink | 1.7.2 | 1.7.1 |
Storm | 1.2.2 | - |
Phoenix | 4.14.1 | 4.14.1 |
SmartData | 1.0.0 | - |
Bigboot | 1.0.0 | - |
Oozie | 5.1.0 | 5.1.0 |
Kafka | 1.1.1 | - |
Kafka-Manager | 1.3.3.16 | - |
Spark | 2.3.2 | 2.4.0 |
Analytics Zoo | 0.2.0 | - |
Jupyter | 4.4.0 | 5.7.0 |
TensorFlow | 1.8.0 | 1.12.0 |
Druid | 0.13.0 | - |
JupyterHub | - | 0.9.4 |
MXNet | - | 1.3.1 |
HCatalog | - | 2.3.4 |
Mahout | - | 0.13.0 |
ご覧の通り、ほとんどAWSと同等かそれ以上のコンポーネントが揃っています。
ImpalaなどAWSにはないコンポーネントもあり、コンポーネントの豊富さは隠れた嬉しいポイントかもしれません。
AWSと比較した、Alibaba Cloud EMRの使いどころ
上記の通り、AlibabaCloud EMRではAWSとほとんど同じコンポーネントが使えます。
EMRはHadoop等のオープンソースのマネージドサービスであることもあり、
ユースケースにそれほど差異はないと言えると思います。
ではどんな時にAlibabaCloudを使うか?
使い所としては、AlibabaCloudのコストの安さに着目するのもありと思います。
上記の記事で検証されていますが、従量課金のCPU特化インスタンスとしては、
Alibabaが最もコストパフォーマンスが高いです。
EMRはステップ実行としてオンデマンド(従量課金)でインスタンスを利用することが多いと思いますので、
この場合はAlibabaCloudでコストを削減可能なケースも多いかと思います。
次回予告
次回は実際にAlibaba EMRでクラスターを作成してみます!