NTTデータ Hadoop/Spark エンタープライズソリューションセミナー2016
markdown記法の練習のために、セッション中にメモした内容。
- メモが間に合わなかったため、大切なところが抜けている
- 打ち間違い、聞き間違い
- 理解できていないための間違い
などなど色々あると思いますが、とりあえず残します。
概要
- 日時:2016-11-16 10:00-17:30
- 場所:秋葉原コンベンションホール
基調講演
1. NTTデータ 10:00-10:30
- ビッグデータ処理(Hadoop, Sparkにより可能となったこと)
- サンプリングでなく、全量データを扱う
- 個々に対してアプローチする
- 流通・小売
- 先頭を走る人のアプローチ
- リスクを許容して、先行者利益を取りに行く
- ニーズの多様化
- 追従する人のアプローチ
- 投資効果を最大化、効率よくトレース
- 既存技術でまかなえない箇所をピンポイントで埋めて差し切る
2. 三井住友カード 10:30-11:00
- メインフレーム上のバッチ処理をHadoopでオフロードする取り組みの紹介
- クレジットカード業界のトレンド
- 決済手段の多様化
- ネットチャンネルでの決済の増加
- 決済金額の少額化
- 課題
- 基幹の肥大化
- トランザクションの増大化
- Hadoopに対して
- 目的
- ホストの負荷軽減
- すでに30年以上稼働
- 月次処理削減によるコスト抑制
- MIPS課金
- プラットフォームの最適化
- ホストの負荷軽減
- 判断
- 高負荷ジョブの抽出を支援するツールの開発
- 高負荷ジョブのHadoop移行試験(PoC)
- 目標
- Hadoop基盤の構築
- ホストAPのオフロード・汎用検証機能
- 100MIPSの削減
- 6時間30分から10分11秒の削減
- 共通機能・運用機能開発
- 今後、Hadoop基盤の拡充
3. 大東建託 11:00-11:25
- ゆるキャラグランプリ2016総合160位だいとくん
- プロジェクトの背景(7つのリスク)
4. トレジャーデータ 11:25-11:50
- 5年目、3度目の増資、100名、カリフォルニア、東京、ソウルの3拠点
- Live Data Management
- fluentd
- embulk
- fluentdは、逐次(デフォルトで5分)転送
- embulkは、バッチ転送(バルクロード)のためのツール
- 事例
- Tresure Data Connector
- ユーザがS3にデータを置くと、embulkのワーカーがデータを取りに行く
- 従来は、ユーザ側でキックする必要があった
- ユーザがS3にデータを置くと、embulkのワーカーがデータを取りに行く
- Tresure Data Connector
- 今年6月から、NTTデータとエンタープライズ向けのサポートを開始した
午後のセッション
Apache Sparkのエッセンス 13:20-14:00
- 今年7月に2.0リリース。2年ぶりのメジャーアップデート
- まずHadoopの説明
- Sparkの登場
- Sparkの今
Apache Kafka 14:10-14:50
- 複数台のサーバで多くのデータを処理するメッセージングシステム
- よそから送られたメッセージを受け取り、よそにメッセージを送る
- エンタープライズで有用な特徴
- 幅広いユースケース
- リアルタイム処理基盤のメッセージングシステム
- ここでいうリアルタイム処理とは、収集から数百ミリ秒から数秒でデータが処理される処理方式のこと
- データの収集先が増えたときなどの変更の容易さ
- バーストトラフィックなどが発生したときにもデータを失いにくい
- 異常時の再処理にも対応してくれる
- Server -> Kafka -> Spark(リアルタイム処理基盤) -> 結果
- ログ収集/集約基盤
- ここでのログとは、各サーバで発生するアプリケーションログだけでなく、顧客の行動ログ(購買記録など)なども含む
- 複数のサーバや部署、複数の場所からのログ収集が容易
- 複数人/複数システムで同時利用が行いやすい
- リアルタイムの分析
- ログの一元管理
- Webサービスの処理基盤の一部としての利用
- Event Sourcing / CQRS
- 大量のメッセージを処理でき、リアルタイム処理との相性も良い
- スケールアウトの特性から、性能の増強が行いやすい
- リアルタイム処理基盤のメッセージングシステム
- 堅牢かつ柔軟な構造
- 分散メッセージングシステム
- 数台の故障でデータを失わない
- 数台の故障で停止しない
- 受信に失敗した場合もリカバリ可能
- 送信に失敗した場合もリカバリ可能
- スケールアウト
- サーバ台数の増減で全体性能を調整していく仕組み
- 他プロダクトと容易に連携
- 幅広いユースケース
- 利用状況
IoTを支えるインフラ技術 15:10-15:50
- 撮影禁止
- IoTの全体像
- NTTデータの考えるIoTプラットフォーム
- IoTプラットフォームのアーキテクチャと特徴
- 特長まとめ
- 例
- BRIMOS 橋梁監視
- ANYSENSE IoTプラットフォーム 上下水道分野、工場・プラント管理など
Fluentd & Embulk 16:00-16:40
- データ処理基盤の構築における諸問題
- Fluentd / Embulk
- Open Source Software
- plugin system
- 様々なユースケース
- Fluentd
- オープンソースソフトウェアのログコレクタ
- 例;syslog, flume, ...
- サーバ常駐型のデーモンとして稼働
- Input, Filter, Buffer, Output plugin
- 可用性:耐データロスト・高効率
- Batch
- 転送エラーが起きた時、すべてやり直す必要がある
- Stream
- チャンクにわけて転送するため、転送エラーが起きてもその部分だけ再送すればよい
- Batch
- オープンソースソフトウェアのログコレクタ
- Embulk
- オープンソースのバルクデータ転送ツール(ETL)
- コマンドで起動
- 使い分け
- Fluentd
- Webサーバログ、アプリケーションサーバログ
- 監視、モニタリング
- 流量の大きいログの収集
- リアルタイム性の高い分析用途(1分程度なら容易)
- Embulk
- Fluentd
PostgreSQL 9.6 16:50-17:30
- 9月末にリリース, 9.6.1が10/27にリリース
- PostgreSQLについて
- PostgreSQLという名前になって20年(1996-)
- UberはPostgreSQLからMySQLに移行した
- PGConf.Asia 2016が12月に秋葉原で開催
- 9.6の新機能
- パラレルクエリ
- 一つのSQLを複数のプロセスで分担して処理できる
- 並列処理できるのは、検索と集計と結合
- できないのは、更新、削除、インデックス作成、ソートなど
- オラクルと異なり、CPU数を考慮せずテーブルサイズを元に並列度を算出
- 200コアのマシンで検証したところ、60までは性能向上した
- VACUUMの性能、運用性向上
- Freeze Map
- VACUUMの問題への対応
- VACUUMは、全テーブルを問答無用でフルスキャン。ディスクI/OやCPUを消費
- いつ発生するかは、PostgreSQL次第
- キャンセルできるが、実行しないままでいると、PostgreSQLがある日突然停止する
- 近年、DBに格納するデータが増大。数TB以上も普通になってきたため、問題が大きくなっていた
- デフォルトで有効
- VACUUMの問題への対応
- Vacuum Progress Checker
- Vacuumの進捗状況が見える
- Freeze Map
- マルチ同期レプリケーション
- 複数の同期レプリケーションを持つことができるようになった
- 外部データ連携(FDW)
- FDW 外部データをあたかもPostgreSQLのデータとして扱える機能
- 結合やソート処理、更新、削除も外部サーバに依頼可能となった
- パラレルクエリ
- 今後
- 今年は、各社がロードマップを公開している
- PostgreSQLのバージョニングが変わる