このページを共有


1月のカレンダー



1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

カテゴリ一覧

ただの日記(936)
原付生活(3)
子育て日記(11)
PC関連(11)
もろもろ日記(911)

競馬+POG(1668)
当たらない予想と反省会(708)
POGネタ(58)
競馬について考える(19)
競馬もろもろ(224)
ダービーウィーク!(14)
2011年競馬場訪問記(27)
2012年競馬場訪問記(53)
2013年競馬場訪問記(62)
2014年競馬場訪問記(40)
2015年競馬場訪問記(43)
2016年競馬場訪問記(25)
2017年競馬場訪問記(36)
2018年競馬場訪問記(37)
2019年競馬場訪問記(34)
2020年競馬場訪問記(24)
2021年競馬場訪問記(37)
2022年競馬場訪問記(52)
2023年競馬場訪問記(70)
2024年競馬場訪問記(71)
2025年競馬場訪問記(26)
地方競馬馬主(5)
ひとくち馬主(3)

ホームページ製作(362)
PHPの備忘録(14)
CSSの備忘録(5)
JavaScriptの備忘録(2)
ホームページもろもろ(289)
Flashの備忘録(12)
管理人の備忘録(21)
スマフォ用サイト作成(19)

自宅サーバ(367)
FreeBSD(17)
Apache(4)
PHP(5)
MySQL(18)
サーバもろもろ(149)
障害連絡(133)
リニューアルプロジェクト 2011-2012(41)

お仕事(48)
お仕事(48)

旅の記録・水曜どうでしょう関連(43)
水曜どうでしょう(11)
2009年四国お遍路(6)
2009年アンコールワット(5)
2010年ベトナム(3)
2010年いっそ九州(5)
2010年北海道179市町村(5)
2011年春の一人旅(2)
2011年四国お遍路(6)


先月までのネタ

2025年
2025年6月(7)
2025年5月(3)
2025年4月(3)
2025年3月(3)
2025年2月(11)
2025年1月(7)

2024年
2024年12月(11)
2024年11月(7)
2024年10月(10)
2024年9月(6)
2024年8月(6)
2024年7月(7)
2024年6月(7)
2024年5月(5)
2024年4月(5)
2024年3月(7)
2024年2月(8)
2024年1月(13)

2023年
2023年12月(11)
2023年11月(8)
2023年10月(10)
2023年9月(7)
2023年8月(9)
2023年7月(10)
2023年6月(6)
2023年5月(10)
2023年4月(5)
2023年3月(4)
2023年2月(6)
2023年1月(6)

2022年
2022年12月(9)
2022年11月(8)
2022年10月(5)
2022年9月(5)
2022年8月(2)
2022年7月(6)
2022年6月(9)
2022年5月(3)
2022年4月(3)
2022年3月(4)
2022年2月(7)
2022年1月(5)

2021年
2021年12月(8)
2021年11月(9)
2021年10月(4)
2021年9月(3)
2021年8月(2)
2021年7月(6)
2021年6月(12)
2021年5月(2)
2021年4月(8)
2021年3月(2)
2021年2月(7)
2021年1月(2)

2020年
2020年12月(8)
2020年11月(3)
2020年10月(4)
2020年9月(1)
2020年8月(2)
2020年7月(7)
2020年6月(6)
2020年5月(9)
2020年4月(11)
2020年3月(8)
2020年2月(5)
2020年1月(9)

2019年
2019年12月(4)
2019年11月(5)
2019年10月(7)
2019年9月(2)
2019年8月(2)
2019年7月(8)
2019年6月(2)
2019年5月(3)
2019年4月(2)
2019年3月(4)
2019年2月(3)
2019年1月(1)

2018年
2018年12月(8)
2018年11月(5)
2018年10月(10)
2018年9月(6)
2018年8月(1)
2018年7月(7)
2018年6月(5)
2018年5月(7)
2018年4月(19)
2018年3月(3)
2018年2月(3)
2018年1月(11)

2017年
2017年12月(14)
2017年11月(11)
2017年10月(18)
2017年9月(18)
2017年8月(21)
2017年7月(29)
2017年6月(26)
2017年5月(23)
2017年4月(18)
2017年3月(11)
2017年2月(11)
2017年1月(16)

2016年
2016年12月(25)
2016年11月(24)
2016年10月(30)
2016年9月(15)
2016年8月(16)
2016年7月(15)
2016年6月(18)
2016年5月(30)
2016年4月(28)
2016年3月(29)
2016年2月(26)
2016年1月(32)

2015年
2015年12月(30)
2015年11月(29)
2015年10月(30)
2015年9月(27)
2015年8月(28)
2015年7月(28)
2015年6月(28)
2015年5月(29)
2015年4月(30)
2015年3月(28)
2015年2月(26)
2015年1月(29)

2014年
2014年12月(31)
2014年11月(28)
2014年10月(31)
2014年9月(29)
2014年8月(29)
2014年7月(31)
2014年6月(31)
2014年5月(30)
2014年4月(30)
2014年3月(28)
2014年2月(27)
2014年1月(31)

2013年
2013年12月(29)
2013年11月(27)
2013年10月(29)
2013年9月(27)
2013年8月(28)
2013年7月(28)
2013年6月(29)
2013年5月(29)
2013年4月(30)
2013年3月(26)
2013年2月(24)
2013年1月(29)

2012年
2012年12月(28)
2012年11月(27)
2012年10月(28)
2012年9月(30)
2012年8月(31)
2012年7月(33)
2012年6月(32)
2012年5月(33)
2012年4月(35)
2012年3月(30)
2012年2月(27)
2012年1月(31)

2011年
2011年12月(25)
2011年11月(25)
2011年10月(28)
2011年9月(28)
2011年8月(28)
2011年7月(28)
2011年6月(27)
2011年5月(26)
2011年4月(16)
2011年3月(9)
2011年2月(11)
2011年1月(9)

2010年
2010年12月(12)
2010年11月(11)
2010年10月(8)
2010年9月(13)
2010年8月(10)
2010年7月(20)
2010年6月(6)
2010年5月(9)
2010年4月(2)
2010年3月(3)
2010年2月(5)
2010年1月(8)

2009年
2009年12月(9)
2009年11月(2)
2009年10月(4)
2009年9月(3)
2009年8月(1)
2009年7月(9)
2009年6月(3)
2009年5月(14)
2009年4月(10)
2009年3月(11)
2009年2月(9)
2009年1月(10)

2008年
2008年12月(1)
2008年11月(1)
2008年10月(1)
2008年9月(5)
2008年8月(1)
2008年7月(1)
2008年6月(2)
2008年5月(1)
2008年4月(1)
2008年3月(2)
2008年2月(7)
2008年1月(7)

2007年
2007年12月(11)
2007年11月(7)
2007年10月(8)
2007年9月(12)
2007年8月(11)
2007年7月(5)
2007年6月(16)
2007年5月(8)
2007年4月(2)
2007年3月(14)
2007年2月(2)
2007年1月(8)

2006年
2006年12月(4)
2006年11月(6)
2006年10月(7)
2006年9月(10)
2006年8月(9)
2006年7月(20)
2006年6月(13)
2006年5月(3)

2005年
2005年9月(13)
2005年8月(13)
2005年7月(18)
2005年6月(24)
2005年5月(26)
2005年4月(26)
2005年3月(27)
2005年2月(22)
2005年1月(26)

2004年
2004年12月(29)
2004年11月(29)
2004年10月(26)
2004年9月(23)
2004年8月(12)


最近よく読まれてるネタ



今日は(共有)所有馬キエティスム の応援に、夜勤明けで大井競馬場 へ行ってきました。
(2025年6月13日のネタ:78回)

Excel VBAで「SPAT4自動投票システム」を作ってみました。
(2020年7月19日のネタ:73回)

地方競馬馬主 は全国の競馬場で馬主席 を使える?使えない?のまとめ。
(2023年12月3日のネタ:56回)

今年最初の2歳重賞・栄冠賞 の観戦に、門別競馬場 へ行ってきました。(14回目の栄冠賞観戦)
(2025年6月24日のネタ:55回)

NHKマイルカップ の観戦に、3週連続の東京競馬場 へ行ってきました。
(2024年5月5日のネタ:55回)

競馬場の「音」にまつわる話。
(2015年12月17日のネタ:35回)

とっても残念なクイーン賞。
(2013年12月4日のネタ:35回)

今年最初の北海道遠征!今日はばんえい十勝 ・帯広競馬場 へ行ってきました。
(2025年6月23日のネタ:30回)

昨日は船橋競馬場 へ行ってきました。(ほぼ飲み会。)
(2025年6月7日のネタ:29回)

今日は安田記念 の観戦に、東京競馬場 へ行ってきました。
(2025年6月8日のネタ:25回)



最近のコメント



今日は改修工事真っ只中の #京都競馬場 (パークウインズ京都競馬場)へ行ってきました。(チョネ)

本日は笠松競馬場へ行ってきました。(あいべ)

管理人の今年の目標が一つ増えました…。(あああ)

まあそんなに書くことはありませんが…。(momo)

【管理人からご挨拶】 『The Sunday Breeze』は5月25日に開設19周年を迎えます。(アオヤギ)

4月からスタートする「Sunday Breeze POG!」の一部ルール追加について。(アオヤギ)

昨日「Sunday Breeze賞」の観戦に帯広競馬場へ行ってきました。(白イチゴ)

本日5月25日、「The Sunday Breeze」は18回目の誕生日を迎えました。(アオヤギ)

【「G1予想大会」プレリリース終了】皆様のご協力、本当にありがとうございました。(アオヤギ)

【再度お知らせとお願い】今週からの「G1予想大会」、新機能プレリリースを公開中です。(白イチゴ)



ネタの検索



管理人の競馬観戦記録


(2025年)

2011年以降の競馬観戦インデックス

JRA新潟競馬場
5月18日

JRA東京競馬場
2月16日 (共同通信杯)
2月23日 (フェブラリーS)
5月11日 (NHKマイルC)
6月8日 (安田記念)

JRA中山競馬場
1月5日 (中山金杯)
1月19日 (京成杯)

JRA京都競馬場
5月31日

JRA阪神競馬場
4月13日 (桜花賞)

JRA小倉競馬場
1月26日

帯広競馬場
6月23日

水沢競馬場
3月11日

船橋競馬場
1月22日 (ブルーバードC)
2月14日
6月6日

大井競馬場
4月30日
5月23日
6月13日

笠松競馬場
2月7日

園田競馬場
5月30日

姫路競馬場
2月6日

高知競馬場
2月5日

佐賀競馬場
1月25日
3月6日
3月30日

門別競馬場
6月24日 (栄冠賞)


管理人の競馬家計簿


(最近14日分)

2025年6月15日阪神
10勝  回収率:0.0%

2025年6月15日高知
10勝  回収率:0.0%

2025年6月17日川崎
11勝  回収率:140.0%

2025年6月18日川崎
10勝  回収率:0.0%

2025年6月23日帯広
62勝  回収率:60.1%

2025年6月24日門別
20勝  回収率:0.0%

2025年6月25日浦和
10勝  回収率:0.0%

2025年6月26日門別
10勝  回収率:0.0%

2025年6月27日園田
21勝  回収率:40.0%

2025年6月28日函館
31勝  回収率:61.8%

2025年6月28日福島
40勝  回収率:0.0%

2025年6月28日小倉
41勝  回収率:78.8%

2025年合計
713220
勝率:30.9%  回収率:62.0%
(万馬券:2本的中)

2024年合計
1394381
勝率:27.3% 回収率:70.5%
(万馬券:12本的中)

2023年合計
1772537
勝率:30.3% 回収率:71.2%
(万馬券:11本的中)

2022年合計
2097563
勝率:26.8% 回収率:66.4%
(万馬券:29本的中)

2021年合計
2147527
勝率:24.5% 回収率:67.8%
(万馬券:24本的中)


管理人のつぶやき


(皆様のフォローをお願いします。)

一連のデータベース障害まとめ。(ちょっと技術的なことを。)

ここ数日、ご覧の皆さまには
本当にご迷惑をおかけしました。
申し訳ありません。

今日は障害の原因など
技術的なことも含めてまとめて書いておきます。

-----

まずは1つ目。
データベースの処理遅延について。

このサイトではデータベースアプリケーションに
「MySQL」を導入しています。

これにはいくつかのエンジンがありまして
高速処理が売りのMyISAMというエンジン
安定性が売りのInnoDBというエンジンがまあ主な2つ。

これまでずっとこのサイトでは
MyISAMというエンジンを使用して、まあそこそこなスピードで処理ができていました。

んで先日より、更新系と参照系で使い分ける
レプリケーションという機能を使用して
プログラムでのデータ登録を更新系データベースに
MySQLの内部処理で非同期で参照系データベースと一致させ
Webからの参照を参照系データベースで行うという処理に変えました。
(更新系データベースは今までのサーバ(ゲストOS)上に、
参照系データベースは今までのサーバが動いているホストOS上に配置)

これは今までのサーバの負荷を軽減させることが目的です。


そしたら先日…(月曜日だったかな?)
更新系と参照系の同期の際に、なぜか極端に時間がかかってしまい
参照系データベースをロックしてしまうという現象が発生。

つまり
更新系データベースがデータを更新するために参照系データベースを握ってしまい、
他から参照系データベースを使うことが一切できなくなってしまうという。
いわゆる「排他制御」ってやつです。

これ、MySQLのMyISAMエンジンの一つの欠点だと思うんですが
データ更新の際にはテーブルロック(対象のデータが入っている表を全部ロック)
してしまうんですね。

1頭の結果を更新するのに
すべての結果データ(約680万データくらいあります)のすべてをロックしてしまうため
更新処理に何らかの不具合があって時間がかかってしまうと
すべてのデータが表示できなくなってしまいます。

こら参った…と。

そこで
InnoDBというエンジンだと
テーブルロックではなく行ロック(更新対象の1データのみをロック)する構造なため
ロックによる遅延がなくなるのではないかと。
ということでエンジンをMyISAMからInnoDBへ変えて、
データもすべて変換して…ってのが火曜日の話。


んで昨日。冒頭に書いた通り、
高速だけどテーブルロック仕様のMyISAMから
安定していて行ロック使用のInnoDBに変えて
…当然高速ではなくなります。

単純なデータ取得処理でも数十秒かかるようになってしまい
結局はこれによってデータベース全体の負荷が上がり
ページの読み込みが遅いとか、ページが全く表示されないとか
様々な不具合が発生しました。
(ページが全く表示されないのはWebサーバの設定(同時アクセス数上限を超えたため))

単純なWebからの参照だけでなく
更新系データベースからの同期処理にも遅延が発生し…
ほぼ丸1日のデータ更新が遅れました。


本日夜勤明けで
データベースをInnoDBエンジンからMyISAMエンジンへ戻しました。

ですがこれでは根本的な解決策にはなってません。
(結局テーブルロックされる状態にもどってしまったので)

一応処理スピードは以前の状態に戻ったものの
何らかの原因でロックされてしまった場合に、きっとまた一気に高負荷になる可能性があります。


今後の方針としては
一応InnoDBを使うことを前提として
データベースそのものの設定の見直し(メモリの使い方とかファイルの設定など)
そしてSQL(データベースからデータを取得する言語)の書き方を変えるなどして
処理を少しでも高速に動くように直していくしかないんじゃないかと。

うちのデータベースにはさまざまなデータがたくさん入っていますから
どのデータを取得するときにどれくらいの時間がかかるのかを検証したうえで
その部分を中心に改善をしていかないとなりません。

-----

2つ目の障害は「G1予想大会」。
予想が投稿されず、表示もされない。でもポイントは消費しているというところ。

実はこれ、内部的には投票されていました。
ですが、一部のデータしか登録されておらず
データが不完全な状態で登録されていたために表示できませんでした。

この障害も
結局は「更新系」「参照系」の話に通じます。

参照系データベースはつい最近インストールしたもので
更新系データベースとはバージョンが異なります。

おそらくデータベースの仕様だと思うんですが
データベース上のテーブルに「デフォルト値」が設定されていない場合の挙動が
更新系データベースと参照系データベースとで異なっていました。

これまで普通に使用していたデータベース(今の更新系データベース)では
データを挿入する際、値を設定していない列に入るデータ(デフォルト値)は
’’(空文字)が標準で入りました。これは何の設定をしなくても。

んで最近インストールしたデータベース(参照系データベース)では
デフォルト値が設定されていない列に何も値をセットしないで挿入すると
エラーとなりデータが挿入されなくなりました。

これ…先ほどまで気づきませんでした。

今回の対応は
データベースの表のすべての列にデフォルト値を設定して
これまでと同じ挙動になることを確認しています。

次回の「G1予想大会」は2月の中旬ですので
それまでに再度確認のため動作試験を行ってみようと思っています。

-----

今朝夜勤から帰宅してデータベースの設定見直し後は
一応安定して動いているみたいです。
サーバの負荷もそれほど高くありません。

今後はSBメンバーズサイトをはじめ、各ページのリニューアルを進めるにあたり
データベースの構成変更が多く発生しますが
今回発生した障害の対応も兼ねてデータベースをいじっていく予定です。

今後も技術的なことも含め
気になったことは少しずつメモとしてブログにも残そうと思います。


改めて
皆さまにはここ数日多大なるご迷惑をおかけしましたことを
重ねてお詫びするとともに
今後もこんな拙い運営の「The Sunday Breeze」ではありますが
ご愛顧いただきますようよろしくお願い申し上げます。

人気ブログランキングへ 


このネタへのコメント:


コメントはありません。
お名前(入力必須):
ログインID(SBメンバーズの方)(任意):
(SBメンバーズの方から頂いたコメントは、管理人の承認なしで書き込まれます。)

タグは使えません。

URL(任意):
メール(任意):

右に「さんでーぶりーず」と入力してください。