[MySQL]INSERT INTO ON DUPLICATE KEY UPDATEのJDBCでのバッチ処理の高速化

と呟いたけど、ちょこちょこっと調べていたら公式のマニュアルにいい感じの記述を見つけたので実験してみて成功したので記録。 続きを読む

カテゴリー: Java, MySQL, プログラミング関連 | コメントする

[Java]CopyOnWriteArrayListのSetを探した(パフォーマンスとか)

CopyOnWriteArraySetなんてあったんですけど、なんかこいつパフォーマンスとか大丈夫か?とか心配になりませんか。ソース見てみると、hashCodeとか実装してあっても見ずに、内部に持ってるCopyOnWriteArrayListへ投げつけて、その中では全部のオブジェクトに対してequalsメソッド呼んで大丈夫なら追加、みたいな雰囲気。

あまり嬉しくないので、プリミティブ型で一意なIDを持つオブジェクトだったのでConcurrentHashMapを使う事にした。こっちに関してはそれほど調べてたりしてないけど問題なさげ。

うーん、ConcurrentSkipListSetとかが使えるんだろうか、日本語の情報があんまり見つからないのでConcurrentHashMapに逃げたけど。

CopyOnWriteArrayListに対応するHashMapがConcurrentHashMapって直感的でなくて暫く悩んだ。

カテゴリー: Java, プログラミング関連 | コメントする

[MySQL]運用中のDBにバックアップしたデータを流し込む(INSERT INTO SELECTの分割)

なんでこんなアクロバティックな事してるんだろう。

バックアップデータのインポートにINSERT INTO SELECT文を使おうと思ったは良いものの、一度にやると本番運用中のDBへのINSERTが滞ってしまう。といった状況からなんとかしたメモ。

(追記)明らかに処理スピードが遅かったため、別の方法を取りました。一週間かかりそうなペースだったものが2時間で終わった。

続きを読む

カテゴリー: サーバ関連, プログラミング関連 | 1件のコメント

[Mysql][Tips]Timestamp型のカラムを年月別にグループ分けしてそれぞれの数を出す

新規ユーザ登録時のTimestamp取ってる癖に年月別の登録者数とかは一切見てないとかってありませんか。ないか。

そんな時にお使いくださいな超ピンポイントSQL紹介。

続きを読む

カテゴリー: MySQL, プログラミング関連 | コメントする

[Mysql][Tips]1回のUPDATEでフラグを折ったり立てたり

自分でもなんで初っ端でこう書けなかったのか疑問なんですが、全部折ってから立ててやろうかーとかダメな事を口走りかけたのでメモ。

ポーリングでしか取れないデータで、いつフラグがポッキリいってるか分からない。カラムごと消し飛ばされてるかもしれないけどそれは考慮しない。 AND あるテーブルからかき集めてきたIDsが含まれてる時だけTRUEにしたい。

続きを読む

カテゴリー: MySQL, プログラミング関連 | コメントする

[Mysql]重いINSERTやUPDATEのサブクエリでSELECTしてるテーブルがロックされて書き込めないのが困る時はテンポラリテーブルを使いましょう

受け継がれた秘伝のソース(IT企業)ネタには「やめろおお」と言ってしまいますが、SQLってサブクエリでSELECTして、GROUP BYの制約で更にサブクエリでWHEREで絞って、絞った物を更にINNER JOINとかしつつUPDATEとかして酷い事になるのってありませんか。設計が悪いのかな。INNER JOIN x2とかはさすがにしませんが。

手元にある457文字のSQL文(もちろん単文)を公開したい気持ちになりますが、そうはいかないのでまともにサンプルソース書いておこうと思います。あとテンポラリテーブルでインデックスとか使いたいんだけど、と検索しても日本語のページが1つ(それも自分のローカルだとうまくいかなかった)しかなかったので、それも含めて書いておきます。
続きを読む

カテゴリー: MySQL, プログラミング関連 | コメントする

iPhoneでドコモメールの送信が出来ない場合の対処法を調べたり

相談されたのだけど、iPhoneからドコモメールを送信しようとすると

「SPモードメールまたはCommuniCaseをご利用のお客様へ

お客様はドコモメールのご利用を開始しているため、現在spモードメールまたはCommuniCaseをご利用いただくことができません。

SPモードメールをご利用のお客様へ —-(以下略)」

などとMailerDaemonさんに怒られるらしい。メールが送れないと聞いて単なる設定ミスかなーと思っていたので、意外と複雑な感じに驚いた。 続きを読む

カテゴリー: 日記的な物 | コメントする

リプライ数チェッカ 20140410アップデート

今回は基本的にはWeb側のユーザビリティの向上関連。

  • 広告の位置の最適化
  • ユーザアイコンなどの位置変更
  • 関連ユーザの欄にフォロー先アカウントを20件以内の範囲でランダムに表示するよう変更
  • Twitterでログイン、ボタンを画像に(センスの欠片もなくてごめんなさい)

関連ユーザでフォロー関係を使う為に、だいぶ裏でリソース使ってますが、恐らく許容範囲。

カテゴリー: サービス関係のお知らせ | タグ: | コメントする

プロセスの終了まで待機するシェルスクリプト

実はシェルスクリプト自体ほとんど書いた経験が無いので、無駄な部分などがあるかもしれません。気になる点などあればツッコんでください。シェルスクリプトの文法、勘が当てはまらなくて厳しい。 続きを読む

カテゴリー: サーバ関連, プログラミング関連 | コメントする

フォント変更

ここを参考にフォントをメイリオに変更。

なんかギザギザしてたので気になった。style.css内をfont-familyで検索、3か所程書き換えたら多分いい感じ。

codeタグはそのままにしたから等幅フォントのままのハズ。出来あいの物いじるの妙に面倒に感じる。

カテゴリー: 日記的な物 | コメントする