あーかいぶすハイディフィニション

ここはもう更新しとらんのじゃ

MySQL Cluster をプロダクション運用開始して半年以上一年未満たった感想

おいこのタイトル以上前に見たぞクルルァ!って方、すんません許してくださいなんでもしませんけど。

その後運用続けてなんかデータベース的に問題出た?

出なかった、一度も crashdown しないしそもそも NDBD node 安定稼働しっぱなしだった。やだこれ忘れた頃になんか出てきて死ぬパターン…?!とか戦々恐々してますが、アップデートしないまま 7.2.5 で運用して安定してます。
Changelog ではそれなりに修正しつつ 7.2.10 まで更新されているので、そろそろ入れ替えないとなー、という気はしてきてます。一周年あたりまでにはアップデートしてやりたい。

その後技術的になんか問題でた?

旧字体の一部文字を突っ込むと ?? で返ってくるのナンデ?!みたいな事件が発生しました。要はサロゲートペアの文字ですね、UTF-8 範囲外。割りと Twitter でグチばっか言ってたので前回に引き続きすんませんでした、というレベルなんですが、これはエンコードを UTF8mb4 にすることで解決できることはわかってるので、あとは稼働中のデータベースに対して、どのタイミングで ALTER 発行するか、って感じです。
わりとサービスの運用と喧嘩になりましたけどねー、うーんなんで MySQL はここ、UTF8mb4 なんて無理に拡張したんじゃろ…。なんかで互換性の為云々とか言ってた気がするけど、あまり CJK とか表意文字圏の人が開発に居ないと想像しにくいのかなーやっぱり。
おっと愚痴っぽくなってすいませぬ。

安定してくると変なことしたくなるよね?

MySQL Cluster Replication とかいうことが出来る(特定のテーブルの指定したテーブルだけとかも可能)らしいので、技術検証しながら別の案件で投入が決定しました。しかしこれ、マスタ側のスペックは良いのですが、スレーブ側のスペックが追いついてないので正直クラスタレプリケーションせずに、単一サーバ(ENGINE:InnoDB)でレプリケーションさせた方が良いのでは?という疑問もあります。
前回の末文の、pgpool->postgresql とか MySQL Replication との比較まだやってないんで、ちょうどこの構成が稼働し始める一年目の記事の時にベンチマークとったりして色々書いておきたいな、と思ってます。予定。

一番の敵は平和って本当だったわ

二・三ヶ月位平和だったせいで、その間に結構お作法忘れてて、Start Phase の移行を待たずに MySQL Server たちあげてなんで起動おわらないのー!とか勝手にハマったり、レストアって -m からだっけ?Create Database しないとだめだっけ…?みたいなハマりかたしてました。
(ちなみに Create Database はしないとだめです。せずにメタデータから順番に復元した場合、リストアされてるけど参照できない、みたいな事になり、ログにも Data Usage が増えたと表記されるだけの不思議な状態になります。この状態でも Create Database してやれば問題なくアクセスできるようになるんですけどね。)

なお

この記事を読んで「あれ?こいつ○○の会社のヤツじゃね?」と思った方、それは気のせいです。気のせいです。気のせいです。ちなみにクッソ弱小会社に勤めているので、分かった方は割りとすごいです。おやつカルパスあげよう。