MySQL против XML против скорости и эффективности обычного текстового файла

#php #mysql #xml #csv

#php #mysql #xml #csv

Вопрос:

Я хочу знать, какой был бы наиболее эффективным и, следовательно, самым быстрым способом сохранения и проверки «флага нового порядка» (NOF)

Цель состоит в том, чтобы избежать накладных расходов на систему онлайн-заказа еды для франшизы пиццы.

В серверной части каждые 3 /-минуты функция AJAX проверяет NOF, если это true / 1 / yes, запрашивает базу данных и получает все текущие заказы для магазина. Если заказов нет, он просто сбросит таймер и проверит снова через 3 / — минуты.

Когда заказ размещен, он вставляется в базу данных, и NOF будет обновлен для соответствующего магазина.

существует около 15 отдельных хранилищ. Мне также необходимо сохранять временную метку каждый раз, когда выполняется проверка.

Я могу хранить временную метку и NOF в том же var, что и 11 символов. строка, первые 10 которой являются отметкой времени, а последние — T / F или Y / N или 1/0

Итак, каков был бы наилучший способ хранения / проверки NOF / метки времени?

Спасибо

Комментарии:

1. «в том же var» — плохой выбор. ВСЕГДА используйте собственные типы при хранении в БД, никогда «составное» поле. используйте поле timestamp / datetime и поле bit для ваших двух значений. Смысл реляционной базы данных в том, чтобы иметь возможность СВЯЗЫВАТЬ данные. если вы помещаете несколько независимых битов данных в поле, вы лишаете БД возможности автоматически выполнять эти реляционные операции.

Ответ №1:

Похоже, ты все слишком усложняешь. Если в таблице есть поле для времени создания заказа (например, tcreated), а другое — для времени его завершения (tcomp, по умолчанию равно NULL), то ваш запрос каждые 3 минуты просто проверяет наличие строк, ГДЕ tcomp РАВНО NULL.

Комментарии:

1. Как было предложено, я мог бы просто запросить всю таблицу заказов, отфильтровать только те, которые относятся к одному хранилищу, а затем проверить все эти заказы на NULL в столбце «timeRecived», но это, похоже, требует больше работы, чем тестирование одного ответа bool либо из 1 столбца таблицы в 1 строке, либо из одного файла. Я предполагаю, что я хочу знать, как наиболее эффективно (с наименьшими ресурсами и быстрее всего) проверять наличие новых заказов?