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
Alibaba CloudのTable Storeでオートインクリメント機能を使ってみた
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
hmatsu47
PRO
May 18, 2019
Technology
570
0
Share
Alibaba CloudのTable Storeでオートインクリメント機能を使ってみた
hmatsu47
PRO
May 18, 2019
More Decks by hmatsu47
See All by hmatsu47
名古屋城とデータセンター
hmatsu47
PRO
0
26
IPv6 に関する話
hmatsu47
PRO
0
18
さいきんの光ファイバーの話
hmatsu47
PRO
0
45
低いほうのレイヤを見てみる話
hmatsu47
PRO
0
21
IPv6 VPC の実装パターンをいくつか
hmatsu47
PRO
0
40
光ファイバーと IPv6 絡みの話
hmatsu47
PRO
0
54
AWS で試して学ぶ IPv6
hmatsu47
PRO
0
48
今年の MySQL/HeatWave ネタ登壇振り返り
hmatsu47
PRO
0
45
今年の DB ネタ登壇振り返り
hmatsu47
PRO
0
40
Other Decks in Technology
See All in Technology
Spring AI × MCP 入門〜AIエージェントへのツール公開、境界設計から始める最小構成 〜
yuyamiyamoto
0
210
「コーディング」しない人のための Claude Code 入門 ChatGPT の次の一歩 — 業務に組み込む 育成・共有・自動化
rfdnxbro
2
1.1k
実装は速くなった、レビューはどうする? ― 自身のレビューをAIで再現させるサーヴァントエンジニアリングのすゝめ / Implementation got faster. So what about reviews? — An invitation to Servant Engineering: Recreating your own code reviews with AI
nrslib
6
3k
AI活用を推進するために ファインディが下した、一つの小さな決断
starfish719
0
220
20260528_生成AIを専属DSに_Howの次にすべきことを考える
doradora09
PRO
0
280
TROCCOで始めるクラウドコストを民主化するためのFinOps
tk3fftk
3
560
long-running-tasks
cipepser
3
460
AIを「創る」と「使う」の循環 — HRテックが実践するリアルなAI組織実装
taketo957
0
1k
AI Adaptable なテストを整える工夫 / Ways to Make Your Tests AI-Adaptable
bitkey
PRO
2
200
Javaコミュニティをもっと楽しむための9箇条
takasyou
0
1.2k
GoとSIMDとWasmの今。
askua
3
480
Javaで学ぶSOLID原則
negima
1
270
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.7k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
160
Become a Pro
speakerdeck
PRO
31
6k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
The Curious Case for Waylosing
cassininazir
1
370
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
65
55k
The Pragmatic Product Professional
lauravandoore
37
7.3k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
190
Abbi's Birthday
coloredviolet
2
7.9k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.5k
Transcript
Alibaba CloudのTable Storeで オートインクリメント機能を使ってみた (第27回 中国地方DB勉強会 in 島根 - 松江
2019/05/18 LT) hmatsu47(松久 裕保)
自己紹介と宣伝? • 名古屋でWebサービス(on AWS)のお守りをしてます • 最近やっとMyNA(MySQLユーザ会)会員になりました – あまりに入会しなかったのでMyNA副代表坂井さんに「みなし会員」 の称号をいただいてしまいました… •
「MySQL 8.0の薄い本」書いたので持ってきました – MySQL 8.0の新機能・変更点の情報リンクと実行例をまとめたもの – タダなので持ってってください(そのまま持ち帰るの重い…)
今日のお題 • Alibaba Cloudには「Table Store」というNoSQLサービスが あります • AWSのDynamoDBをパk参考に作られたサービスのような 感じです –
今日の吉田さんのお話で、皆さんDynamoDBのことは完全に理解 しましたね?
Table StoreがDynamoDBと似ている点 • プライマリキーの構成 – パーティションキー列 – ソートキー(相当の)列(オプション) • 属性列はスキーマレス
– 行ごとに変えることも可能 • グローバルセカンダリインデックスをサポート – 日本語マニュアルには表記がない…
Table StoreがDynamoDBと違う点(1/2) • 単一AZ内でデータを冗長化している(らしい) • 「容量型」と「高パフォーマンス型」のインスタンスがある – DynamoDBのオンデマンドキャパシティモードとプロビジョニング済 みキャパシティモードの関係と似てるけど、目的がちょっと違う? •
DynamoDBでいうところの「強い整合性」のみ? – 採用技術は違うかもしれないけれど、書き込みを完了したデータを 読み出すときの一貫性は保たれる仕様(らしい)
Table StoreがDynamoDBと違う点(2/2) • ソートキー(相当)列は最大3つまで(らしい) • ローカルセカンダリインデックスはない(らしい) • でも「サーチインデックス」というのがある – 全文検索、あいまい検索、ソート、地理検索などをサポート(らしい)
• プライマリキー列(パーティションキー列以外のうちの1つ)に オートインクリメント機能が使える – なんだかMySQLっぽい
というわけで • Table Storeの中のMySQLっぽい機能「オートインクリメント」 を試してみました – 今のところJava-SDKしか対応していないようなので、Javaで – 「MySQL 8.0の薄い本」GitHubリポジトリのアクセス数転記用
• Alibaba Cloudの「Function Compute」の関数として実装 – AWSでいうところのLambda(サーバレス) • https://github.com/hmatsu47/alibaba_table_store_sample
実行してみました
おや?
想像してたのと違うぞ? • Wikipediaより
間違いではなさそうです • コンピュータ用語ではなくて一般用語でした • MySQL InnoDB ClusterだってAUTO_INCREMENTは+1 じゃありませんし • たぶん分散
DB で+1を守ろうとすると、かなり辛いです
ただし • 64ビット整数で勢いよく増加していきます – うっかりするとオーバーフローしそうです • パーティションキー列を固定値にしないとオートインクリメント の意味がないのですが、性能面ではかなり制約を受けます – 今回の例は無理やり入れてるので固定にしてませんが
• 行数が少ないマスタテーブル向けですね
以上です ありがとうございました