Meituan の面接官: MySQL の構造体系をわかりやすく説明し、すぐにオファーを出します
ストーリー
これからも皆さんと共有していきます、私上海の美団での面接で遭遇した専門的な質問は、当時としてはまあまあで、悪いとも良いとも言えませんが、とにかく面接官に心地よい印象を与えるものではありませんでした。
悪いです、いろいろあります。普段は元気なのですが、いざ面接になると何も考えられなくなります。
ただし、私は Java
をほぼ 5 年間 (2017 年) 開発しており、Oracle
Database (銀行のシステム)、ほとんどの場合、MySQL
データベースを使用しますが、この質問に直面したときはまだ混乱しています (弾丸を噛んでいくつか間違いを犯しました)。インデックス作成、遅いクエリ、パフォーマンスの最適化などについて質問する必要があります (これらはすべてオンラインで見つけて記憶された面接の質問であるため)。 <figure data-tool="mdnice编辑器" style="margin-top: 10px;margin-bottom: 10px;display: flex;flex-direction: column;justify-content: center;align-items: center;"><img src="/static/imghw/default1.png" data-src="https://img.php.cn/upload/article/001/273/727/6b0135fbb00d408ab4d424ca864e24bb-0.png" class="lazy" alt="Meituan の面接官: MySQL の構造体系をわかりやすく説明し、すぐにオファーを出します" ><figcaption style="max-width:90%"><br></figcaption></figure><p data-tool="mdnice编辑器" style="padding-top: 8px;padding-bottom: 8px;line-height: 26px;margin-top: 1px;margin-bottom: 1px;">今日は、<code style='font-size: 14px;padding: 2px 4px;border-radius: 4px;margin-right: 2px;margin-left: 2px;background-color: rgba(27, 31, 35, 0.05);font-family: "Operator Mono", Consolas, Monaco, Menlo, monospace;word-break: break-all;color: rgb(239, 112, 96);'>Java
開発者ですが、MySQL
のアーキテクチャ システムについて話します。 , しかし、日々の開発プロセスでは、MySQL データベースを扱うことがよくあります。会社に何かを実行できる DBA
があれば多少は良いでしょうが、DBA
が存在しないか、DBA
が役に立たない場合でも、依然として必要があります。 #MySQL のシステム全体を理解することができ、面接でお会いできることもプラスです。
SQL がどのようにクエリされるかを知りたい場合は、その前に
MySQL のシステム全体を理解するだけで済みます。言えるよ 123.
MySQL のアーキテクチャ体系を学ぶ必要があります。
MySQL について考えることがよくあります。ソフトウェア システムであるため、アーキテクチャ図があり、そのアーキテクチャはどのように構成されているかを示します。それは階層化されており、各層の機能は何ですか。
MySQL とは何ですか?
MySQL
は、スウェーデンのMySQL AB
社によって開発されたリレーショナル データベース管理システムです。Oracle
社へ。MySQL
は、すべてのデータを大規模なウェアハウスに置くのではなく、異なるテーブルにデータを保存するリレーショナル データベース管理システムです。これにより、速度が向上し、柔軟性が向上します。MySQL
はオープンソースなので、追加料金を支払う必要はありません。MySQL
は大規模なデータベースをサポートしており、数千万のレコードを持つ大規模なデータベースを処理できます。MySQL
標準の SQL データ言語形式を使用します。MySQL
は複数のシステムで使用でき、複数の言語をサポートします。これらのプログラミング言語には、C、C、Python、Java、Ped、PHP、Eifel が含まれます。 RubyやTCLなどMySQL
は、現在最も人気のある Web 開発言語である PHP を適切にサポートしています。MySQL
5,000 万件のレコードを含む大規模なデータベースとデータ ウェアハウスをサポートします。32 ビット システム テーブル ファイルは最大 4GB をサポートし、64 ビット システムは最大サイズをサポートします。テーブルファイルは8TBです。MySQL
はカスタマイズ可能で、GPL プロトコルを採用しているため、ソース コードを変更して独自のMySQL
システムを開発できます。
MySQL
のスペルに注意してください。また、多くの人が疑問に思うかもしれませんが、なぜMySQL## のロゴがあるのでしょうか。 # イルカ?
MySQL の全体的なアーキテクチャ図を見てみましょう。
MySQL アーキテクチャ図


も階層化できますか? <p data-tool="mdnice编辑器" style="padding-top: 8px;padding-bottom: 8px;line-height: 26px;margin-top: 1px;margin-bottom: 1px;">答えは次のとおりです。はい、<code style='font-size: 14px;padding: 2px 4px;border-radius: 4px;margin-right: 2px;margin-left: 2px;background-color: rgba(27, 31, 35, 0.05);font-family: "Operator Mono", Consolas, Monaco, Menlo, monospace;word-break: break-all;color: rgb(239, 112, 96);'>MySQL
の階層化と各層の機能について話しましょう。
アーキテクチャ図の階層化
上記のアーキテクチャ図を分割して、簡単に説明します。

で開発中の JDBC
など、多くのプロトコルをサポートしています。 このレイヤーは、プロジェクトの
に似ていますか?ゲートウェイに詳しくない場合でも、controller
層について理解することができます。

接続プール
は主にクライアントとデータベース間の接続の保存と管理を担当します。1 つのスレッドが 1 つの接続の管理を担当します。接続プールの導入以来、公式レポートでは、データベース接続数が 128 に達すると、接続プールを使用した場合と接続プールを使用しない場合のパフォーマンスが n 倍向上しました (とにかく、パフォーマンスが大幅に向上しました)。
以上がMeituan の面接官: MySQL の構造体系をわかりやすく説明し、すぐにオファーを出しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









MySQLは、インストールが簡単で、強力で管理しやすいため、初心者に適しています。 1.さまざまなオペレーティングシステムに適した、単純なインストールと構成。 2。データベースとテーブルの作成、挿入、クエリ、更新、削除などの基本操作をサポートします。 3.参加オペレーションやサブクエリなどの高度な機能を提供します。 4.インデックス、クエリの最適化、テーブルパーティション化により、パフォーマンスを改善できます。 5。データのセキュリティと一貫性を確保するために、バックアップ、リカバリ、セキュリティ対策をサポートします。

MySQLは、オープンソースのリレーショナルデータベース管理システムです。 1)データベースとテーブルの作成:createdatabaseおよびcreateTableコマンドを使用します。 2)基本操作:挿入、更新、削除、選択。 3)高度な操作:参加、サブクエリ、トランザクション処理。 4)デバッグスキル:構文、データ型、およびアクセス許可を確認します。 5)最適化の提案:インデックスを使用し、選択*を避け、トランザクションを使用します。

次の手順でphpmyadminを開くことができます。1。ウェブサイトコントロールパネルにログインします。 2。phpmyadminアイコンを見つけてクリックします。 3。MySQL資格情報を入力します。 4.「ログイン」をクリックします。

NAVICATプレミアムを使用してデータベースを作成します。データベースサーバーに接続し、接続パラメーターを入力します。サーバーを右クリックして、[データベースの作成]を選択します。新しいデータベースの名前と指定された文字セットと照合を入力します。新しいデータベースに接続し、オブジェクトブラウザにテーブルを作成します。テーブルを右クリックして、データを挿入してデータを挿入します。

MySQLとSQLは、開発者にとって不可欠なスキルです。 1.MYSQLはオープンソースのリレーショナルデータベース管理システムであり、SQLはデータベースの管理と操作に使用される標準言語です。 2.MYSQLは、効率的なデータストレージと検索機能を介して複数のストレージエンジンをサポートし、SQLは簡単なステートメントを通じて複雑なデータ操作を完了します。 3.使用の例には、条件によるフィルタリングやソートなどの基本的なクエリと高度なクエリが含まれます。 4.一般的なエラーには、SQLステートメントをチェックして説明コマンドを使用することで最適化できる構文エラーとパフォーマンスの問題が含まれます。 5.パフォーマンス最適化手法には、インデックスの使用、フルテーブルスキャンの回避、参加操作の最適化、コードの読み取り可能性の向上が含まれます。

手順に従って、NAVICATで新しいMySQL接続を作成できます。アプリケーションを開き、新しい接続(CTRL N)を選択します。接続タイプとして「mysql」を選択します。ホスト名/IPアドレス、ポート、ユーザー名、およびパスワードを入力します。 (オプション)Advanced Optionsを構成します。接続を保存して、接続名を入力します。

データベースから直接削除された行を直接回復することは、バックアップまたはトランザクションロールバックメカニズムがない限り、通常不可能です。キーポイント:トランザクションロールバック:トランザクションがデータの回復にコミットする前にロールバックを実行します。バックアップ:データベースの定期的なバックアップを使用して、データをすばやく復元できます。データベーススナップショット:データベースの読み取り専用コピーを作成し、データが誤って削除された後にデータを復元できます。削除ステートメントを使用して注意してください:誤って削除されないように条件を慎重に確認してください。 WHERE句を使用します:削除するデータを明示的に指定します。テスト環境を使用:削除操作を実行する前にテストします。

Redisは、単一のスレッドアーキテクチャを使用して、高性能、シンプルさ、一貫性を提供します。 I/Oマルチプレックス、イベントループ、ノンブロッキングI/O、共有メモリを使用して同時性を向上させますが、並行性の制限、単一の障害、および書き込み集約型のワークロードには適していません。
