問題タブ [oltp]
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.
sql - ネイティブにコンパイルされたストアド プロシージャで varchar パラメータを比較する方法は?
一部のテーブルとストアド プロシージャをインメモリ最適化テーブルとネイティブ コンパイル ストアド プロシージャに移行しています。文字列の比較で行き詰まっています。
*_BIN2 照合順序を使用しない文字列の比較、並べ替え、および操作は、ネイティブ コンパイル ストアド プロシージャではサポートされていません。
architecture - 高度に分散された OLTP アーキテクチャ
前提条件が適用される、高度に分散された OLTP 状況に対する既知のアーキテクチャ ソリューションはありますか? たとえば、銀行の例を使用してみましょう。人物 A は、人物 B に $N を送金したいと考えています。これが成功するための前提条件は、人物 A がアカウントに $N を超える金額を持っている必要があるということです。
Person A の観点から、彼らは何らかの Web アプリケーションにログインします。彼らは自分自身から個人 B への転送を $N で作成します。バックグラウンドでは、この送金が適用され、送金が作成されているため、リアルタイムで個人 A の口座からお金が引き出され、入金されていることに注意してください。お金は作成前に存在する場合がありますが、送金が適用されると存在しない場合があります。つまり、これはクライアント側の検証ではありません。A さんは、この転送が同期的に成功したか失敗したかを知りたがっています。個人 A は、転送を非同期的に送信してから、後でキューに戻るか、転送が失敗したという通知を返すことを望んでいません。
この問題を大規模に解決する既知のアーキテクチャはありますか? すべてのアカウントが単一の RDBMS にある場合は、組み込みのトランザクション機能を介してこのようなことを行うことができます。しかし、最終的に一貫性のある NoSQL スタイルのデータストア、または Kafka のようなログ/メッセージ ベースのインフラストラクチャを使用している場合、このような問題に対する既知の解決策はありますか?
transactions - 分散トランザクションとメッセージ キュー
現在 MSDTC で正常に動作している現在のアプリケーションに分散トランザクションを実装しようとしています。唯一の問題は、MSDTC が Windows でのみサポートされていることです。多くの場所で提案された代替案は、DTC を捨てて、トランザクションを別々の部分に分割するメッセージ キューを実装することでした。しかし、私のアプリケーションはトラフィックが多く、ユーザーが即時の応答を必要とするパフォーマンスに敏感なトランザクション アプリケーションであるため、メッセージ キューは適切な代替手段でしょうか? そうでない場合、完全な 2pc サポートで分散トランザクションを実現する他の方法は何ですか?
c# - インメモリ OLTP テーブルが SQL Server 2016 Management Studio オブジェクト エクスプローラーに表示されない
インメモリ OLTP テーブルについて学習するために SQL Server 2016 を使用しています。
データベースをmydatabase
作成し、これに対して変更コマンドを実行して、ファイル グループを作成します。
このグループにコンテナを作成するには:-
これらのコマンドが正常に実行された後、このデータベースにメモリ最適化された永続テーブルと非永続テーブルを作成しました。mytable_durable
正常にmytable_non_durable
作成されます。
SQL Server 2016 のオブジェクト エクスプローラーでこれら 2 つのテーブルを表示したいと思いますmydatabase > Tables
。ノードの下のデータベースには表示されません。どうすればそれらを見ることができますか? 添付のスクリーンショットをご覧ください。
しかし、これを実行すると
両方のテーブルが見えます。次のスクリーンショットをご覧ください。
オブジェクト エクスプローラーでそれらを表示する方法はありますか? または、これはデフォルトの動作ですか?