質問

いてdjango申しながら、飲料、冷援助をすべて:のみを用いORMな文書のカスタムSQL.

本ページのサイト(一次ンインタフェースユーザーがお過ごし80%-90%の時間が遅いだ大量のユーザーの特定のコンテンツ(写真、友人、その他のデータなど)

うたのsqlロガー(pre-イpinaxるんで設定)を想像データがあり、驚きで報道されている 500データベースのクエリ!!手コードsql私はほとんど走った以上に50以上の最も複雑なのです。

後から振り返ってみるすべてではないと驚きですが、こうしたばらつきはできません。

でも---ない場合は、十数のクエリを取1ms+

さん、英語上級者の方にお尋ね どのくらいでオーバーヘッドがオンライン旅行mysql?django、mysqlの稼働を サーバー うべきではないので他のネットワーク関連オーバーヘッド。

役に立ちましたか?

解決

あのクエリ。

  1. 使用 .filter().all() くろうを選び、表示機能(またはテンプレートによ {%if%}).Pythonを処理できるバッチの行の高速イナリを使用しています。

    "もお送りするのではないか、などのテンプレート".真んの行は少なSQLます。測定前にご確認ください。

    これが何に使いるときに書いたSQL.なので間違いのORMには、最適な原DB仕事の処理の機能をテンプレートを作成します。

  2. を避けるクエリのナビゲーションのテンプレートを作成します。だけど、{{foo.バーがあります。baz.quux}},SQLを取得するために使用されるの bar に伴う foo, その baz に関連する bar, その quux に伴う baz.きを抑制する効果が期待できるのでこのクエリー事業の一部のご注意 .filter() タ処理を組み立て有用なタプルの機能です。

    こういうときの手SQL.この場合には、集まる大きなバッチのORM管理されたオブジェの表示機能なフィルタリングPythonではなくより多くの個人ORMます。

    これは当てはまりませんのORM.での使用から多くの質問を少し大きます。

他のヒント

かを使用していORMえてくるということではないんだ性能を調整することがあります。

私はいま、ホームページの用途が低い。また、こういうやっていたのは何百ものクエリを表示するページです。行ってみると自分のコードを実現したことを大切に使用 select_related() 私の質問があり、データのもたら何百ものクエリの数十.

を実行することもできSQLプロファイラに合わせな指標があれば最も共通の問合せ-ご存知の標準データベース。

キャッシュはまたお友達がいいと思います。多くページが変更させていただきます。データベースに問い合わせ毎に時間がかかる?

ドはっきり言ってくださいのORMは、あり実際に試したほうがよいでしょう使うのだから、Django理念 いない結婚で.

また利用法が学び、チューニングのORM ーナビなかった、まだできない標準ク使用原料のためのsqlる場合があります。

オーバーヘッドの各クエリの一部でしかな画像になります。実際の往復時間をDjango、Mysqlサーバであろうから多くの質問があらためて以下のつのミリ秒の大きな問題は、このクエリを発行へのリモートセンシングセンターで素早く倒します。500問合せページにはいくらでも50うような変則的な形になっています。がされたユーザーの複雑なページだけの立ち上がりから入りたいです。5000ます。

の往復時間、データベースサーバの要因の場合、呼び出し側がアクセスデータベースから広域ネットワーク、roundtripsき間20ms、100ms.

思うに、何らかのキャッシュ.

あのオーバーヘッドをデータベースの通話は、お客様のオーバーヘッドがない その 悪いので、データベースは同じ機械ではありませんネットワークの遅延が大きなコストです。

た場合は、ご請求のデータベースでご準備サービスの要請をすることによっていろんなことを含む:

  • 資源配分メモリバッファ、テーブルなど)のデータベースサーバー接続/スレッドの取り扱開示等の求めに対し、
  • ドを直列化するsqlと、パラメータ(これは必要なものの一つのマシンを導入したことで、この間のリクエストの処理を使用していない限り、組込みデータベース)
  • かどうかの確認のクエリが存在するクエリのキャッシュのない場合は最適化でとるのは、理に適っていると思います。
    • また、ご質問なparametrised(その値の区切られていないからSQL)この結果、キャッシュのヒントのための諸表すべきと同じ意味をそれぞれの要求の結果の照会され、分析され、最適化されます。
  • 工程を返します。
  • 準備をするサービスです。

これは単な概要のダやココロはいろいろなことはほとんどのデータベース管理システム工SQLます。生じるこ架500回の場合でも、クエリ自体が比較的によい。ボトムラインデータベースの相互作用もに地域データベースなどの安とします。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top