Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Snowflakeがもたらした noteのデータ分析の進化

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.
Avatar for littlekbt littlekbt
October 26, 2022

Snowflakeがもたらした noteのデータ分析の進化

DATA CLOUD WORLD TOUR JAPAN Day 2 15:05-15:35 の発表のスライドです。

Avatar for littlekbt

littlekbt

October 26, 2022

Other Decks in Technology

Transcript

  1. note inc. メンバー
 193名 社員
 エンジニア
 177名 約50名 5 (2022年9月時点)


    従業員数
 子育て率
 社員紹介による入社率 
 12% 23%
  2. note inc. 過去の現場の声
 
 11 アナリスト
 (ヘビーユーザー)
 PM・ディレクター
 (ライトユーザー)
 -

    せっかくSQLを書いたが、レスポンスが遅いので、別の作業をしてしまいデータ活用のモチベーションが上 がらない。
 
 - そもそもほしいデータがどこにあるかわからない。 
 - インタラクティブに結果が返ってこず、分析業務の認知負荷が高まる。 
 
 - 一度間違えると再度実行するのにまた30分くらい待たなければいけない。 
 
 - クエリーの実行完了までが遅いので、タスクの消化ができない。 

  3. note inc. 2018/6 2019/11 2022/4 RDSを使ったデータ分析 
 
 noteにおけるデータ分析基盤の歴史
 


    データ基盤による分析 
 
 DWH導入
 RDSに よる データ 分析
 
 RDSに よる データ 分析
 

  4. note inc. 2018/6 2019/11 2022/4 RDSを使ったデータ分析 
 
 noteにおけるデータ分析基盤の歴史
 


    データ基盤による分析 
 
 DWH導入
 RDSに よる データ 分析
 
 RDSに よる データ 分析
 

  5. note inc. 2018/6 2019/11 2022/4 RDSを使ったデータ分析 
 
 noteにおけるデータ分析基盤の歴史
 


    データ基盤による分析 
 
 DWH導入
 RDSに よる データ 分析
 
 RDSに よる データ 分析
 

  6. note inc. 
 - 分析用のデータではなかった。(ログが欠損したり消えたりする) 
 
 - データ分析の需要が高まるにつれ、ログの種類が増え、APIサーバーにかかる負荷が高くなっ た。


    
 - バズった際など、APIに負荷がかかってしまっていた。 
 
 - レコード数が増え、RDSでの集計が不可能になった。 
 
 - GoogleAnalyticsが無料で使える範囲を超えた。 
 
 
 28 フェーズ1: RDSによるデータ分析 
 
 課題

  7. note inc. 2018/6 2019/11 2022/4 RDSを使ったデータ分析 
 
 noteにおけるデータ分析基盤の歴史
 


    データ基盤による分析 
 
 DWH導入
 RDSに よる データ 分析
 
 RDSに よる データ 分析
 

  8. note inc. 
 - レコード数が増え、S3のファイルが増えるとともにAthenaのタイムアウトが発生するようになっ た。
 
 - データ分析の要望は増えていくが、インフラの制限により、実現できることに限りが出てきた。 


    
 - タイムアウトの回避のためデータのETLを行ったが、 アーキテクチャーが複雑化してしまい、開発 の難易度が上がり、増える要望を消化できなくなった。 
 
 
 31 フェーズ2: データ基盤による分析 
 
 課題

  9. note inc. 2018/6 2019/11 2022/4 RDSを使ったデータ分析 
 
 noteにおけるデータ分析基盤の歴史
 


    データ基盤による分析 
 
 
 
 DWH導入
 RDSに よる データ 分析
 
 RDSに よる データ 分析
 

  10. note inc. 33 
 - 主に分析業務の速度の改善のためにDWHの導入を検討。 
 
 - Redshift・BigQueryとの比較の上、Snowflakeの導入を決定。

    
 
 - 速度の改善に成功。分析業務の 大幅効率化。
 フェーズ3: DWH導入 
 
 概要

  11. note inc. 当時のデータ分析の課題
 解決したかった課題 
 - データの探索に時間がかかっていた。 
 
 -

    半年以上の長期間の集計をしようとすると、タイムアウトが発生してしまい集計が不可能。 
 35
  12. note inc. 遅いは罪?
 データの探索に時間がかかる 
 - SQLを実行してからしばらく待つため、別の作業をしてしまい、 集計作業に集中できない 。
 


    - SQLにミスがあった場合、再度数十分待つ必要があり、 ストレスが発生する。
 
 - 可視化まで時間がかかるので、 現場の要望を消化できない 。
 36
  13. note inc. 遅いは罪?
 37 データの探索に時間がかかる 
 - SQLを実行してからしばらく待つため、別の作業をしてしまい、 集計作業に集中できない 。


    
 - SQLにミスがあった場合、再度数十分待つ必要があり、 ストレスが発生する。
 
 - 可視化まで時間がかかるので、 現場の要望を消化できない 。
 データが活用されなくなる

  14. note inc. データウェアハウスに求めたもの
 - ほしいデータにすぐにアクセスできる 
 
 - 長期間のログデータの集計 


    
 - クラウドサービスにあるデータの取り扱いが容易 
 
 - BIツール・その他システムとの連携 
 
 - できれば安価で運用コストも低い 
 38
  15. note inc. Snowflake選定の理由
 - ほしいデータにすぐにアクセスできる 
 
 - 長期間のログデータの集計 


    
 39 マイクロパーティショニング・ウェアハウスの分離により爆速かつ大規模なデータ探索が可能 
 5分程度で取り込み可能・Snowpipeなどで連続的に流れてくるデータの取り扱いも容易 
 ほとんどのBIツールとの連携が可能 
 ストレージは圧縮により非常に安価・ウェアハウスも使用後はすぐに停止するため、コントロー ルしやすい。
 - クラウドサービスにあるデータの取り扱いが容易 
 - BIツール・その他システムとの連携 
 - できれば安価で簡単に運用が可能 

  16. note inc. 導入して気がついたよかった点
 - 導入自体が容易
 SnowflakeはAWSにデータをおいていれば扱いが簡単なので、導入が非常に容易だった 
 - サポートが充実
 ドキュメントが豊富かつ

    日本語でのサポートも充実で、基本即日に問題が解決する 
 - 比較的新しいシステムなので、UIなど使用感がとてもいい 
 開発者のモチベーション向上 
 
 41
  17. note inc. - 比較的費用が高い
 
 - 外部テーブルを使った際に、Athenaなどとそこまでパフォーマンスに差が感じられなかった 
 
 -

    ストレージとコンピュートリソースが分離できず、運用に負荷がかかる 
 Redshift
 42
  18. 50