問題タブ [drools]
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 - Javaルールエンジンの長所と短所
JavaルールエンジンのJESSとDroolsを採用することの長所と短所は何ですか?他にプレイヤーはいますか?
Droolsはオープンソースであり、JESSはそうではないことを理解していますが、使いやすさ、パフォーマンス、コードとの統合レベルなど、他の分野でどのように比較していますか?
drools - Guvnor から Drools RuleFlow ファイルをダウンロードする
RuleFlow (.rf) ファイルを Guvnor (5.1 M1 と 5.0 の両方) にアップロードし、サーバー上でルールを使用して実行できます。Guvnor をリポジトリとして使用したい場合、その場で RuleFlow ファイルをプロジェクトにダウンロードする方法はありますか?
パッケージ レベルでは、Guvnor はルールについてのみ説明する「情報と重要な URL」をいくつか提供します。RuleFlow ファイルを提供する他の URL があるかどうか疑問に思っていましたか? WebDav 以外の選択肢はありますか?
java - この状況でDroolsを使用する必要がありますか?
大学の図書館システムを使用して、ユースケースを説明します。学生は図書館システムに登録し、プロフィールを提供します:性別、年齢、学部、以前に完了したコース、現在登録されているコース、すでに借りている本など。図書館システムの各本は、たとえば、学生のプロフィールに基づいていくつかの借り入れルールを定義します。 、コンピュータアルゴリズムの教科書は、現在そのクラスに登録されている学生のみが借りることができます。別の教科書は数学科の学生だけが借りることができます。学生が借りることができるコンピュータネットワークの本はせいぜい2冊だけであるという規則もあり得ます。借用規則の結果、学生が図書館システムで検索/閲覧すると、借用できる本のみが表示されます。それで、
これが私がDroolsを使用してデザインをビジョン化する方法です-各本にはLHSとして学生プロファイルにいくつかのフィールド制約があるルールがあり、本ルールのRHSは単に本IDをグローバル結果リストに追加し、次にすべての本ルールを追加しますRuleBaseにロードされます。学生が図書館システムを検索/閲覧すると、RuleBaseからステートレスセッションが作成され、学生のプロファイルが事実としてアサートされます。その後、学生が借りることができるすべての本がその本のルールを実行し、あなたはその本の完全なリストを取得します。学生はグローバル結果リストで借りることができます。
いくつかの仮定:図書館は何百万冊もの本を扱うでしょう。本のルールが複雑すぎるとは思いません。平均して、各ルールに3つの単純なフィールド制約があります。システムが処理する必要のある学生の数は100Kの範囲であるため、負荷はかなり重いです。私の質問は次のとおりです。100万冊の本のルールがロードされた場合、Droolsはどのくらいのメモリを消費しますか?これらの百万のルールすべてが実行されるのはどれくらいの速さでしょうか?Droolsが適切な場合は、経験豊富なユーザーから、そのようなシステムを設計するためのいくつかのベストプラクティスを聞きたいと思います。ありがとう。
drools - Drools 4.x のデシジョンテーブルからファクトオブジェクトを取得する方法
私たちのチームは、評価に Drools ルールフローを使用しています。現在、代わりにデシジョン テーブルへの移行を計画しています。
Drools ルールフロー バージョンでは、DRL ファイルのコンテキスト内で作成されたオブジェクトをワーキング メモリから抽出するクエリ コンポーネントを含む DRL ファイルを使用していました。
デシジョンテーブルで同じことをすることに固執していますか? ルールの実行には StatefulSession を使用しています。また、これらのファクトはルールの RHS に挿入されます。発火時には FactHandles はありません。
Drools ルール エンジンのブートストラップに使用されるコードは次のとおりです。
クエリの取得に使用される drools ファイルは次のようになります。
ありがとう
xml - .dslrでXmlDumperを使用するJBOSSDROOLS
.DRLファイルをXmlDumperに解析して、正しい出力を取得することができます。XmlDumperを介して.DSLRファイルを渡して同じ結果を得るにはどうすればよいですか?.DSLRファイルには言語ファイル(.DSL)が含まれています
xml - DSLR から DRL を抽出する
Drools の DSLR ファイル内で生成された DRL にアクセスするにはどうすればよいですか?
drools - JSR94 を使用して、Drools で Excel ベースのデシジョン テーブルをロードするにはどうすればよいですか?
Drools DRL ルール セットをロードする方法の例がウェブ上にたくさんあります。ただし、JSR94 API を使用して Excel 形式でデシジョン テーブルをロードする方法の説明や例が見つからないようです。
誰もこれを行う方法を知っていますか? もしそうなら、簡単なコード例を提供できますか?
以下は、私が使用しているコードのサンプルです。一部のプロパティをセットアップして createRuleExectuionSet() の 2 番目のパラメータとして渡す必要があると思われる領域をマークしました (ただし、それは解決策ではない可能性があります)。
spatial - 空間的および時間的推論のためのルールエンジン?
3 次元の空間的および時間的プロセスを特徴付ける多数のデータムを受け取るアプリケーションがあります。次に、これらのデータをフィルタリングしてアクションを作成し、アクションを実行するプロセスに送信します。すすいで繰り返します。
現在、多くの複雑な空間/時間計算を実行するカスタム フィルターのコレクションがあります。
社内の個人とシステムについて話し合うと、ルール エンジンを使用しているかどうかを何度も尋ねられます。
時間的および空間的に適切に推論できるルール エンジンはまだ見つかっていません。(例: 2 つの 3D エンティティが接近するのはいつですか? 3D エンティティ A は 3D 領域 B に含まれていますか? エンティティ C がエンティティ D の近くにあるが、C に対して後方を向いている場合は、アクション D を実行します。)
私は過去に Drools、Cyc、Jess を見てきました (たとえば 3 ~ 4 年前)。最先端技術を再検討する時が来ました。助言がありますか?この種の推論をサポートする、あなたが知っている基準はありますか? デファクトスタンダードは?アプリケーションはありますか?
ありがとう!
java - Spring 3.0 でアプリケーションを変更せずにバイトを型に変換する (変換メソッドを DB に格納する)
変換戦略 (一部のバイトを変換するため) をデータベースに保存し、実行時に実行する方法はありますか?
完全なJavaファイルを保存する場合は、それをコンパイルし、クラスを保存し、すでに実行中のシステムに何らかの方法で挿入する必要があります. これがどのように可能になるかはわかりません。
しかし、JVM である種の動的言語を使用すると便利です。ここで、Spring コンテキスト内からの groovy の実行の例を参照して ください http://www.devx.com/tips/Tip/42789
ただし、アプリケーションコンテキストには実装への参照が含まれており、データベースによって変更できないため、これは本質的に静的です。
これは、変換戦略を保存して実行するために DSL (ドメイン固有言語) をエンド ユーザーに提供するようなものです。エンド ユーザーはカスタム ルールを設定できます。
おそらくコンテキストのJavaConfigで可能です。私は現在、特に Spring 3.0 のオプションを検討しています。あらゆる方向への提案を歓迎します。