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

長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time

chibiegg
April 17, 2024

長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time

chibiegg

April 17, 2024
Tweet

More Decks by chibiegg

Other Decks in Technology

Transcript

  1. © SAKURA internet Inc. ⾃⼰紹介 2 2 @chibiegg 江草 陽太

    【所属等】 • さくらインターネット株式会社 新卒入社 執行役員 技術推進統括担当 兼 CISO 兼 CIO • BBSakura Networks 取締役 • U-22 プログラミング・コンテスト 実行委員長 【経歴】 • ロボカップジュニア (中学・高校) / NHK大学ロボコン • 大阪大学工学部電子情報工学科情報通信工学専攻 • 個人事業主 (大学生時代に開業) • 大阪大学大学院工学研究科中退 【趣味】 旅行/温泉/写真/電子工作/プログラミング/かわいい服
  2. © SAKURA internet Inc. 3 TiKV/TIDB の さくらインターネットでの導⼊ • sakura.io

    (LTEによるIoTプラットフォーム) 2020年より「データストア(V2)」でTiKVを採⽤ 端末 (モジュール) からのデータを蓄積し検索に利⽤ NewSQL TiDBを⽀える分散KVS "TiKV"⼊⾨ / @kamijin_fanta https://blog.kamijin-fanta.info/2022/09/tikv-get-started/ • さくらのクラウドなど ⼀部機能において管理システムにTiDBを採⽤ これまでならMariaDBやPostgreSQLを利⽤していた場⾯に導⼊ 2021年より「エンハンスドデータベース(TiDB)」を提供開始 SaaSサービスや社内システムでも利⽤
  3. © SAKURA internet Inc. 4 TiDBの運⽤経歴 • 2021年4⽉ ⽯狩リージョンに構築 (v5.0.0)

    • 2021年6⽉ v5.1.0 にアップデート • 2021年7⽉ v5.1.1 にアップデート (EDB提供開始) • 2022年1⽉ v5.3.0 にアップデート • 2022年5⽉ v5.4.1 にアップデート • 2022年10⽉ v6.1.1 にアップデート • 2023年3⽉ v6.5.1 にアップデート • 2023年4⽉ 東京リージョンでの提供開始 • 2023年6⽉ v7.1.0 にアップデート • 2023年7⽉ TiFlashノードを構築 (⾃社利⽤⽬的) • 2023年10⽉ v7.1.1 にアップデート • 2023年10⽉ v7.1.2 にアップデート • 2024年1⽉ v7.5.0 にアップデート 🎉 祝 8.0 compatible !
  4. © SAKURA internet Inc. 5 TiDBのメリット (実際に使っている範囲で) • メンテナンス作業が容易 •

    tiup すごい • スケールアウトが可能で容易 • tiup すごい • TiFlashを活⽤しOLTPとHTAPが⼀つのシステムで実現する • いざとなったら⼒技で殴れる • Dashbordが便利 • tiproxyにより、無停⽌アップデートが可能
  5. © SAKURA internet Inc. 7 構築と運⽤の流れ • Terraform + SacloudProvider

    でサーバ等のリソース作成 • Ansibleで基本的なOSのセットアップ • tiup でクラスタの構築やメンテナンス • ⽇常的には tiup のみを利⽤すればよい • tiproxyをtidbの前に挟むことで、 tidbのアップデート時に既存の接続は維持される
  6. © SAKURA internet Inc. 15 公開可能な活⽤事例 • 宅配便取次アプリ (Slackで宅急便が送れるサービス) •

    Antenna-eye (クラウドカメラサービス) • ネットワーク品質計測可視化システム ほとんどがDjangoを使った開発で、django-tidbを利⽤ (※) ⼀部でGolangとentまたはgormを利⽤ ※ https://github.com/pingcap/django-tidb TiDB が 8.0 Compatible になったので無くても動作する
  7. © SAKURA internet Inc. 25 メリットとデメリット メリット 可⽤性がとても⾼い アップデートが頻繁に⾏える スケールする安⼼感がある

    デメリット 台数が多くなるので単純なコストだけで⾒ると⾼く⾒える 分散システムなので複雑に⾒える