Skip to content
KMY(雪あすか) edited this page May 30, 2022 · 50 revisions

データベースインストール

地方競馬で初月のダウンロード時間が異常に長い

地方競馬の情報をダウンロードするときに利用するUmaConnの仕様で、ダウンロードの終端日時が指定できないようになっています。例えば2005年からダウンロードを始める場合、2005年1月の時点で2005〜現在までの約20年間のデータを一気にダウンロードします。
ダウンロード途中にエラーが発生しても可能であれば復帰処理をしますので、気長にお待ち下さい。ネット接続が長時間切断された場合、回線が細い場合、回線が詰まって60秒にわたって新規ファイルがダウンロードできなかった場合などにダウンロードが途中で止まる場合がありますので、安定したネット接続に自信のない方は定期的にご確認くだされば幸いです。

地方競馬で昔のデータの処理時間が異常に長い

先述FAQと同様で、ダウンロードの終端日時が指定できないため、2005年1月のデータを取得しているつもりでも最新まで約20年間のデータが一度に返ってきてしまいます。通常ならそれを逐次処理・保存すべきなのですが、KMY競馬では全データを一気にメモリに取り込んだあとで保存処理を行う構造になっています。このため、一気に大量のデータを読み込むとメモリ不足になってしまいます。(データ処理を行うアプリは仕様上の制約により32bitになっているため、メモリの上限が約2GBになっています。そのため64bitのパソコンでどれだけメモリを積んでいても、すぐ制限に引っかかります)
これはUmaConnの仕様に対処しきれないKMY競馬の構造上の問題であり、将来的に修正を検討していますが、修正の影響範囲が特定できない上に、仮に修正したら「前回処理中止した場所から再開する」ということができなくなるため、放置している状態です。最新5年間くらいのデータであれば1日〜数日という現実的な時間で処理できますので、いったんそれを先に処理した後、希望するデータをバックグラウンドで少しずつ蓄積していくのがよろしいかと思われます。

地方競馬のダウンロード時、時々英語のダイアログが出ます

いろいろ試しましたが消せませんでした。制限事項になります。おそらくウィンドウハンドルを持っていないからではと思うのですが、これ以上調べる元気はないです。。

他のソフトでは処理がどのくらい進んだかをプログレスバーで表示している。KMY競馬ではそれができないのか

技術的には可能です。しかしKMY競馬は、機械学習などの事情もあり、64ビットアプリとして動作させるのが開発方針です。対して競馬データのダウンロードに使用するJV-LinkやUmaConnは通常は32ビットアプリからしか呼び出せず、KMY競馬からこれらを呼び出すときに特別な接続方法を使っています(具体的に言うとダウンローダをブリッジしています)。その接続方法において処理の進捗を逐次表示しようとすると、最悪の場合はデータベースファイルが壊れる危険性が懸念されます。
もちろんこれはプログラムを修正することで改善できますが、このダウンロード処理はバックグラウンドでも実行できる上に、処理単位を月単位で細かく分けているので、直ちに修正が必要な状況でもないと思います。

データ

昔のレースで、オッズや一部情報が表示されない

古いデータに関しては、もともとJV-LinkやUmaConnからは提供されていません。
目安として、中央競馬では昔の馬の血統データは2003年2月前後にまとめて受信されますため、この範囲のダウンロードがなされていなければほとんどの血統データは利用できません。また、範囲は特定できていませんがこれに前後した時期からオッズデータ、坂路調教データもあわせて取得できるようになることも分かっています。ウッドチップ調教のデータは2021年夏頃からのもののみが入手できます。
地方競馬ではレースデータは2005年、オッズは2010年からとなります。

タイム偏差値が表示されない

データベースのインストールで「基準タイム計算」ボタンを押してください。普通に開始してしまうと、基準タイムは計算されません。
なお本アプリのソースコードからビルドした場合、基準タイム計算ロジックは公開ソースに含まれていませんのでタイム偏差値は計算されません。

中央競馬のみの利用で、一部レース(地方重賞/中央交流など)で地方の馬のタイム偏差値が表示されない

タイム偏差値は、その馬がレースで走った競馬場の過去のデータを参考に算出しています。そのため、地方競馬のデータがないと一部データが算出できない場合があります。

中央競馬のみの利用で、画面左側に表示されるタイムラインにおいて地方競馬のレースの表示位置がおかしい/レースの開始時刻が0時0分になっている/オッズが全て0になっているなど

中央競馬のデータをダウンロードするJV-Linkというソフトは、中央競馬と交流する馬のデータを配信してくることがあります。ただしそのデータには、レースの開始時刻/馬のコーナー別成績/騎手・調教師コードなど一部の情報が欠損しています。特に開始時刻がないデータは、タイムライン上で正しく表示することができません。
この問題を解消するには地方競馬のデータをダウンロードするUmaConnというソフトの利用が必要ですが、別途有償契約が必要となります。UmaConnでは、地方競馬に関してもJV-Linkと同様に、フルとはいかなくても開始時刻を含むほとんどのデータを取得することが可能です。本アプリでは、適宜JV-LinkとUmaConnのどちらのデータを採用するか、データ保存のさいに取捨選択を行っております。

天気、馬場を上書きしてしまった場合、レース当日にも自分で設定し直さなければいけないか

天気・馬場を含むデータが受信された場合、自動的にそれらにデータが置き換わった上に、過去レースと同様に編集不可となりますのでご安心ください。予想スクリプト、傾向検索などで不都合が起きる可能性があるために手動編集可能にしているものです。
中央競馬や地方競馬で翌日以降のレース情報が配信されることがあり、その場合に設定可能です。また当日早朝に早く予想したい場合にも有効です。

起動したら勝手に過去データのダウンロードが始まった

JV-Link、UmaConnでは競馬データのダウンロード方法は2つあります。昔のデータを一度にダウンロードする場合、今週の最新情報をダウンロードする場合でメソッドが異なります。
未発走レースの最新オッズを取得するには後者が必要ですが、昨日のレース結果を取得するには後者だけでは不十分です。そのため、毎日初回起動に限り、前回起動後のデータをダウンロードしています。
このダウンロードは中止できます。なお中止したりダウンロードの途中でアプリを終了した場合、前回起動日付は記録されず、アプリ起動ごとに毎回ダウンロードが始まることになります。毎日初回起動時はしばらく放っておいてください。
なおこのダウンロードを行うかどうかを決める設定は、「データベースインストール」画面ではなく、「自動更新設定」画面のデータを参照しますので注意してください。

データベースインストールと自動更新が同時進行しているようだが、データは壊れないか?

どちらのデータが新しいか確認しながら処理しています。またトランザクションといって、他のアプリがデータベースに書き込みできないようにしてから書き込み処理を行っております。そのため、新しいデータが古いデータに置き換えられることは基本的にありません。ついでに言うと、手持ちのデータとデータベース内のデータのどちらが新しいかはトランザクションを開始してから判定しています。そのため、内部的には二度手間になってしまいますが、2つのダウンロード処理から同じレースのデータが同時に複数来ても問題ありません。ただしレースの開始時刻、コース・距離などが変わった場合、アプリ起動後しばらくの間は古いデータと新しいデータが交互に表示される場合がございます。開始時刻はともかくレースのコース変更はそうそうないと思いますが、あまりにひどいようでしたら報告いただければ幸いです。
補足事項として、JV-LinkやUmaConnはダウンロードしたデータのキャッシュをとっていますが、昔からの蓄積データ(セットアップデータ)と最新のデータとでは保存場所が違いますのでファイル書き込み時に問題が起きるとは考えられません。別のアプリを同時起動しない限り、JV-LinkやUmaConn内部のデータは壊れないと考えます。

アプリを久しぶりに起動したら、数ヶ月前のデータが自動で更新されない

アプリ起動時に自動取得されるデータは、3ヶ月以内のもののみです。それ以前のデータについては、手動でダウンロードしてください。
なお手動でダウンロードするときに重複となりますので、お急ぎでなければ自動で始まったダウンロードを中止し、手動で開始年月を指定して開始して構いません。

なぜ平日なのに中央競馬のデータをダウンロードするの?

平日にも、次回レース情報などが配信されてくる場合があるためです。気になるようでしたら平日は手動で切っていただいて構いません。
具体的な更新曜日はJRA-VANの仕様書に書いてありますが、次の土日のレース情報は木曜日以降に配信されます。金曜日は前売りのあるごく一部のG1レース(詳細は別途JRAのHP参照)において、オッズ情報が逐次更新されます。
中央競馬は基本は祝日もGWも関係なく土日開催です。ただしまれなケースではありますが、2020年3月31日(火曜日)に中央競馬が開催されたことがあります。そのため本アプリでは、月〜水曜日も制限なくデータを取得することが可能な設定になっています。

印付けができず、購入ボタンが押せないことがある

データベースインストール中(アプリ起動直後に自動で開始される場合も含む)、大量のデータをトランザクションを使った上でデータベースに書き込みますので保存時間が長くなる傾向にあります。その間に別のデータを書き込もうとすると、データベースへの接続がトランザクションによってブロックされ、長い間待たされることになります。その待ち時間が長すぎてユーザーがアプリを終了したり、別のレースに切り替えたりしますと、印などのデータが保存されない可能性がございます。そのため、最初から変更できないようにしたほうが安全ということで、そのようにしております。基準タイム記録/馬データ成型もトランザクションを使っておりますので、同様に書き込み禁止にしています。書き込み禁止中は画面下部にうっすら赤く表示されます。
他の競馬ソフトではデータダウンロード時に一切何も操作できない状態になりますが、本アプリはそれよりも少しはましということで、ご理解いただければ幸いでございます。

基準タイム記録、馬データ成型の処理時間が長い。途中でアプリを閉じても構わないか?

基準タイム記録は毎回最初から実行されますので、途中で終わっても次回続きから再開とはなりません。馬データ成型は途中で終了しても、次回起動時に続きから再開されますので問題ありません。

地方競馬

三連単のオッズ表で数値が表示されない箇所がある(オッズ表が穴食いのようになる)

三連単の項目数は、馬の数に対して三次関数的に増加します。例えば10頭のレースでは、三連単は720通りになります。(720 = 10 * 9 * 8)
中央競馬なら投票する人数が多いので全項目網羅されていますが、地方競馬では人数が少ない上にオッズ通りの堅実な結果となることも多いため、誰も買わない組み合わせがよく出ます。その組み合わせのオッズは当然ゼロになります。
馬が出走見送りになっていない限り、オッズがゼロでもその組み合わせは購入できます。ご心配でしたら、netkeibaなど外部サイトの表と見比べてください。

一部のレースの馬連、馬単オッズが表示されない

もともと存在しないようです。ただ、馬連、馬単が存在しない条件や検知方法が特定できない状態ですので、馬券画面からの購入は通常通り行えることにご注意ください。

その他

なぜアプリ起動して最初のレースを読み込むのに時間がかかるのか

読み込み自体の時間ではなく、UIを初期化するための時間です。一度レースを読み込むことによってその情報を表示するための大量のUIコンポーネントが次々と作られ、レースを切り替えることによってそれらが使い回されます。

スクリプト一括実行の途中にスクリプトを書き換えてしまった。一括実行結果に影響しないか?

各レース画面から実行する時は都度ファイルを読み込んでいますが、一括実行時は最初に「コンパイル」という作業をしてから実行しています。結論を言うと、影響しませんのでそのまま編集を続けていただいて差し支えありません。

KMY競馬のデータベースファイルを利用して自作アプリを開発して構わないか

ライセンス上問題はございませんが、データベースの仕様はもともと一般ユーザー向けに公開しているものではなく、今後断りなくデータベースの仕様を変更する場合があるため、おすすめできません。
また、今回使用しているO/Rマッパ(Entity Framework Core)の仕様により、データベースのカラムに差異がある、マイグレーション時にすでに同名のテーブルやカラムがある、などの理由でデータを取得できない場合がありますので、データベースを改造するのもおすすめできません。端的に言うとサポート対象外です。

KSC投票プラグインを規定以外の場所にインストールして構わないか

KSC投票プラグインのインストール先はレジストリに記録されています。本アプリはそちらを参照しているため、基本的にどこにインストールしても問題はございません。
ただしProgram Files (x86)フォルダなどはファイルの書き込みに管理者権限が必要になります。そのためKSC投票プラグイン公式でも非推奨とされています。そのほか、本アプリからもKSC投票プラグインのログファイルを参照する場合があり、そのときに誤動作を起こす可能性がございます。

Clone this wiki locally