この投稿のタイトルで申し訳ありませんが、これ以上クリエイティブなタイトルが思い浮かびません。
作成者が最新のトランザクション結果を注文しているサードパーティの Web サービスを呼び出しています。合計トランザクション数は 100,000 を超えています。さらに興味深いことに、Web サービスは各トランザクションを表す複雑なオブジェクトを送信します。そのため、一度に 100,000 件すべてを要求すると、タイムアウトが発生します。したがって、一度に 1000 レコードのみを返すには、この Web サービスへの呼び出しをバッチ処理する必要があります。これは、この Web サービスに対する 100 回の個別の呼び出しを意味します。
これまでのところ、トランザクションを古いものから新しいものへと処理する必要があることを除けば、すべて問題ありません。したがって、これらのトランザクションの ID だけを一時的に保持する場所が必要です。これにより、後で正しい順序 (古いものから新しいものへ) で ID を呼び出すことができます。それらを並べ替えた後。
このソリューションに欠けているのは RDBMS です。テキスト ファイルを使用して値を保存することを考えています。
前置きが長くなってすみません。
(1)
- 値をテキスト ファイルに保存するだけでは、テキスト ファイルに 100 000 行を超える行が間違った順序で表示されることになります。つまり、ファイルを下から上に読み取る方法を実装する必要があります。
- 確かではありませんが、パフォーマンスの低下なしに既存のテキスト ファイルの先頭に追加される可能性があります。このように、ファイルが作成されると、組み込みの .net を使用してファイルを上から下に読み取ることができます。
- テキストの odbc ドライバーを接続して、SQL の order by 句を使用することもできますが、これまで行ったことがないため、アプリに展開手順をこれ以上追加したくありません。
- おそらく、テキスト ファイルを使用するのは適切ではありません。私が気付いていないこの問題に対して、より良い解決策があるかもしれません。
これはアーキテクチャ/ロジスティクスに関する質問です。ご協力をお願いいたします。