Как и где хранить текущие данные истории покупок клиентов?

#database #csv #database-design #firebase-realtime-database

#База данных #csv #база данных-дизайн #firebase-realtime-база данных

Вопрос:

Сейчас я работаю над проектом, который требует отображения истории транзакций одного клиента и того, находится ли продукт, который покупает клиент, на гарантии или нет. Мне нужно использовать данные из текущей системы, система может предоставить веб-API, который представляет собой .csv файл. Итак, как я могу использовать текущие системные данные?

Решение, о котором я думаю, состоит в том, чтобы загрузить все .csv файлы и написать сценарии для вставки каждой записи в созданную мной базу данных, которая содержит необходимые таблицы и отношения для хранения данных, которые я извлекаю. Тогда у меня может быть новая база данных, которую я хочу. потому что я никогда не делал этого раньше, поэтому я хочу знать, возможно ли это?

И еще один вопрос: должен ли я хранить данные локально или использовать облачную базу данных, такую как Firebase?

Ответ №1:

Высокопроизводительные базы данных, такие как SQL Server и Oracle, поставляются с утилитами, которые позволяют читать непосредственно из файла csv. Проверьте документы. Проделав это много раз, лучшей процедурой, которую я нашел, было считывание файла в одну таблицу хранения. Это дает вам возможность изучить данные и найти любые неожиданные ошибки или недостающие поля. Это позволяет корректировать данные, где это возможно.

Затем напишите сценарии для перемещения данных из таблицы хранения в соответствующие таблицы, которые вы разработали. Это должно быть сделано логическим образом. Например, переместите данные клиента перед транзакциями покупки. Таким образом, любые сообщения об ошибках, которые вы получаете, не будут связаны с тем, что вы пытались сохранить транзакцию до сохранения клиента. (У вас будет настроена ссылочная целостность, да?) Это дает вам больше шансов исправить или скорректировать данные или просто более или менее выявить проблемы на досуге.

Хранить или не хранить данные в облаке строго в соответствии с предпочтениями вашего работодателя.