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
hmatsu47
PRO
May 18, 2019
Technology
0
550
Alibaba CloudのTable Storeでオートインクリメント機能を使ってみた
hmatsu47
PRO
May 18, 2019
Tweet
Share
More Decks by hmatsu47
See All by hmatsu47
IPv6 VPC の実装パターンをいくつか
hmatsu47
PRO
0
20
光ファイバーと IPv6 絡みの話
hmatsu47
PRO
0
25
AWS で試して学ぶ IPv6
hmatsu47
PRO
0
21
今年の MySQL/HeatWave ネタ登壇振り返り
hmatsu47
PRO
0
21
今年の DB ネタ登壇振り返り
hmatsu47
PRO
0
17
RDS/Aurora アップデート 2025
hmatsu47
PRO
0
30
YAPC::Fukuoka 2025 現地ハイブリッド参加の旅
hmatsu47
PRO
0
13
今年の FESTA で初当日スタッフ+登壇してきました
hmatsu47
PRO
0
22
攻略!Aurora DSQL の OCC(楽観的同時実行制御)
hmatsu47
PRO
0
14
Other Decks in Technology
See All in Technology
SRE Enabling戦記 - 急成長する組織にSREを浸透させる戦いの歴史
markie1009
0
170
ランサムウェア対策としてのpnpm導入のススメ
ishikawa_satoru
0
230
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
Greatest Disaster Hits in Web Performance
guaca
0
300
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
590
[CV勉強会@関東 World Model 読み会] Orbis: Overcoming Challenges of Long-Horizon Prediction in Driving World Models (Mousakhan+, NeurIPS 2025)
abemii
0
150
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
260
AIが実装する時代、人間は仕様と検証を設計する
gotalab555
1
650
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.6k
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
850
顧客との商談議事録をみんなで読んで顧客解像度を上げよう
shibayu36
0
350
22nd ACRi Webinar - 1Finity Tamura-san's slide
nao_sumikawa
0
110
Featured
See All Featured
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
280
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.6k
Practical Orchestrator
shlominoach
191
11k
Producing Creativity
orderedlist
PRO
348
40k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.1k
Leo the Paperboy
mayatellez
4
1.4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Technical Leadership for Architectural Decision Making
baasie
2
250
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ビット整数で勢いよく増加していきます – うっかりするとオーバーフローしそうです • パーティションキー列を固定値にしないとオートインクリメント の意味がないのですが、性能面ではかなり制約を受けます – 今回の例は無理やり入れてるので固定にしてませんが
• 行数が少ないマスタテーブル向けですね
以上です ありがとうございました