2017-06-15 9 views
-1

私は、FTPで公開されたXMLファイルを解析することによって、巨大なmySQLデータベースを作成しています。単一のコンピュータ上でSQLジョブのキューはありますか?

、それは作るためにためにSQL INSERT INTOの膨大な量の、年齢を取ります。

はこのように、私はすべてを構築し、ダンプをバックダウンロードし、データベースを起動し、クラスタを作成することにより、AWS上でそれを構築するために自分のコードを変更しました。

しかし、私は質問を得ました。 SQLリクエストの「キュー」が送信されていますか?私のノードのすべてがデータベースに同時にリクエストを送信している場合、何が起こるのでしょうか? MySQLのオン

おかげ

+0

[MySQLの](https://dev.mysql.com/doc/refman/5.7/en/)と[SQL Serverの](https://docs.microsoft.com/en-us/sql/t- sql/language-reference)は、異なる企業によって作成された無関係の異なるソフトウェアパッケージです。正しいタグだけを使用してください。また、あなたの質問は特定の実装を指しているようですが、それはSQL言語に関する質問ではありません。 – axiac

+0

それで、タグがありますか? – MrMimic

答えて

0

あなたはオープン接続を確認するためにSHOW FULL PROCESSLISTを使用することができますし、どのようなクエリ彼らは現時点で実行されています。

そこには、要求のないキューはありませんが、いくつかの要求は、現在実行されている要求によってロックされている行やテーブルを使用しようとしているため、開始する前に、完了するまでに他の人を待ちます。

唯一の要求は、各接続のための時間に実行されます。

+0

INSERT中に1つのテーブルがロックされていることを意味しますか?そして、私のノードのすべてがDBと異なる接続を持つでしょう、私のノードの1つが挿入されているとき、データベース自体はロックされませんか? – MrMimic

+0

テーブルを格納するために使用された[エンジン](https://dev.mysql.com/doc/refman/5.7/en/storage-engines.html)に応じて、一部の操作ではテーブル全体がロックされ、他の操作では行のみがロックされますそれは使用しています。 [locking](https://dev.mysql.com/doc/refman/5.7/en/innodb-locking.html)には多くの種類があり、それらのうちのいくつか(共有ロック)は、他のリクエストがロックされた行を読み込むことを可能にします書き込みを遅らせる)、他の(排他的なロック)はロックされた行を(他の行が読み取りまたは書き込みのために)処理することを許可しません。表データを変更するステートメントは排他ロックを使用します。 – axiac

関連する問題