0

フォーマットされたクエリがフォーマットされていないクエリよりも時間がかかるのはなぜですか? また、クエリを何度も実行したことに注意してください(したがって、プランのキャッシュが考慮されます)

memsql はクエリ形式の処理が苦手ということですか?

たとえば、次のクエリを試しました(フォーマットなし)

select count(*) from users where users.rep > 5;
+----------+
| count(*) |
+----------+
|      589 |
+----------+
1 row in set (0.01 sec)

しかし驚くべきことに、同じクエリをフォーマットすると、より多くの時間がかかります

SELECT
  COUNT(*)
FROM
  users
WHERE
  users.rep > 5 ;
+----------+
| count(*) |
+----------+
|      589 |
+----------+
1 row in set (1.39 sec)
4

1 に答える 1

1

memsql では、最初にクエリを実行するときにコードのコンパイルを待つ必要があり、書式設定されたクエリは書式設定されていないクエリとは "異なるクエリ" と見なされます。空白が重要です!フォーマットされたバージョンをもう一度実行してみてください。

一般に、MemSQL クエリは 2 回目に実行するまで高速ではありません。http://docs.memsql.com/4.0/concepts/codegen/
を参照してください。

于 2015-09-08T14:27:56.353 に答える