сохранение записей в Mysql ИЛИ текстовых файлах

#mysql #database-design

#mysql #база данных-дизайн

Вопрос:

Недавно у меня появился проект по созданию скрипта для генерации последовательных ключей для программного обеспечения какой-то компании. Сначала моя идея заключалась в сохранении в разных таблицах MySQL для каждого программного обеспечения. От меня требовалось сгенерировать 2000 уникальных кодов ключей для каждого из их 10 программных продуктов. Услышав, что они запрашивают такое количество данных, я решил сохранить данные в разных текстовых файлах.

Теперь я думаю о сплошной таблице MySQL с 10 столбцами для каждого программного обеспечения и сохранением 2000 серийных ключей в столбцах в текстовом формате.

каждый последовательный ключ представляет собой код из 10 целых чисел и не повторяется.

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

В этом случае, я думаю, что сохранение в текстовых файлах — лучшая идея, поскольку база данных MySQL не справляется с таким гигантским объемом данных, но я не уверен в безопасности этого действия.

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

Что вы предлагаете?

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

1. «В этом случае, я думаю, что сохранение в текстовых файлах — лучшая идея, поскольку база данных MySQL не справляется с таким огромным объемом данных, но я не уверен в безопасности этого действия». MySQL разработан для обработки больших объемов данных! В конце концов, это база данных . Кроме того, это не так много данных.

2. «В этом случае, я думаю, что сохранение в текстовых файлах — лучшая идея, поскольку база данных MySQL не справляется с таким огромным объемом данных, но я не уверен в безопасности этого действия». Я не фанат MySQL. Но ваше мышление по этому поводу настолько отсталое, что ставит под сомнение ваше суждение. Если вам небезразличен этот клиент, передайте его более опытному разработчику.

Ответ №1:

Я не понимаю, почему сохранение этих данных в базе данных MySQL может быть проблемой, например, вы можете создать две простые таблицы, подобные следующим :

 Table : programs  
  -id - INT [PK]
  -name - VARCHAR(50)


Table : serials 
   -id - INT [PK]
   -p_id - INT [FK] ---> programs.id
   -scode - INT  (the program serial)
  

Одна таблица (программы) содержит список программы (это своего рода перечисление доступных программ), другая содержит серийный номер программы, относящийся к конкретной программе в таблице programs .

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

1. Они говорят о 25000 последовательных ключах, и считывание такого объема данных и их сохранение зависит от высокой загрузки исходного кода сервера. Но если я решу сэкономить это количество на файлах, доступ будет простым и быстрым, но не уверенным в безопасности.

2. @MacTaylor — Пожалуйста, следуйте этому дизайну. Вы не хотите изменять таблицы вашей базы данных и переписывать ваше приложение каждый раз, когда вы добавляете новую программу.