既存データからの移植について
OSSをハブとした運用について
前述、OSSとE-MapReduceを説明しました。OSSをハブとして運用することで、コスト削減はもちろん、AlibabaCloudの様々なフルマネージドサービスを中心とした構成が可能となります。
そのため、全ての処理基盤はAlibabaCloudで初め、AlibabaCloudで終わる、という構成も可能です。
同時に、AlibabaCloudのOSSは様々な外部データソースと連携することが可能です。
別の章にてそれぞれのデータソース接続手法を記載します。
2019/07/20 現状確認されてる外部データソースとの接続方法サマリとしては以下の通りになります。
今後このサマリにてApache Beam、Apache Flink、Apache samza、kinesis、Livy、Oracle on Spark、SQL Server on Spark、MongoDB、他の外部データソースも順次追加したいと思います。
運用するときの注意点について
データ構造
データを集約した後、どんな分析を行うのか?これを踏まえて、どんな利用方法があるか?をイメージしたテーブル・スキーマ・フィールドタイプ・データ設計をする必要があります。
転送料金
OSSと外部データ(IDCやS3など)でデータやりとりするとき、OSSへInするデータは無料ですが、VPCより先へOutするデータには料金が発生してしまいます。なので、Outするときはデータを圧縮してから移植するなど、工夫が必要です。
ネットワーク
データを集約・転送するとき、NW距離ら物理的な要因で処理が遅くなることがあります。そのため、OSSおよび周囲プロダクトサービスとのリージョン・配置はできるだけ近い位置で配置が望ましいです。
ETL
ETLは様々な方法がありますが、データ型やhdfsタイプ、仕様上できることできないことを見極めて全体設計が望ましいです。
ex: * HiveやSparkはdate型をサポートしますが、PrestoやImpalaはdate型をサポートしないので読み込み不可 * SparkはORCサポートを打ち切ったため 、代わりの手法はSparkの最新ドキュメントで確認