JRA公式競馬データ配信サービス JRA-VAN Data Lab.

JRA-VAN DataLab.

競馬ソフト開発コーナー

JV-Link 質問箱

一括表示 リストに戻る
タイトルJVOpen/JVGets/JVReadの仕様について
記事No6441
投稿日: 2019/07/16(Tue) 22:32
投稿者st
いつもお世話になっております。

JVLinkインタフェース仕様書P16に


"既知の障害について
・dataspec を複数個指定した場合、個別に指定した場合と比較すると「対象フ
ァイル数が多い 場合に JVRead の処理時間が遅くなる」という障害が報告されています。処
理時間が遅い場合 に は、 detaspec を個別に指定し 回避してください。また、セットアッ
プデータ取得時は option=4(ダイアログ無しセットアップ)を指定することで、セットアッ
プ時のダイアログ表示を回避 可能です。"

とありますが、こちらで確認した範囲ではJVGetsの場合もJVReadと同程度の割合で遅延がある
ように見受けられます。

また、dataspecで指定するデータ種別IDが多いほど遅くなる傾向にありますが、JVReadでもJVGetsでも単独で指定しても古いデータほど処理時間が遅くなる傾向があるように思います。


次に例を示します。ただし主に最初のほうで取得されるレコード種別IDの確認
になりますので、あくまでdataspecの指定の仕方との対比として捕らえて頂けれ
ばと思います。

例:
2010年6月1日指定、dataspec=RACEDIFFBLODSNAPSLOPYSCHHOSEHOYUCOMMMING
1回のJVGets呼出実行実時間:おおよそ70ms〜80ms

2010年6月1日指定、dataspec=RACEDIFFBLODSNAPSLOPYSCHHOSEHOYUCOMMMING
1回のJVGets呼出実行実時間:おおよそ18ms〜25ms

2019年6月1日指定、dataspec=RACEDIFFBLODSNAPSLOPYSCHHOSEHOYUCOMMMING
1回のJVGets呼出実行実時間:おおよそ1ms前後


2010年6月1日指定、dataspec=RACE
1回のJVGets呼出実行実時間:おおよそ28ms〜34ms

2010年6月1日指定、dataspec=RACE
1回のJVGets呼出実行実時間:おおよそ5.3ms〜7.5ms

2019年6月1日指定、dataspec=RACE
1回のJVGets呼出実行実時間:おおよそ0.01ms〜0.5ms前後


そこで質問ですが、

1. 御社でご確認されている範囲において、JVGetsでは問題ないとのご認識でしょ
うか?

2. JVReadにおいて「処理時間が遅くなる」とは、具体的にどの程度の割合と
ご認識されていますでしょうか?

3. 上記条件でJVGetsを行った場合、

・日付と処理時間の関係
・dataspecの指定と処理時間の関係

はどのようになっているのが正しい動作であると考えればよろしいでしょうか



尚、同じテスト条件ではありませんが、御社サンプルプログラム(VB2005)で実行
した場合も類似の傾向を確認しております。


お忙しいところ大変恐れ入りますが、
ご回答頂けましたら幸いです。

何卒宜しくお願い致します。

タイトルRe: JVOpen/JVGets/JVReadの仕様について
記事No6444
投稿日: 2019/07/26(Fri) 17:49
投稿者JRA-VANソフトサポート
JRA-VANソフトサポートの吉本です。
DataLab.サービスをご利用頂きまして誠にありがとうございます。

回答が遅くなり大変申し訳ございません。

> 1. 御社でご確認されている範囲において、JVGetsでは問題ないとの
> ご認識でしょうか?

JVGetsにおきましても同事象が発生することを認識しております。

JVGetsの性能につきましては、「SJIS<->UNICODE変換」
のオーバーヘッドが不要となる事による
改善となっておりますので、劇的な改善とはなっておりません。

> 2. JVReadにおいて「処理時間が遅くなる」とは、具体的に
> どの程度の割合とご認識されていますでしょうか?

大変恐れ入りますが、環境や条件によって異りますので、
具体的な割合については回答いたしかねます。


>3. 上記条件でJVGetsを行った場合、
> ・日付と処理時間の関係
> ・dataspecの指定と処理時間の関係
> はどのようになっているのが正しい動作であると
> 考えればよろしいでしょうか?

明確な基準はございませんが、
通常、日付については直近を指定するほど処理時間は短く、
dataspecについては指定する数が少ないほど
処理時間は短くなると考えております。

以上、よろしくお願いいたします。

ウィンドウを閉じる