2016-07-17 2 views
0

私は非常に大きなJsonオブジェクトを持っています。これは、nosqlデータベースに入れたいものです。 私は知りたいですjsonオブジェクトを自動的にデータベースに入れる方法は?

  • まず、そのJsonオブジェクトに基づいてデータベーススキーマを生成する方法はありますか?
  • 2番目に、このオブジェクトをデータベースに自動的に配置する方法はありますか?(jsonオブジェクト内の)どの値がデータベース内のどの列に入るかを手動で指定する必要はありませんか?

私は十分にはっきりしていたと思います。ありがとう!

答えて

0

あなたが特に使用しているNoSQLデータベースを指定していないので、便宜上、実装固有のことについて話をするときはMongoDBを使用していると仮定します。

まず、NoSQLデータベースは本質的に「スキーマレス」であることがわかります。あなたはまだ独自のスキーマを実装することができます(データベースではなくアプリ内)。これはオプションです。ほとんどの場合、検証目的のために、または将来の開発者にデータの計画構造をよりよく理解させるために行われます。詳しく知るには、this articleのDynamic Sc​​hemasのセクションを読んでください。 Here is a SO answer explaining how you would do that in mongooseおよびhere is the official guide/doc for it.

第2に、NoSQLデータベースは列または行に関して機能しません。むしろ、コレクションや文書の観点から考える必要があります。あなたの質問に答えるには:はい、JSONオブジェクトを持っているときは、(上記のようなスキーマを実装している場合は必要な書式を適用する前に)JSONオブジェクトを直接移動します。値でデータ値を入力することはありません(意図的に設定しない限り)。

NoSQLが他のDBMSに属する概念に混乱しているように見えるため、基本的な理解を強化する必要があることは間違いありません。 Here is a neat slideshow to get you startedthe previous article I linked you toもまともなご紹介です。
完了したら、MongoDBなどのインストールを検討し、コマンドラインインターフェイスを使い遊んでみてください。

+0

貴重なご返信ありがとうございました!これは私が実際に行ったことです:mongodbはスキーマレスなのでスキーマは不要で、mongodbがJSON型のストレージエンジンであるため、jsonオブジェクトをそのまま保存して照会することができます。再度、感謝します。 – Omar

+0

jsonオブジェクトが非常に大きいので、コレクションが切り捨てられないようにするにはどうすればよいですか? – Omar

+0

問題ありません。すでにMongoDBのハングアップを取得しているように見えます。 私が知る限り、jsonオブジェクトをそのまま(つまりフィルタを適用しないで)保存すると、オブジェクトは切り捨てられません。 [この記事](https://docs.mongodb.com/manual/core/document/)によると、Mongoの最大文書サイズは16MBなので、文書が馬鹿げていない限り、あなたはうまくいくと思います。 – EnKrypt

関連する問題