Обычно время работы вычисляется в ежегодном основании. Таким образом, если у Вас есть Соглашение об уровне обслуживания для 99,95%, это означает:
365 * 0.0005 = 0.1825 days or 4.38 hours
, Если в течение года службы существует отключение электричества и Ваша система, снижается для больше, чем, что, затем Вы ответственны за компенсацию.
С Вашего вопроса, мне не остановили сервер, работающий в EC2 приблизительно на 3 месяца теперь. Я сказал бы, что их время работы хорошо, но если у Вас есть важное приложение, у Вас определенно должно быть решение обработки отказа. Хорошее время работы только означает, что они смогут ответить на отключение электричества быстро. Даже время работы на 99,9999% не сможет сохранить Вас, если Вы не будете подготовлены к отключению электричества.
или
, как известно, работает медленно на SQL Server. Это, мягко говоря, досадно.
Попробуйте разделить его на два запроса с помощью объединения
:
WITH AllProducts AS (
select *, Row_Number() OVER (ORDER BY ProductId) AS RowNumber
from (
SELECT p.*
FROM Product AS p
WHERE p.IsEnabled=1 AND
p.BaseSku = 'KPK-3020QWC-C'
UNION
SELECT p.*
FROM Product AS p
WHERE p.IsEnabled=1 AND
CONTAINS(p.FreeTextStrings, '"KPK-3020QWC*"')
)
) SELECT * FROM AllProducts
WHERE RowNumber BETWEEN 1 AND 20;
Кажется, это хорошо работает:
WITH AllProducts AS (
SELECT p.*, Row_Number() OVER (ORDER BY ProductId) AS RowNumber
FROM Product AS p
WHERE p.IsEnabled=1 AND
(
CONTAINS(p.BaseSku, 'KPK-3020QWC-C') /* instead of p.BaseSku = 'KPK-3020QWC-C' */
OR
CONTAINS(p.FreeTextStrings, '"KPK-3020QWC*"')
)
) SELECT * FROM AllProducts
WHERE RowNumber BETWEEN 1 AND 20;
(у меня уже был индекс BaseSku FTS)