Open s-arai-games opened 6 years ago
オートインクリメントのようなkeyを使用してもホットスポットを回避できるオプションがほしい
CloudSpannerではオートインクリメントのように単調増加または単調減少するような値をkeyに使用するとホットスポットが発生するが、それを回避するオプション、またはクライアントライブラリによる機能が欲しい
keyを発行・管理するサービスが外部にあるというユースケースが存在し、そういう場合はたいてい単調増加するkeyであり、Spannerでも同じkeyを(見た目上は)使えることが望ましい。
単調増加するkeyは[A.ビット列逆転する B.暗号化処理する]などを行ったうえでSpannerに保存することでホットスポットの問題を避けることができるので、アプリケーションとしてそのように実装すればいい話ではあるが、できればサービス間で変換処理を行わず同じkeyを使用したい。
RANGEのSQLが使えなくても良いので、このような処理をやってくれて見た目の上では単調増加なkeyが使えるオプション、またはクライアントライブラリの機能が欲しい
オートインクリメントを使ったとしても、必ずしもホットスポットが発生するわけじゃないのと、アプリケーションがどのようにクエリを投げるのかが分からないとホットスポットを回避する最善手が分かるわけじゃないので、難しい話ではありますね。
そうですね、この要望は無理言ってる感が否めないので、後回しにして他の質問を優先でお願いします。
オートインクリメントのようなkeyを使用してもホットスポットを回避できるオプションがほしい
WHAT
CloudSpannerではオートインクリメントのように単調増加または単調減少するような値をkeyに使用するとホットスポットが発生するが、それを回避するオプション、またはクライアントライブラリによる機能が欲しい
WHY
keyを発行・管理するサービスが外部にあるというユースケースが存在し、そういう場合はたいてい単調増加するkeyであり、Spannerでも同じkeyを(見た目上は)使えることが望ましい。
単調増加するkeyは[A.ビット列逆転する B.暗号化処理する]などを行ったうえでSpannerに保存することでホットスポットの問題を避けることができるので、アプリケーションとしてそのように実装すればいい話ではあるが、できればサービス間で変換処理を行わず同じkeyを使用したい。
RANGEのSQLが使えなくても良いので、このような処理をやってくれて見た目の上では単調増加なkeyが使えるオプション、またはクライアントライブラリの機能が欲しい