私は現在、友人の会社の人事 Web アプリを開発していますが、リレーショナル データベースと NoSQL データベースのどちらを選択するか、あるいはハイブリッド データベースを選択するかをまだ決めていません。私は、これらの NoSQL データベースの使用例に非常に興味をそそられました。それが、このプロジェクトで NoSQL データベースを使用するという考えを楽しませた理由です。
データベース内のリレーションのサンプル シナリオ:
従業員には次のものが多数あります (ゼロまたは多数の場合があります)。
- 学歴記録
- トレーニングと認定の記録
- 職務経歴書
- ボランティア記録
- 組織およびその他の情報レコード
また、キャリアパスの決定や従業員の後継者計画の作成など、アプリの意思決定支援の側面にも多くの作業が行われます。
NoSQL ルートに進むことは実現可能でしょうか? リレーションシップに基づいて、データベースには従業員テーブルを中心に多くの 1 対多のリレーションシップがあります。RDBMS ではなく NoSQL を選択すると、クエリとパフォーマンスの点でメリットがありますか? MongoDB が私の好みの選択でした (これは、私が読んだ唯一の NoSQL データベースだからです)。
また、従業員の写真やスキャンした文書、証明書の写真はどのように処理すればよいですか? 前回、画像を BLOB としてデータベースに保存するアプリに MySQL を使用しましたが、データのクエリとルックアップ中の応答が遅くなりました。