私はPHP/mySQL/CodeIgniterをかなり使用して、SQL文を記述してデータを処理/操作しています。私は基本的なことをすべてやっていると感じています。私はMongoDB、スキーマレスデータベースについて良いことを聞いてきました。MongoDB/NoSQLデータベースの紹介が必要です
MySQLでは、スキーマはモデルの構造を理解するのに役立ちます。通常、私は、ID、タイトル、説明、日付のような基本的なものを持つクラス図を描きます。
MongoDBは非常にシンプルなように見えますが、どこから始めるのが難しいですか。私が聞く/読んだことから、スキーマはありません。どのようなタイプが返されるのかはどのように分かりますか?
モデルを作成するにはどうすればいいですか?異なる「テーブル」間にリレーションを追加するにはどうすればよいですか?
リレーションを追加してデータをマップする標準的な方法は何ですか?私はそれを試してみましたが、私がしていたことが正しい方法であるかどうかは分かりませんでした。
私はマニュアルなどを読んでみましたが、mSQLからMongoDBへの移行を助ける良い記事が見つかりませんでした。
私はのmySQLとMongoDBのとモデルの比較を見ることができましたとにかくありますか? CRUDのような単純なもの。
どのようにすれば始めることができますか?
が、唯一のあなたがリクエスト間のものを保管場所として使用しているデータベースを考えてみてください。あなたのデータベースはあなたのアプリケーション*ではなく、あなたのアプリケーション(コード)はあなたのアプリケーションです。データベースは* persistence *のためだけに存在します。これは、モデルがデータベースを表す場所ではなく、クラス/オブジェクトがモデルを表す、適切で完全なOOPアプローチに適しています。 – deceze
@deceze基本的には、データベースではなく、アプリケーションに応じてモデルを設計します。 – tpae
正しい状態を具現化するクラス/オブジェクトを使用してビジネスロジックを直接実装し、この状態がビジネスロジック( 'private'プロパティ、setterなど)。データベースは、スクリプトが終了した後にその状態を保持するためのものです。 – deceze