X

Author Profile

Kenichi Sonoda

Recent Posts by Kenichi Sonoda

Apache Sparkからオブジェクトストレージのデータを使う

はじめに 以前の記事「Apache KafkaのメッセージをOracle Cloud オブジェクト・ストレージへ永続化する」ではエッジで生成されたデータをApache Kafkaで受け、オブジェクトストレージに永続化するという題材を取り上げました。アプリログ、ソーシャルログ、ウェブログ、IoTなど様々なシステムで使われている、今やお決まりのデザインです。 オブジェクト・ストレージに貯められたデータは当然、何らかのデータ処理エンジンにより使われるわけですが、本記事では、定番の Apache Sparkを取り上げます。Apache Sparkは、その生産性の高さと、MapReduceのデメリットを解消できるアーキテクチャにより、リリース後、短期間でスターの仲間入りを果たしたデータ処理エンジンです。人工知能、ディープラーニング、機械学習といった技術トレンドの波もあり、瞬く間にデータサイエンティストに広く受け入れられるようになりました。 Apache Sparkについては巷に有識者の優良な情報が溢れていますので、そちらをご参考にしていただき、本記事としては、エッ...

Apache KafkaのメッセージをOracle Cloud オブジェクト・ストレージへ永続化する

はじめに 今日のデータ分析基盤では大規模なデータを安価に保持できるデータストアが必要です。ビッグデータ時代黎明期においてはHDFSがその一翼を担い、データストアの定石アーキテクチャとして定着しました。 しかし、Amazon S3に代表される、いわゆるクラウド・ストレージの台頭により、HDFSは唯一の選択肢ではなくなりつつあることもまた事実です。 かつて、データマネージメント市場において、HDFSを中心にあらゆるエコシステムが急速に形成されたように、今やクラウド・ストレージとのインターフェースを持たないデータ処理エンジンは皆無と言える状況です。 一昔前まで、この技術分野ではリレーショナル・データベースを中心にシステムを構成するアーキテクチャが一般的でした。オンライントランザクション処理のオペレーショナルデータベースからオンライン分析処理のデータウェアハウスへ、バッチによるETL処理を経由しデータを渡しつつ、他システムとはメッセージキューやEAIで連携、という具合です。 残念ながらこの旧式の仕組みでは、あらゆるタイプの大容量データをリアルタイムに処理でき...