私のアプリはspring+hibernate+mysqlを使用しています。
私のテーブルのいくつかは非常に大きくなり、水平分割は関連するパフォーマンスの問題を解決するのに本当に役立ちます。
私は休止状態のシャードを調べましたが、それがMavenリポジトリになく、まだ「ベータ」とラベル付けされているという事実が気に入らなかった。
mysqlパーティショニング機能の使用を検討しており、いくつか質問があります。
mysqlを使用してパーティションを作成した場合、休止状態からのエラーなしで通常どおりアプリを使用し続けることができますか?
どのmysqlパーティションを使用するかをhibernateに明示的に指示できないことを理解しています。しかし、Hibernateフィルターを使用して、どのパーティションを目指すかを「提案」した場合、mysqlはクエリを最適化し、適切なパーティションを使用しますか?
例:
テーブルを1、2、3、4の列タイプでパーティション化するとします。各タイプは異なるパーティションに移動します。
このタイプの列にHibernateフィルターを追加すると、最終的なクエリは次のようになります。
mytableからblablaを選択します。ここでstuffANDtype = 3(休止状態フィルターがtype = 3を追加しました)。
mysqlはこれを取得し、同じように扱いますか
mytable PARTITION(type3)からblablaを選択します。