私はいくつかのOLTPデータベースを持っています。また、数時間ごとにOLAPデータベースにデータをプッシュするETLジョブもあります。OLTPデータベースとOLAPデータベースを使用したCQRSは意味をなすか?
私は、OLAPデータベースから高さレベルのデータを表示するカスタムダッシュボードを構築することが任されています。私は、OLAPデータベースを指し示すいくつかのAPIを構築したいと考えています。私は
- OLTPデータベースを呼び出してCQRS型パターンを使用すると、OLTPから読み込みが行われ、書き込みはOLTPから来るようになります。私の懸念事項は、読み取りと書き込みの間にデータに不一致があることです。データがどのように不一致であるかは、ETLジョブを実行する頻度(私の場合は時間)に依存します。
- 既存のAPIに追加し、OLAPデータベースを呼び出してから、クライアントに、APIが重複しているOLAPまたはOLTPデータを要求するかどうかを尋ねます。ここでの私の関心は、クライアントが、データがどこから来ているのかについての実装の詳細を知る必要がないことです。
- OLAPデータベースのみを指す新しいAPIを作成します。これは余分な作業の多くです。
おそらく: > 'OLAPデータベースを指すだけの新しいAPIを書く。これは多くの余分な作業です。」 これは、あなたの要件をより良く満たし、既存のAPIの責任と機能が混在しないようにする必要があります。このアプローチは、メンテナンス性を向上させ、 cents –
CQRS with Event Sourcingとそれを使って投影を作成するテキストケースの例のように聞こえます。 OLTPは簡単にイベントに変換され、OLAPデータベースは予測のように聞こえるため、ETLジョブの実行頻度と比べて大幅にパフォーマンスが向上します。 – Arwin