無料ポイントインタビュアー:Linuxを使ったことはありますか? 私:はい インタビュアー:メモリ使用量を確認したいのですが、どのようなコマンドを使用すればよいでしょうか? 私: インタビュアー:では、freeコマンドでどのような情報を見ることができるのか教えてください。 私:下の図に示すように、メモリとキャッシュの使用状況を確認できます
インタビュアー:使用済みのキャッシュ(バフ/キャッシュ)をクリーンアップする方法をご存知ですか? 私:えーっと…分からない インタビュアー: 私: (無料ポイント、とても嬉しいです) 大きなメリットがあります。キャッシュをクリアすると、使用可能なメモリ領域が増えます。PC の xx ガードの小さなロケットのように、クリックすると大量のメモリが解放されます。 インタビュアー:えーっと…戻って通知を待ちましょう SQL 結合インタビュアー:話題を変えて、Join についてのあなたの理解についてお話ししましょう。 私:OK(また間違えたら終わりなのでチャンスを逃さない) レビューSQLの
インタビュアー: プロジェクト開発で 私:小規模なデータ規模と大規模なデータ規模の 2 つの状況があります。 インタビュアー:それから? 私:
インタビュアー: つまり、 私:はい インタビュアー:なぜですか? バッファ私:結合ステートメントを実行するときは、比較プロセスが必要です。 インタビュアー:はい 私: 2 つのテーブルを 1 つずつ比較するのは遅いので、2 つのテーブルからデータを 1 つずつ 下の図に示すように、 インタビュアー:それ以外に何かありますか? 大前提私:どんなプロジェクトでも最終的にはオンラインになり、データの生成は避けられません。そして、データの規模が小さすぎることはあり得ません。 インタビュアー:その通りです。 私: データベース内のデータのほとんどは、最終的には MySQLのInnoDBエンジンを例に挙げる
確認する 私:これは、テーブルに接続するために必要な数のファイルを読み取る必要があることを意味します。インデックスを使用できますが、それでもハードディスクのヘッドを頻繁に移動する必要があります。 インタビュアー:つまり、頭を頻繁に動かすとパフォーマンスに影響が出るということですね? 私:そうですね、 インタビュアー: そうです。Linux 私: なぜキャッシュが 1.2G 以上を占有しているのですか? インタビュアー:考えたことはありますか?
味わう、じっくり味わう 数分間考えた後 私: インタビュアー:必ずしもそうとは限りません。 私:そうなんですか? 「CSAPP」(コンピュータシステムの詳細な理解)の一文を覚えています
人間の言葉に翻訳すると、 Linuxはメモリをハードディスクのキャッシュとして扱うことになる。 インタビュアー:これで、その簡単な質問に答える方法がわかりましたね? 私:私は… 結合アルゴリズムインタビュアー: もう一度チャンスをください。Join アルゴリズムを実装するように頼まれたら、どうしますか? 私: インデックスがない場合は、ネストされたループが役立ちます。インデックスがある場合は、それを使用してパフォーマンスを向上させることができます。 インタビュアー: 私:スキャンプロセス中に、データベースはテーブルを選択し、返したいデータと他のテーブルと比較したいデータを インタビュアー:インデックスがある場合はどのように対処しますか? 私:これは比較的簡単です。2つのテーブルのインデックスツリーを読み取って比較するだけです。インデックスがない場合の対処方法を紹介します。 ネストループ結合 ネストされたループは、毎回テーブル内の 1 行のデータのみを読み取ります。つまり、outerTable に 100,000 行のデータがあり、innerTable に 100 行のデータがある場合、 もちろん、現在このアルゴリズムを使用しているデータベースエンジンはありません(遅すぎるため)。 ブロックネストループ
MySQL InnoDB は、インデックスが利用できない場合にこのアルゴリズムを使用します。 次の2つのテーブル インデックスを使用して結合操作を実行できない場合、InnoDB は自動的に 要約する学生時代、データベースの先生はデータベースのパラダイムについてよくテストしてくれました。働き始めて初めて、パフォーマンスがすべての基礎であるべきだということを学びました。冗長性が可能な場合はそれを使用します。それが本当に不可能で、 これで、コード標準で SQL ステートメントに結合が多すぎないようにする必要がある理由に関する記事は終了です。SQL ステートメントに結合が多すぎないようにする必要がある理由の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: ie8/ie9/ie10/ie11 chrome firefox を区別するための CSS コード
>>: iframeを指すaタグのターゲットの名前とIDの違い
多くの人は、Scss を使用する瞬間からコンパイル方法を説明されてきました。したがって、コマンドのコ...
MySQL での置換例の詳細な説明replace into は insert と似ていますが、rep...
ページが非常に長い場合は、下にさらにコンテンツがあることをユーザーに知らせるために矢印が必要になるこ...
Microsoft IE 5.0 がリリースされる前は、Web プログラミングにおける最大の課題は、...
シナリオシミュレーション:国内企業の中には、重要な業務をサポートするために特定のウィンドウ プログラ...
場合によっては、MySQL が公式に提供しているテスト ライブラリに基づいてテスト データを作成し、...
目次序文コンポーネントライブラリの作成主要な構成の変更ディレクトリレイアウトの調整ライブラリ構築のた...
1. ip_hash: ip_hash は、送信元アドレス ハッシュ アルゴリズムを使用して、サーバ...
1. 対応するNode.jsパッケージを見つけます。https://nodejs.org/downl...
目次1. ビューフック1. ngAfterViewInit および ngAfterViewCheck...
1: nginx のインストール方法については詳しく説明しません。Baidu で検索してください。 ...
1. Iframe タグの使用<br />Iframe については、「忘れられた隅」に放...
目次1. プロトタイプモード例1例2例3 2. オブザーバーパターン1. プロトタイプモードプロトタ...
目次1. ユーザーを追加する2. ユーザー名とホストを変更する3. パスワードを変更する4. ユーザ...
1. MySQL ユーザー管理[例1.1] ローカルMySQLサーバーのテストデータベースにroot...