Проектирование БД
Модератор: Модераторы
Проектирование БД
Доброго времени, уважаемым коллегам.
Не то, чтоб прямо совет нужен... Просто хочу услышать размышления... По этому и в потрепаться...
Сабж: БД (SQL) в которой будет куча инфы. База резюме. Будет спонтанное кол-во картинок у каждого соискателя. Возможно видео.
Кто из вас как-бы спроектировал такое-вот чудо?
Я знаю и про блобы и про все такое ) И работать с базами тоже умею ) Просто интересно послушать мнения... И для потомков полезно будет, да и мы может что новое для себя ухватим...
Если не по нраву кому - прошу извинить...
Не то, чтоб прямо совет нужен... Просто хочу услышать размышления... По этому и в потрепаться...
Сабж: БД (SQL) в которой будет куча инфы. База резюме. Будет спонтанное кол-во картинок у каждого соискателя. Возможно видео.
Кто из вас как-бы спроектировал такое-вот чудо?
Я знаю и про блобы и про все такое ) И работать с базами тоже умею ) Просто интересно послушать мнения... И для потомков полезно будет, да и мы может что новое для себя ухватим...
Если не по нраву кому - прошу извинить...
я за блобы.. удобно когда логика программы совмещена с данными. интеграция с другими продуктами без боли будет.
Добавлено спустя 3 минуты 37 секунд:
Добавлено спустя 3 минуты 37 секунд:
Ууу, это просто потрепаться или желание увидит всю готовую работу?Deimos писал(а):Кто из вас как-бы спроектировал такое-вот чудо?
Ууу, это просто потрепаться или желание увидит всю готовую работу?
Я понимаю, как это выглядит, но нет... (Я заранее извинился за это). Я правда могу спроектировать это сам. Мне интересен брейншторм, если он получится. И новые, возможно, упущенные мной, идеи.
З.ы. Я написал именно в "потрепаться".
З.ы.1 Если появится на форуме ветка брейншторм, то я был бы рад, и, по возможности (свободном времени, желании) принимал бы участие
З.ы.2 Это не дипломный проект. Мне правда интересны мнения тех, кто пишет не так, как я...
- Снег Север
- долгожитель
- Сообщения: 3067
- Зарегистрирован: 27.11.2007 15:14:47
- Контактная информация:
Решение сильно зависит от оценок размера файлов. Если несколько мегабайт, то можно хранить в блобах. Если десятки и выше - в файловой системе, а в базе - пути.
Делал аналогичную штуку, называется БД "Патенты". Именно из-за того, что "патенты", все картинки хранятся в базе. Картинки, описание изобретения и реферат - в блобах. В обязательном порядке полнотекстный индекс, иначе будет долгий поиск по контексту. Хотя, если не предполагается полей с чем-то типа, как например в литинституте при приёме на учёбу требуется предоставить рассказ, стихи или перевод, то полнотекстовый индекс не нужен.
Vadim писал(а):Делал аналогичную штуку, называется БД "Патенты". Именно из-за того, что "патенты", все картинки хранятся в базе. Картинки, описание изобретения и реферат - в блобах. В обязательном порядке полнотекстный индекс, иначе будет долгий поиск по контексту. Хотя, если не предполагается полей с чем-то типа, как например в литинституте при приёме на учёбу требуется предоставить рассказ, стихи или перевод, то полнотекстовый индекс не нужен.
Надеюсь, не для гражданина Квасенкова делали сие чудо)))
Я-бы завел отдельное хранилище для файлов, которое имеет апи. И на выходе, к примеру, выдает id/guid файла, который-бы и хранился в базе.
- serbod
- постоялец
- Сообщения: 449
- Зарегистрирован: 16.09.2016 10:03:02
- Откуда: Минск
- Контактная информация:
Если база данных может работать как портативная (на флешке) и хранится в одном файле (плюс необязательные файлы - индексы, журнал, блокировки) - то лучше картинки держать в блобах. Проще будет копировать.
В любом случае, все картинки в отдельной таблице, так будет проще перейти на папку с файлами (или обратно), если возникнет необходимость. И ссылаться по уникальному идентификатору (GUID), а не по имени файла, при этом текстовое представление GUID в качестве имени файла вполне годится.
Видео в БД держать не стОит никак, просто потому, что из БД его не получится воспроизвести, а из файла - запросто, хоть локально, хоть через сеть.
В любом случае, все картинки в отдельной таблице, так будет проще перейти на папку с файлами (или обратно), если возникнет необходимость. И ссылаться по уникальному идентификатору (GUID), а не по имени файла, при этом текстовое представление GUID в качестве имени файла вполне годится.
Видео в БД держать не стОит никак, просто потому, что из БД его не получится воспроизвести, а из файла - запросто, хоть локально, хоть через сеть.
а если блоб ограничен размером в 1Тб?Снег Север писал(а):Если несколько мегабайт, то можно хранить в блобах. Если десятки и выше - в файловой системе, а в базе - пути.
можно узнать сколько можно, а сколько уже не надо..
Добавлено спустя 6 минут 15 секунд:
serbod писал(а):Видео в БД держать не стОит никак, просто потому, что из БД его не получится воспроизвести, а из файла - запросто, хоть локально, хоть через сеть.
все можно, главное обеспечить битрейт..
если посмотреть на контейнеры(avi,mkv,mpeg4..) это упаковщики фреймов,кадров,звуковых сэмплов. та же БД с ключевым полем времени или кадром. Никто не запрещает иметь свой упаковщик.
Добавлено спустя 4 минуты 46 секунд:
debi12345 писал(а):SQLITE3...SQLITE3...SQLITE3...
PostgreSQL!!!
debi12345 писал(а):SQLITE3...SQLITE3...SQLITE3...
Мысль понятен, но он не подходит. Операторов 2+
olegy123 писал(а):PostgreSQL!!!
Никогда не использовал(обычно Maria). Просмотрел инфу по верхам. Почему так категорично? Действительно на столько стабильней, как обещают?
java73 писал(а):Надеюсь, не для гражданина Квасенкова...
Сия фамилия мне неизвестна...
olegy123 писал(а):а если блоб ограничен размером в 1Тб?
это ж сколько будет занимать база только с одним терабайтным блобом? И сколько после бекапа? А если бекапов несколько? Это ж никакого железа не хватит...
