問題タブ [bulk-operations]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 複数の値オブジェクトのビジネスロジック-ループをどこに置くか?
...そしてビューレイヤーへの成功/失敗のフィードバックを処理するための最良の方法。
オプションは次のとおりです。
また
一貫した方法で(つまり、値オブジェクトに対する単一または複数の操作から)成功/エラーフィードバックを受け取るビューレイヤーが必要であると仮定すると、最良のアプローチは何ですか?
明確化:
ビューレイヤーでビジネスロジック呼び出しからスローされた複数の例外タイプを処理すると、コードが重くなり、メンテナンスの問題も発生します(プレゼンテーションレイヤーが認識しない新しい例外が導入されます)。ビジネスロジック呼び出しでは、複数の値オブジェクトのエラーを処理し、ビューが一貫した方法で処理できるようにそれらを「パッケージ化」する方がよいようです。
error-handling - 多層アーキテクチャで一括操作を実行する際のエラーとフィードバックの処理
いくつかのオブジェクトに対して何らかの操作を実行できるビジネスロジックメソッドがあるとします。たぶん、リストから選択された人ごとに1回、宝くじ番号選択Webサービスに電話をかけたいと思うかもしれません。Javaでは、コードは次のようになります。
宝くじ番号のWebサービスには、その人が宝くじ番号を要求したことを記録する(おそらくアカウントに請求する)などの副作用がある可能性があるため、ある人のWebサービス呼び出しが失敗した場合でも、他の人のWebサービス呼び出しは成功した可能性があることに注意してください。この情報(宝くじ番号)は、より高いレベル(ビュー)にフィードバックする必要があります。
これが単一の操作が行われた場合、ビジネスロジックメソッドは単一の値(たとえば、宝くじ番号)を返すか、失敗の詳細を含む例外をスローする可能性があります。ただし、一括操作の場合、いくつかの操作が成功し、いくつかが失敗する可能性があります。
これは多くのアプリケーションで発生するタイプの問題のようであり、それを処理するためのクリーンな方法があるはずです。では、このタイプの情報をビジネスロジックレイヤーからアプリケーションの別のレイヤー(ビューなど)にフィードバックするための最良の方法は何ですか?できれば、さまざまなタイプのデータや操作に再利用できる一般的な方法でしょうか?
java - Java から Oracle への一括挿入
多くの小さな行を Oracle にすばやく挿入する必要があります。(5 フィールド)。
MySQL では、挿入を 100 個のグループに分割し、100 個の挿入のグループごとに 1 つの挿入ステートメントを使用します。
しかし、Oracle では、大量の挿入 (1000 ~ 30000 のどこでも) が遅すぎるというユーザー フィードバックが寄せられています。
JavaからOracleへのプログラムによる挿入を高速化するために使用できる同様のトリックはありますか?
file-rename - バッチ:ファイルの名前を一括で変更するにはどうすればよいですか?
Perl でこれを行う人を見たことがありますが、バッチ経由で行う方法があるかどうか疑問に思っています。Windows に組み込まれているので、バッチ スクリプトでこれを行う方法を知っているとより役立つと思います。コンピューターに何かをインストールする必要はありません。
入力名myFile_55
の例: 出力パターンの例: に変更myFile
しpicture
、数値を 13 ずつ減らします。出力例: picture_42
.
これにどのようにアプローチしますか?名前を変更するバッチコマンドを知っています:
ren myFile_55 picture_42
.
したがって、という名前のファイルがある場合renamer.bat
、次を追加できます。
for /r %%x in (%1) do ren "%%x" %2
.
次に、次のコマンドを入力できます。
renamer.bat myfile* picture*
.
数を減らす方法がわかりません。
c++ - Rectangleの配列を持つSDL_RenderCopy
SDL_RenderCopy は 1 つの入力四角形と 1 つの出力四角形のみを受け入れます。しかし、塗りつぶしたい画像がたくさんある場合、opengl に関する私の知識によれば、すべての画像を一度に描画する一括操作は、スプライトごとに 1 回の描画呼び出しよりもはるかに高速です。SDL_FillRects は count パラメータと共に既に存在します。しかし、たくさんのスプライトを描くのに適したものが見つかりません。
この最適化を自動的に行うことができるとは思えないため、SDL2 にはまだ不足している機能があります。
sql - Oracle に大量のデータがある監査テーブルの連続レコードでのグループ化
オラクルに監査テーブルがあり、そのデータは非常に急速に成長しており、すでに非常に大きくなっています。「CALLED_TIME」列を監査しないことで、それを短くすることにしたようです。
したがって、監査がCALLED_TIMEに対して記録された監査テーブルからレコードを削除する必要があり、後でテーブルからCALLED_TIME列を削除して(これは簡単です)、それ以上記録されないようにします。
削除する REV をリストアップできればよいのですが
前の表のデータ
出力は次のようになります
私はすでに多くの関連ソリューションを見てきましたが、私が選んだのはテーブルに2回参加しているため、非常に怠惰になっています。
oracle - エラー - ORA-06502: PL/SQL: 数値または値のエラー
PL/SQLを学んでいます。従業員名を表示するために、カーソルとネストされたテーブルを使用して以下の手順を記述しました。
エラーなしでコンパイルされます。手順を実行すると、すべての従業員の名前を表示できます。ただし、データを表示する前に以下のエラーがスローされます。誰でも私を助けてくれますか?
前もって感謝します。
mongodb - mongo の bulkWriteResult 、nMatched および更新されたドキュメントの数が一致しません
私は、すべてのユーザーのユーザー統計を更新するために集計フレームワークを使用しています。これは約 50k で、そのうち 30k に少なくとも 1 つの注文が配信されています。
今私が使用しているクエリは
配達されたすべての注文を見つけてから、それらすべての顧客を取得し、firstOrderDate、lastOrderDate、totalOrders を更新しますが、問題は
ドキュメントから、 nMatched は更新操作の数であると書かれているため、私にとっては、配信された注文ですべてのユーザーを更新しています。これは約 30k ですが、私の場合は非常に少ない番号 113 を示しています。
また、私が正しければ、バルクサイズを変更しても同じクエリの更新操作の数は同じままである必要がありますが、600 の場合は 413、1000 の場合は 613.
説明できますか ?