• Как настроить Synology Moments и Drive, чтобы в Moments попали фото из photo?

    Я для себя первый вопрос решил через монирование каталога с фотографиями к директории homes. Для этого в планировщике задач добавил задание:

    mount --bind /volume1/photo /volume1/homes/MyUser/Drive/Moments/Collections
    Ответ написан
  • Каким алгоритмом распределить товары в БД по заказам покупки, если допустимы расхождения?

    На мой взгляд эта задача относится к менеджерским, а не айтишным. Есть хорошая поговорка: говно на входе - говно на выходе. И тогда задача формулируется иным образом: как построить процесс, чтобы он выдавал чистые данные. Описанный случай явно требует человеческого участия. И тогда остается лишь вопрос: кому и как отдать эту функцию. Жизнь "бедолаги" можно облегчить, если дать ему инструмент: рекомендательную систему что и с чем можно сопоставить. Ее можно построить любым подходящим способом. Например, через расстояние Левенштейна.

    Таким образом, мой ответ такой: я бы менял процесс и вводил правила для сотрудников.
    Ответ написан
    Комментировать
  • В чем принципиальное отличие между подходами нормализованного хранилища (по Инмону) и многомерного хранилища (по Кимбаллу)?

    Принципиальная разница в скорости разработки и внесения изменений.
    Допустим, нам нужно отдать несколько витрин о продажах с немного разной логикой разным заказчикам.
    Кимбалл: построим их на источниках! Да у них будет очень похожая логика загрузки, но зато мы сделаем это быстро. Увы, единой правды у нас при этом скорее всего не получится. Когда хранилище станет большим, придется тратить много усилий на поддержку т.к. изменения в источнике нужно будет учитывать в нескольких местах.
    Инмон: Сначала номализуем все и сделаем единую версию правды. В данном случае разложим все продажи в едином для всех виде. а над ней уже построим все витрины, которые нужны пользователям, где реализуем именно ту логику, которая нужан им.

    По сути, хранилище можно начать строить, опираясь на любой подход. Если начать с Кимбалла, то в итоге рано или поздно родятся какие-то промежуточные таблицы с единой правдой и модель станет похожа на datavault. Если начинать с datavault'а, то все равно придется иногда делать кастомные витрины на источниках, когда нужна не единая правда, а именно та логика, которую хочет пользователь. Таким образом, в реальности мы получаем некую смесь этих двух подходов.
    Ответ написан
    Комментировать