gcpug / dogrun

Apache License 2.0
0 stars 0 forks source link

I want an option to avoid hotspots even if using key like autoincrement #12

Open s-arai-games opened 6 years ago

s-arai-games commented 6 years ago

オートインクリメントのようなkeyを使用してもホットスポットを回避できるオプションがほしい

WHAT

CloudSpannerではオートインクリメントのように単調増加または単調減少するような値をkeyに使用するとホットスポットが発生するが、それを回避するオプション、またはクライアントライブラリによる機能が欲しい

WHY

keyを発行・管理するサービスが外部にあるというユースケースが存在し、そういう場合はたいてい単調増加するkeyであり、Spannerでも同じkeyを(見た目上は)使えることが望ましい。

単調増加するkeyは[A.ビット列逆転する B.暗号化処理する]などを行ったうえでSpannerに保存することでホットスポットの問題を避けることができるので、アプリケーションとしてそのように実装すればいい話ではあるが、できればサービス間で変換処理を行わず同じkeyを使用したい。

RANGEのSQLが使えなくても良いので、このような処理をやってくれて見た目の上では単調増加なkeyが使えるオプション、またはクライアントライブラリの機能が欲しい

sinmetal commented 5 years ago

オートインクリメントを使ったとしても、必ずしもホットスポットが発生するわけじゃないのと、アプリケーションがどのようにクエリを投げるのかが分からないとホットスポットを回避する最善手が分かるわけじゃないので、難しい話ではありますね。

s-arai-games commented 5 years ago

そうですね、この要望は無理言ってる感が否めないので、後回しにして他の質問を優先でお願いします。