Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
クラウドネイティブなデータベースTiDB の魅力@db tech showcase 2021...
Search
chibiegg
November 17, 2021
Technology
510
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
クラウドネイティブなデータベース TiDB の魅力@db tech showcase 2021 / PingCAP TiDB with SAKURA internet
chibiegg
November 17, 2021
More Decks by chibiegg
See All by chibiegg
ブラックボックス観測に基づくAI支援のプロトコルのリバースエンジニアリングと再現~AIを用いたリバースエンジニアリング~ @ SECCON 14 電脳会議 / Reverse Engineering and Reproduction of an AI-Assisted Protocol Based on Black-Box Observation @ SECCON 14 DENNO-KAIGI
chibiegg
1
220
ゼロトラストを前提に、もっと便利に、もっと安全に @ 2026-03-03 ITmedia Security Week 2026 冬 / Designing for Zero Trust: Enabling Both Usability and Security
chibiegg
0
140
JANOG57 Meeting in Osaka のご紹介 @さくらの聖夜 2025 / Introduction to JANOG57 Meeting in Osaka
chibiegg
0
86
コンフィデンシャルコンピューティングは本当に機密なのか?@ 2025-08-23 LOCAL Developer Day ’25 Security with 在札幌米国総領事館 / Confidential Computing Truly Confidential? @ 2025-08-23 LOCAL Developer Day ’25 Security with the U.S. Consulate General in Sapporo
chibiegg
0
75
パブリッククラウドにおける機密コンピューティング@さくらのTech Day 2024-11-12 / Confidential Computing in Public Cloud
chibiegg
0
490
tiupによるTiDBの構築 @ TiUG Meetup #3 Osaka / Building TiDB with TiUP
chibiegg
1
340
Stable Diffusionの使い方と追加学習によるLoRAの作成~GPUコンテナサービス “高火力 DOK” の活用~ @ 2024-06-29 OSC2024 Hokkaido / Stable Diffusion and Creating LoRA with Additional Training ~ with 'Koukaryoku DOK' ~
chibiegg
1
2.8k
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
3
2k
3年近くTiDBを使ってきた話 @ TiUG Kick Off #0 / My Journey with TiDB: Nearly Three Years On @ TiDB User Group Kick Off #0
chibiegg
4
1.5k
Other Decks in Technology
See All in Technology
Code4Lib JAPANカンファレンス2026 開会挨拶 / Code4Lib JAPAN Conference 2026: Opening Remarks
ykiyota
0
230
PfEingのアプローチで働こう
rindrics
0
200
コスト最適化の「めんどくさい」を AWS FinOps Agent でチョット楽にする
classmethod_kaz
0
280
プロダクトエンジニアに必要な「いい感じ」に作る能力 〜たくさん作れる時代に、どこまで作るかの決め方〜
jnishime_dresscode
2
1.4k
作り直せるコードは迅速に 作り直せないDBは慎重に - AI時代のプロダクトエンジニアが「判断の不可逆性」で開発速度を変える話
kinosuke01
0
280
Podは生きているのにGoだけが落ちる:GOGCとGOMEMLIMITで追うInvisible OOM Killの謎
tkc66buzz
1
210
推論の観測、できていますか? 〜 Google Cloud Gemini Enterprise Agent Platformで 3つの Gemini モデルを実測して踏んだ、評価の罠 〜
shukob
PRO
0
180
Screen Lens - 今見てる画面を翻訳する
komagata
0
130
10分で知る最近のOmarchy
komagata
0
140
enechainの内製セルフサービスプラットフォーム
hiyosi
0
140
omasushiというライブラリを作った
polidog
PRO
0
150
SQL文一行も書けない人事がCortexもろもろを使って人事業務を楽にしてみる
ponponmikankan
1
150
Featured
See All Featured
Ruling the World: When Life Gets Gamed
codingconduct
0
330
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
200
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.4k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Mobile First: as difficult as doing things right
swwweet
225
10k
The Cult of Friendly URLs
andyhume
79
7k
Unsuck your backbone
ammeep
672
58k
Scaling GitHub
holman
464
140k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.8k
Transcript
© SAKURA internet Inc. クラウドネイティブなデータベース TiDB の魅⼒ 2021-11-17 @ db
tech showcase 2021 さくらインターネット株式会社 技術推進統括担当執⾏役員 兼 CISO 兼 クラウドネイティブ推進本部本部⻑ 江草 陽太
2 ⾃⼰紹介 @chibiegg 江草 陽太 【所属】 • さくらインターネット株式会社 執⾏役員 技術推進統括担当
兼 CISO • IzumoBASE株式会社 取締役 【経歴】 • ロボカップジュニア (中学・⾼校) / NHK⼤学ロボコン • ⼤阪⼤学⼯学部電⼦情報⼯学科情報通信⼯学専攻 • 個⼈事業主 (⼤学⽣時代に開業) • ⼤阪⼤学⼤学院⼯学研究科中退 【趣味】 旅⾏/温泉/写真/電⼦⼯作/プログラミング/かわいい服
© SAKURA internet Inc. 分散データベース / NewSQL
© SAKURA internet Inc. SQLをインターフェースとし 強い整合性を持ち トランザクションをサポートする 分散データベース (RDBMS) である
NewSQLとは
© SAKURA internet Inc. 独自のインターフェースを持ち 簡単で 高いパフォーマンスを提供する 分散データベース (not RDBMS)
である トランザクションに対応せず、ゆるい整合性 (結果整合性) を持つ NoSQL (Not Only SQL)
© SAKURA internet Inc. 今まで通りSQLを使いつつ NoSQLのようなスケーラビリティや利便性を享受したい || NewSQL それでもSQL (RDBMS)
が使いたい
© SAKURA internet Inc. • Spanner (Google、プロプライエタリ、独自) • CockroachDB (CockroachLabs、OSS
、PostgreSQL互換) • TiDB (PingCAP、OSS、MySQL互換) • YugaByteDB (Yugabyte、OSS、PostgreSQL互換) NewSQLの例
© SAKURA internet Inc. TiDBの仕組み
© SAKURA internet Inc. どのように分散RDBMSが動作するか 簡単にご紹介します
© SAKURA internet Inc. TiDBのコンポーネント https://docs.pingcap.com/tidb/stable/tidb-architecture から改変 3要素が基本 • PD
(Placement Driver) • クラスタの頭脳 • データ配置の決定 • トランザクションの管理 etc. • TiDB (SQL Layer) • SQLを解釈し処理を⾏う • TiKV (Storage Layer) • レコードやインデックスを Key-Valueとして保存する
© SAKURA internet Inc. テーブルとKey-Valueの関係 https://docs.pingcap.com/tidb/stable/tidb-computing • データベースやテーブルの定義はKey-ValueとしてTiKVに格納されます • テーブル内の各行は一つのKey-ValueとしてTiKVに格納されます
• t{TableID}_r{RowID} を利⽤する • t10_r1, t10_r2, t10_r3 のようなキー名が利⽤されます • Unique Indexは一つのKey-ValueとしてTiKVに格納されます • t{TableID}_i{IndexID}_indexedColumnsValue を利⽤する • t10_i1_indexedColumnsValue のようなキーに 値として RowID が格納されます • 他のIndexは Key として TiKVに格納されます • t{TableID}_i{IndexID}_{Value}_{RowID} を利⽤する • t10_i1_10_1, t10_i1_20_2, t10_i1_30_3 など
© SAKURA internet Inc. TiFlashによる分析 https://docs.pingcap.com/tidb/stable/tiflash-overview 分析に適した TiFlash に保存を行い OLAP
(オンライン分析処理) にも活用 TiKVからTiFlashへ非同期にレプリケーションされ 参照時には自動的に適切なストレージが選択されます
© SAKURA internet Inc. ⼀般的なRDBMSとの違い (⼀部) 旧来のRDBMS TiDB レイテンシ ⼩さい
⼤きい 処理できるクエリ数 スペックによって固定 ノードを増やすことで増減可能 容量 ローカルディスクによって固定 ノードを増やすことで増減可能 台数 2台で冗⻑構成が動く 最低でも8台 https://docs.pingcap.com/tidb/stable/hardware-and-software-requirements
© SAKURA internet Inc. • メンテナンス作業が容易 • ノード障害時のサービス影響が小さい • 容量やパフォーマンスの増減がスケールアウトによって可能
TiDBのメリット≒分散システムのメリット
© SAKURA internet Inc. さくらインターネットの紹介
© SAKURA internet Inc. 1 会社名 さくらインターネット株式会社 (SAKURA internet Inc.)
創業/設⽴ 1996年12⽉23⽇/1999年8⽉17⽇ 上場市場 東証⼀部(証券コード:3778) 代表者 代表取締役社⻑ ⽥中 邦裕(Kunihiro Tanaka) 所在地 ▪本社 ⼤阪府⼤阪市北区梅⽥1-12-12 東京建物梅⽥ビル11階 ▪東京⽀社 東京都新宿区⻄新宿7-20-1 住友不動産⻄新宿ビル 32F ▪福岡オフィス ▪⽯狩データセンター 事業内容 インターネットへの接続サービスの提供 インターネットでのサーバの設置・管理 インターネットを利⽤した情報提供サービス など グループ会社 アイティーエム株式会社 株式会社S2i 櫻花移動電信有限公司 ゲヒルン株式会社 ビットスター株式会社 プラナスソリューションズ株式会社 IzumoBASE株式会社 BBSakura Networks株式会社 会社概要
© SAKURA internet Inc. 「やりたいこと」を「できる」に変える さくらインターネットの企業理念 “インターネット”とは⼈々にチャンスをもたらし 創造性豊かな世界を作る⽂化です。 私たちは“インターネット”で熱量を持って挑戦する 全ての⼈の「やりたいこと」を「できる」に変えます。
17
© SAKURA internet Inc. お客様からの情報(データ/プログラム)をお預かりし、イン ターネットを介してお客様のユーザまで届けています。 当社の役割 3 お預かりする⽅法として、さくらインターネットでは、⼤き く2種類の⽅法ががあります。
© SAKURA internet Inc. オフィス、データセンター 4 ⽯狩データセンター 東京⽀社 東新宿データセンター ⻄新宿データセンター
代官⼭データセンター 本社 堂島データセンター 福岡オフィス
© SAKURA internet Inc. 当社のサービス 5 さくらのクラウド 初期費⽤無料、トラフィック課⾦ なしのクラウドサーバー。 最適な環境をすぐに作成できます。
さくらの専⽤サーバ PCle Flashストレージも選べる物 理サーバー。 オンプレミスの移⾏、ウェブシス テムの最適化におすすめです。 ⾼⽕⼒コンピューティング 機械学習、データ解析、ハイパワー マシンを必要とする全ての⽤途に。 GPU搭載、妥協のない最⾼性能を提 供します。 データセンター(ハウジング) ⽇本最⼤規模の⼤容量・⾼速通信回 線を確保。⾼セキュリティ、堅牢な 設備環境を備えた⾃社運営データセ ンター。 ImageFlux 1枚の画像をもとに画像の拡⼤縮⼩、 切り抜き、合成などによりデバイス に最適化された画像を簡単に⽣成し、 ⾼速かつ⾼品質で配信します。 Tellus Tellusは⽇本発のオープン&フリーな データプラットフォームです。衛⽣ から取得できる情報含め、世界中あ りとあらゆるデータを集積していま す
© SAKURA internet Inc. さくらインターネットのお客様 ◆インターネットサービス提供者 ・コミュニケーションサービス ・動画配信サービス ◆ゲーム事業者 ・スマホゲーム、PCゲーム
・対戦ゲーム ・データ配信 ◆⼀般企業 ・企業Webサイト、メールシステム ・業務系システム ◆個⼈ ・ブログ ・各サービスのエンドユーザ 21
© SAKURA internet Inc. DX時代にめざす当社グループの役割 22 さくらインターネット 2021年3⽉期期末決算説明会資料より
© SAKURA internet Inc. さくらインターネットでのTiDBの活⽤
© SAKURA internet Inc. • sakura.io (LTEによるIoTプラットフォーム) • 「データストア(V2)」でTiKVを採⽤ (2018年ごろから)
• 端末 (モジュール) からのデータを蓄積・検索に利⽤ • さくらのクラウド (Labプロダクト) • 開発中の⼀部機能において管理システムにTiDBを採⽤ • これまでならMariaDBやPostgreSQLを利⽤していた場⾯に導⼊ さくらインターネットでの導⼊
© SAKURA internet Inc. • メンテナンス作業が容易 • ノード障害時のサービス影響が小さい • などなど…だが
「TiDBがRDBMSとしてよくできている」 TiDBのメリット≒分散システムのメリット
© SAKURA internet Inc. さくらのクラウド エンハンスドデータベース (TiDB)
© SAKURA internet Inc. 1. 「さくらのクラウド」にログイン 2. 作成したいデータベース名とパスワードを入力 3. 即時に利用可能
⾃分でクラスタを作らなくても 利便性を感じて欲しい
© SAKURA internet Inc. データベースの作成
© SAKURA internet Inc. 情報の確認
© SAKURA internet Inc. 接続 SSL対応! --ssl-mode=VERIFY_IDENTITY も使えます
© SAKURA internet Inc. エンハンスドDB のメリット • すぐに使える • 5秒で作れる
• 容量を気にせず利用できる • 使っている容量に応じて課⾦される • 最初から⼤きなディスクを⽤意しなくて良い • スペックを意識せずに利用できる • 同時接続数を後から増減できる • アップグレードやノード障害を意識しなくて良い • コネクションが切れてもすぐに再接続ができる
© SAKURA internet Inc. 私も使ってます
© SAKURA internet Inc. • Golang + go-sql-driver/mysql + gorm
で実装 • Slack内のユーザー間で立て替えの管理を支援するBot Slack BotのDBとして
© SAKURA internet Inc. • Python + Django で実装 •
ウェブフレームワークのORMをそのまま利用できる ひなたん写真館 「フィルムデジタル化サービス」 https://service.hinatan.net/ ウェブアプリケーションのDBとして
© SAKURA internet Inc. インターネットサービスのDBとして ご活⽤ください