はつか日記

徒然なる日々に思うことを呟きます

AbemaTV DEVEROPER Conference2018に行ってきた

お断り

本番中PCを持って行くことを完全に失念していたため、書いていることはメモ書きレベル&穴だらけです。
後日abemaTVさんの方からパワポ資料と発表動画がだされるそうなので、ちゃんとした内容が知りたい方はそちらをご覧ください。

1st "AbemaTVのエンジニア組織論と今後の技術戦略"

  • abamaTVの今昔
  • ユーザは右肩上がり
  • 企業としても右肩上がり
    • エンジニア1000人越え
    • ヒューマンマネージネントが大変
    • なんかのシステム名を言っていたけど忘れた(後日のスライドで確認)  - エンジニアを7段階ぐらいにレベル分け
      • 報酬レンジに反映
    • 各自目標を立て誰もが見れる状態に
      • 実力が上の人や同期の目標を見てモチベに

2nd "「72時間ホンネテレビ」の負荷対策とその裏側""

  • とりあえずインフラエンジニアすごい
  • 亀田興毅に勝ったら1000万円で大きなサーバダウン
  • 年末特番に向けて負荷対策が必要
  • しかし1ヶ月前になって「72時間ホンネテレビ」があることが判明
  • 時間的リソースがなくなる
  • とりあえずリクエストが発生している部分を徹底的に洗い出す
    • CDNがうまく活用できていない
    • コメント・プレイリストのリクエストが異常に多かった
  • akamai(CDNサービス)
  • できるだけオリジンにたどり着くリクエストを減らす
  • その結果リクエストは大きく削減
  • 72時間ホンネテレビは無事成功

3rd"AbemaTVのアーキテクチャの変遷"

ここは専門用語の洪水でよく覚えていません。すみません...

  • 撮影から視聴まで大量のプロセス
  • SPOT配信やリアルタイム配信にも対応
  • そのときそのときで最善のアーキテクチャを選択

4th "AbemaTVのオリジン監視システム「Procyon」"

  • オリジンの異常を検知するシステムが必要
  • 独自で制作
  • 拡張が容易であることがマスト
  • 本システム側で細かなモジュールから設定を組み上げられる
  • それを受けてProcyon内でmanagerがそれぞれのモジュールを実行
  • 返ってきたエラーの最悪値(green,yellow,red)をそのサービスの状態として記録
  • 通知機能とログ機能も

5th "Kubernetes Jobによるバッチシステムのリソース最適化"

  • 動画をたくさんの形式に変換する必要がある
  • エンコーディングに時間を割きたくない
  • そのために並列処理を導入する
  • 4つぐらいの技術を比較していたが、詳しい名前は忘れてしまった
  • 技術1
    • キューとタスクを入れるサーバ(特別な名前があったけど思い出せない)がいくつか
    • タスクをキューに入れると手が空いたサーバから処理していく
    • メリットは拡張がしやすいこと、デメリットが思い出せない~~~
  • 技術2
    • 何かのサービスだった気がする…
    • タスクそれぞれに最小値と最大値を割り当てる
    • それによってリソースを柔軟に組み合わせて実行することができる
    • しかし最大値を超えてしまうとタスクから追い出されるリスクがある
    • そうなると一からやり直し。それは避けたい
  • 技術3
    • キューのラインを増やした方式
    • 重いタスクをするキューと軽いタスクをするキューで分けて処理する。
    • 技術2のような追い出されるリスクがなくてすむ
    • 複雑怪奇になりやすい
  • 技術4(採用)
    • Kubernetesを使う方法
    • Jobと呼ばれる単位で処理を行う
    • 難しいのは並列処理の次のタスクに進むにあたって、その処理がすべて終わったと確認すること
    • Jobの管理をするJobを作って対処

6th "AbemaTVにおける推薦システム"

  • 推薦システムはAbema videoで活躍
  • 膨大な件数の中から短時間で高精度のランキングが得たい
  • 粗いアルゴリズムと高精度なアルゴリズムを組み合わせる
  • まず粗いアルゴリズムでユーザの好みに合致しそうなものをざっとランキング
  • 次に高精度なアルゴリズムでリランキング
  • これから更に高精度にしていきたい

7th "通信節約モードの品質確定プロセス"

  • 従来の通信量を50%に抑えた通信節約モード
  • abemaTV初期の横画面しかなかったところから縦画面にも対応させようとしたところで企画がスタート
  • 時間的要素(音声サンプルレート、フレームレートなど)は変えられない
  • 変えるなら画素数
  • ただし品質は維持したい
  • 様々な画素数×様々な端末×複数の検査項目と大量の項目でどこがベストかを探っていく
  • 明らかに品質が変わる部分を発見
  • そこが通信節約モードで用いるもの

Final "世界の動画技術動向を見据えたAbemaTVの向かう先"

  • エモイタイトル
  • 動画配信の最新技術をキャッチアップしてくるエバンジェリスト
  • 自分達はまだまだ後発
  • 困ったことは世界に補ってもらおう
  • 世界各地のカンファレンスに参加
  • 欧米での地上波放送からデジタル配信に移る動き
  • それを牽引する標準規格団体
  • 揺れ動く次期デファクトスタンダード規格(規格名は忘れてしまいました…)
  • まだabemaTVは基礎を固める段階

まとめ

実は外部カンファレンスというモノはこれがほぼ初めてだったのですが、PCを持って行けばよかったという自責の念にとんでもなく苛まれています。
記事を見ても分かるように結構穴が出来てしまいました...
後日スライドと発表動画が公開されるそうなのでそれを待つしかないですね!
しかしPCを持って行かなかったからと言って得られたモノがなかったわけではありません。
むしろ数え切れないほどあったと想います。
普段あんまり関わることのないインフラエンジニアの世界、長年世間を支えてきたテレビの品質に負けぬようなプロダクトを作る工夫と努力、
そして何よりabemaTVの人を始め沢山の人と出会いお話できたのはとてつもない成果だと思います。
こういう機会を設けてくださったabemaTVの皆さん、本当にありがとうございました!とても楽しかったです!!
またこういうイベントがあったら行きたいなぁ…
何かいいイベント知ってたら教えてください!