問題タブ [polyglot-persistance]
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.
ruby-on-rails - NoSQL および DDD プロジェクトの Web フレームワークとしての Rails または Sinatra?
Rails を新しい Web プロジェクトのフレームワークとして評価しています。私の唯一の懸念は、私の知る限り、Rails は CRUD および SQL アプリケーションに非常に強い傾向を持って構築されているということです。
私のアプリケーションのアーキテクチャ スタイルは、Rails のルーツとはほぼ逆で、NoSQL データベースを使用したドメイン駆動型になります。また、Rails アプリは 1 つのデータベースに強く結びついている印象もあります。
RailsをNoSQLフレンドリーにしようとするいくつかの作業を見てきました.特にDataMapper 2は非常に興味深いようです(そして長い時間がかかります)が、現在のRailsアーキテクチャがDDDプロジェクトに適しているかどうか疑問に思っています.
理想的には、Rails の成熟度、コミュニティ、および Ruby を使用したいと考えています。しかし、最初から考慮されていなかった新しいプログラミング スタイルを採用するのに問題を抱えた成熟したプロジェクトも数多く見てきました。
また、Sinatra のようなマイクロ フレームワークを検討しています。これにより、独自のアーキテクチャ スタイルを柔軟に使用できるようになります。その唯一の欠点は、可能な限り多くのことを処理するフレームワークを好むことです (Web 開発の経験が長くありません)。
rest - REST API経由のNeo4jコミットコールバック?
https://github.com/neo4j/neo4j/blob/master/community/kernel/src/main/java/org/neo4j/graphdb/event/TransactionData.javaに出くわしました。これにより、内部で変更されたデータをキャプチャできます取引の流れ。
私のアプリケーションでは、postgresql と Neo4j の 2 つのデータ ストアを使用しています。クラッシュ/障害時に一貫した状態に戻すために、データベース間のデータの調整に役立つ可能性があるこのイベントからのデータを維持したいと考えています。
ただし、neo4j サーバー REST API を使用しており、このイベントは組み込みモードで neo4j を使用する場合に利用できます。残りのバッチ コミットで「created_nodes」および「created_relationships」と同様の応答を取得することは可能ですか?
java - Hibernate ORM と OGM を使用して SQL データベースと NOSQL データベースを組み合わせる
SQL Server を使用するアプリケーションがあります。NOSQL ストアを使用したかったのですが、データが高度に接続されているため、グラフにすることにしました。Neo4j はオプションです。
アプリケーション層に触れることなく、たとえばいくつかのxml構成ファイルを変更するだけで、データベースを最適に切り替えることができるようにしたいと考えています。Web で公開されているいくつかの例を見てきましたが、ORM と OGM がアプリケーションを同じように構成していないことがわかりました。それぞれの構成ファイルには独自の名前があり、さらに重要なことに独自の構造があります。それぞれのコードを見ると、セッションを初期化する方法も異なることがわかりました。これは、私が考えていることには適していません。
私の質問は次のとおりです。「既存のアプリケーション コードに触れずに 2 つのデータベースを切り替えることは可能ですか、大きなオーバーヘッドなしで実現可能ですか?何かを追加することはできますが、既に存在するものには触れません」。たとえば、Hibernate を使用して、SQL データベースと NOSQL データベースの間で純粋な多言語永続性を確立することは素晴らしい考えです。
深く掘り下げる前に、皆さんの意見を聞きたいです。ここSOに冬眠中の男性がいますか?
scala - 起動アプリの多言語永続性
私は次のアプリを開発している最中で、多言語永続性の使用に非常に興味があります。さまざまなサービスに対してさまざまなデータ構造を照会できるというアイデアが気に入っています。基本的に、MongoDB、Neo4j/Titan、SQL、そしておそらく Cassandra/Hbase を同期したいと考えています。
現在、すべてを try/catch ブロックにラップし、失敗した場合はすべてロールバックしています。ただし、これは私の書き込み時間に負担をかけています。Kafka や ZeroMQ などの AMQP システムも調べましたが、これらはよりビッグデータ中心のようですが、私のアプリはまだ小さく、効率を維持したいと考えています。
誰もこれを経験したことがありますか?MQ は小規模なアプリに適していますか?それとも時期尚早に最適化していますか?
ありがとう
amazon-redshift - 小さなデータセットを Redshift に保存しますか?
AWS Redshift を使用して、ビッグデータの問題の解決に取り組んでいます。このアプリケーションは、データ ストアにユーザー設定を保存する必要があるパーソナライズする必要があります。システム内のユーザーは 100 人未満であるため、大きなデータ ストアは必要ありません。
これについてどうすればよいでしょうか。RDS Postgres である polyglot ストアを使用してユーザー設定を保存するか、Redshift を使用してユーザー設定をモデル化するだけでよいでしょうか。
graph - エッジ コレクションとグラフ
ArangoDB で得られないことが 1 つあります。
エッジ コレクションとグラフの違いは何ですか? どのような場合に、どちらを選択すればよいですか?
mysql - Google Cloud Platform で PolyGlot データベースを設計する
Google Cloud SQL と Google Datastore でホストする必要があるグローバル ERP / スケジューリング システムを設計しています。
ほとんどの場合、データは強力なリレーショナルであり、ボリュームや揮発性が大きくないため、リレーショナル データベースに自然に適合します。
現在の設計では、customer、contract、employee、site、workorder、contractedSites テーブルにローカルに保存されたアドレスがあります。合計で約 12 の異なる場所です。私は DEV チームに設計を変更して、他のすべてのエンティティから参照できる ADDRESS テーブルを作成するように依頼しました (アドレス履歴、複数のアドレスなどに柔軟性を提供するために、必要に応じてテーブルをリンクして)。
質問 - 住所/連絡先の詳細形式は、これらすべてのシナリオ、国や複数の電話番号などで大きく異なるため、住所と連絡先の詳細をデータストアに移動し、Cloud SQL プラットフォームの ID で参照する必要があると考えていました。そのため、構造は完全に柔軟で、世界中の住所形式に対応できます。
これは理にかなっているように聞こえますか、それともソリューションのエンジニアリングが過剰であり、CLoud SQL でのみ一般的なアドレス テーブルを使用する必要がありますか?
Google プラットフォームのボトルネックは単一の MySQL マスターにあるように見えるため、懸念があります。これは 16 個の vCPU に制限されたマネージド サービスであるため、より多くの機能領域をデータストアに移動しようとしています。
それが理にかなっていることを願っています!