Рекомендуемый способ хранения rich text для веб приложения

Всем привет! Мир всем, это мой первый вопрос здесь, заранее спасибо за ответы.

Я делаю сайт, в котором хочу предоставить пользователям возможность добавлять свои красиво оформленные куски страницы, заметки. С линками, изображениями, видео, стилями и тд. Каждую заметку надо будет привязать к записи в БД. Сами заметки по смыслу будут представлять собой текстовый атрибут объекта, скажем описание. Но не просто текст, а некий rich text. В настоящее время думаю, что это будет HTML, вероятно фрагмент HTML, состоящий из корневого элемента <p> или <div> с вложенными элементами. Размер HTML может варьироваться в широких пределах. Все эти данные желательно иметь возможность хранить долго, переносить куда надо при необходимости, делать бэкапы по времени, и масштабировать систему.

На бэкэнде - Linux сервер с базой MySql и приложение на .Net. Можно MongoDb привлечь, если это дает какие то преимущества. Или еще какую-то нужную подсистему.


Как лучше всего в данной ситуации хранить Rich Text заметки?

Видятся варианты:

  1. Хранить HTML в поле таблицы MySql
  2. Хранить закодированный base_64 или иначе HTML в поле таблицы
  3. Хранить в файле, а в поле таблицы держать имя файла
  4. Хранить в облаке, а в поле таблицы держать адрес в облаке

Есть ощущение, что хранение сырого HTML в таблице MySql может дать нежелательные эффекты, да и encoded тоже как-то не очень эффективно. С файлом возникают сомнения о том, не изобретается ли велосипед, плюс необходимость дополнительного обслуживания, бэкапов, дискового пространства и т.д. С облаком есть сомнения, что хранение данных не у себя на сервере может обернуться теми или иными нежелательными и неконтролируемыми результатами.

Какой подход к хранению таких данных рекомендуется?


Ответы (0 шт):