Все, что я узнал в школе, был SQL, который сохраняет данные в таблицы. Сейчас я работаю над проектом, где данные хранятся в XML-файлах. Кроме того, каждый XML содержит ссылку на визуальные файлы (JPEG).
Сам XML содержит более тысячи координатных точек, а также дополнительную информацию о данных.
На мой взгляд, не имеет смысла хранить эту информацию в таблицах. Кроме того, я не мог хранить JPEG-файлы вместе с SQL.
Какое было бы подходящее решение или есть ошибка в рассуждениях на моей стороне?
Как видите, я довольно новичок в базах данных. Так что любые конструктивные предложения, ссылки и советы приветствуются.
database-design
xml
チ ー ズ パ ン
источник
источник
Ответы:
Все, что вам нужно, это постоянство вашего XML. Используйте решение NoSQL или файловую систему.
Использование СУБД бесполезно, если только вы не хотите использовать ее вместо NoSQL или файловой системы.
источник
Я закладка Фил Фактора блог Нормирование и «Anima Notitia Copia» сегодня , как это аккуратно суммирует аргументы в пользу и против нормализации определенных типов данных. Запустите следующий запрос для экземпляра SQL и посмотрите, согласны ли вы.
Вы упомянули, что файл XML содержит «дополнительную информацию о данных». Есть ли польза в моделировании этих метаданных в реляционной базе данных, возможно, для целей допроса? Если это так, может быть случай для извлечения соответствующих данных и сохранения оставшегося XML в качестве типа документа XML.
Аргумент Фила Фактора заключается в том, что нереляционные поля в реляционной базе данных вполне приемлемы, если поле рассматривается как атомарное, то есть оно не изменяется, или когда изменяется целое поле, а не его составная часть. Естественным расширением этого является то, что если ваш документ содержит элементы, которые вас интересуют, может быть целесообразно применить реляционную модель к этим элементам.
Относящийся к вопросу, но в первую очередь к фразеологии, последняя цитата Фила:
Разве мы не все!
источник
Что касается баз данных Oracle, ответ - вы не можете . Все данные в базе данных хранятся в таблицах, даже метаданные. Данные могут храниться в очередях, но это просто другой способ использования таблиц. XML-файлы могут храниться вне базы данных, но это не соответствует вашим требованиям «в базе данных».
Выходя за рамки поставленного вопроса, файлы JPEG или любые другие файлы могут быть сохранены в базе данных. Им потребуется таблица и столбец больших объектов (BLOB или CLOB). XML также может храниться таким образом, но импорт данных XML в базу данных позволит вам работать с данными способами, которые сейчас нелегко сделать. Это также обеспечит другие преимущества баз данных, включая: сокращение избыточности, доступность, параллелизм, масштабируемость, совместимость, безопасность, восстановление и производительность.
Если преимущества базы данных не способствуют достижению ваших целей, не используйте ее.
источник
Мне кажется, что вы пытаетесь реализовать пространственную базу данных . Это своего рода реляционная база данных (или дополнение к существующим продуктам баз данных, например, Oracle Spatial, postGIS), которая поддерживает функции типов пространственных данных и используется для оптимизации хранения и запросов данных, относящихся к пространственным объектам, таким как полигональные границы, точки и слои. XML, который у вас есть, звучит как пары координатных границ, а связанные изображения звучат как графические ресурсы, отображаемые на этой границе. Если данные подходят, рассмотрите реляционную пространственную базу данных, которая предлагает встроенное пространственное моделирование, чтобы обеспечить функциональность, которую в противном случае вам было бы сложно или трудоемко реализовать.
источник