問題タブ [durability]
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.
postgresql - PostgreSQL は耐久性をオフにします
Postgres をインメモリで持続性なしで実行するスクリプトを作成したいと考えています。このページを読みました: http://www.postgresql.org/docs/9.1/static/non-durability.html しかし、スクリプトでこのパラメーターを設定する方法がわかりませんでした。手伝っていただけませんか?
手伝ってくれてありがとう!
linux - Linuxで耐久性を保つには何が必要ですか?
私はかなり重要なデータを処理するためにいくつかのソフトウェアを書いています、そして耐久性を達成するために私が何をする必要があるかを正確に知る必要があります。
どこを見ても矛盾する情報があるので、洞察をいただければ幸いです。
ディスクに書き込む方法は3つあります。
O_DIRECTの使用| O_DSYNC、および512バイトをプリアドしてからpwriteする-16MBブロック。
O_DIRECTを使用して、512バイトブロックをプリアドしてからpwriteし、必要に応じて定期的にfdatasyncを呼び出します。
必要に応じて定期的にmsync(...、MS_SYNC | MS_INVALIDATE)と呼ぶメモリマップトファイルを使用します。
そして、これはすべてデフォルトフラグ付きのext4にあります。
これらすべてについて、停電、パニック、クラッシュなどによってデータが失われたり(書き込みまたは同期が戻った後)、破損したりする可能性はありますか?
サーバーがpwriteの途中で、またはpwriteの開始とfdatasyncの終了の間に、またはマップされたメモリが変更されてmsyncの間に停止した場合、古いデータと新しいデータが混在する可能性がありますか、それとも1つになりますか?または他?個々のpwrite呼び出しをアトミックで順序付けてほしい。これは本当ですか?そして、それらが複数のファイルにまたがっている場合はそうですか?したがって、O_DIRECTで書き込む場合| O_DSYNCをAに、次にO_DIRECT | O_DSYNCからBへ、何が起こっても、データがBにある場合、それはAにもあることが保証されますか?
fsyncは、データが書き込まれることを保証しますか?そうではありませんが、それ以来状況が変わったかどうかはわかりません。
ext4のジャーナル化は、このSOの回答が存在すると言っている破損したブロックの問題を完全に解決しますか?
私は現在、posix_fallocateを呼び出してからftruncateを呼び出してファイルを増やしています。これらは両方とも必要ですか、それで十分ですか?これらの問題を回避するために、ftruncateが実際に割り当てられたブロックを初期化すると考えました。
ミックスに混乱を加えるために、私はこれをEC2で実行していますが、それが何かに影響するかどうかはわかりません。どれだけ積極的にシャットダウンするかを制御できないため、テストは非常に困難ですが。
mongodb - 単一サーバーの耐久性とは何を意味しますか?
単一サーバーの耐久性について詳しく説明できる人はいますか? MongoDB の概念を調べているときに、これに出会いました。
mongodb - Journal + Majority は 100% 安全ですか?
MongoDB のフォールト トレランスに関する記事をいくつか読んでいますが、MongoDB では実現できないと不満を言う人もいます (この記事のように: http://hackingdistributed.com/2013/01/29/mongo-ft/ )。これは混乱しました。
ドライバーによって成功と報告された書き込みの 100% が永続的に書き込まれ、そうでないことを確認するには、書き込み懸念 "Journal + Majority" を使用するだけで十分であることを誰かが確認できますか (可能であれば適切なドキュメントを見せてください)。書き込み直後にレプリカに障害が発生した場合でも失われますか?
私は3つのレプリカのセットアップについて話しています。障害が発生した場合にシステムが書き込みを受け入れなくなっても問題ありませんが、ドライバーによって書き込みが成功したと報告された場合は、永続的にコミットする必要があります (その後失敗したレプリカの数に関係なく)。
couchdb - CouchDB のクラッシュのみの設計は耐久性のためのものですが、なぜですか?
私がcouchDBの耐久性について調べてみると、couchDBは耐久性を得るためにクラッシュのみの設計を使用していることがわかりました.しかし、私はクラッシュのみと耐久性の関係が何であるかを知りません.
algorithm - ディスク上の値を永続的に並べ替える
多数 (数億) の固定サイズの値がランダムな順序でディスクに格納されています。同じ値のセットが異なる順序でメモリに格納されています。ディスク上のメモリにある順序で値を保存する必要があります。課題は次のとおりです。各値のコピーを常に少なくとも 1 つディスク上に保持する必要があります。つまり、耐久性が必要です。
使用する RAM がかなりあり (値は約 60% しか占めません)、多くの一時的なストレージがありますが、耐久性のあるディスクには非常に少量のスペースしかなく、100 万未満の値に十分です。
ディスク上の値を指定すると、メモリ内で非常に迅速に見つけることができます。しかし、その逆は正しくありません。メモリ内の値が与えられた場合、ディスク上でそれを見つけるのは非常に遅くなります。
これらの制限を考えると、値の順序をメモリからディスクにできるだけ速く転送するための最適なアルゴリズムは何ですか?
azure - Azure Blob Storage または Amazon S3 (フラット ファイル ストレージ) のオンプレミスの代替品ですか?
パブリック インターネットから切断されたオンプレミス インストール用の Azure Blob Storage (および Amazon S3) の適切な耐久性のある代替ストレージは何ですか? 開発環境は C# です。
ライブ geo レプリケーションを失うことは問題ありませんが (オフラインの geo レプリケート バックアップは機能します)、Azure Blob Storage が示す高可用性機能を保持したいと考えています。 ) 最初までの場所/URI が復元されます。
.net - REDISの耐久性? データを自動期限切れにする方法は?
REDIS を使用してデータ (文字列) を保存します。例: キー「s1」ストア値「hello world」。キー「s2」ストア値「さようなら」。5 分後に s1 の自動期限切れ (空きメモリ) が必要ですが、s2 は期限切れになりません。私はC#、.net 4.0を使用しています>>コードの書き方は?ありがとう
mongodb - Pymongo のデフォルトのジャーナリング
pymongo を使用する場合 (2.4 以降)、これを行う場合:
(2 つのレプリカで) 確認済みで書き込みをジャーナリングすることを指定します。
この投稿によると、書き込みに関する懸念事項に何も言及しない場合、デフォルトで w = 1 のように聞こえます。しかし、何も指定しない場合のジャーナリングのデフォルト モードは何ですか? j= True または False ですか?
networking - 耐久性のあるネットワーク通信のジレンマ
銀行と ATM があるとします。それらはネットワークを介して通信しますが、失敗する可能性があります。それらの間の通信が 100% 持続するシナリオを作成することは可能ですか。この場合、次のことを意味します。
いくつかのシナリオを確認してみましょう。
- ATM はリクエストを送信し、銀行は確認を送信します。確認が失われ、銀行は口座を更新しましたが、クライアントはお金を受け取っていません。
- (銀行が残高を更新するために ATM からの確認を待っている場合) ATM は要求を送信し、銀行は確認を送信し、ATM は受信の確認を送信します。アックは迷子になった。ATM はお金を発行しましたが、銀行は口座を更新しませんでした。
そのため、ネットワークに障害が発生しても、どちらの側でもお金が失われるのを防ぐことができないソリューションを作成することはできませんでした.
お知らせ下さい。