Модератор: Tolik
svp писал(а):Битые и несоответствующие CRC файлы в кеш сохранять не следует ни при каких обстоятельствах.
svp писал(а):Если косячит алгоритм закачки и неправильно именует тайл, то эта проблема к версии относится слабо.
svp писал(а):Если версий не учитывать вовсе, то старого варианта не останется и придётся перекачивать ошибочные участки. С версией (по приведённой выше схеме) достаточно удалить тайлы косой версии в локально накосяченом участке.
svp писал(а):Опять же можно строить тайлы карты заполнения с учётом версий и быстро находить потенциально битые участки по номеру версии.
svp писал(а):По логам следовало бы, конечно, вычислить ещё пользователя писавшего такие тайлы и попросить его не хулиганить.
svp писал(а):Чтобы лог не достиг эпических размеров определить понятие сессии и запись тайлов производить в пределах этой сессии. Логировать. соответственно, сессию вместе с баундами, в пределах которых аплоадились тайлы в этой сесссии.
svp писал(а):Именно так. Даже если тайлы на гугле не отличаются от старых, версия их уже новая. Хранить много копий одних и тех же данных нерационально. Версии же нужны. Например недавно (в пределах нескольких месяцев) обновились детальные снимки Парижа. Причём старые снимки были качественнее и с лучшей цветопередачей. Они лучше годились для печати. Были просто красивее. По данным с гугла отличить старые это тайлы или новые, по ходу, никак нельзя.
svp писал(а):При отсутствии параметра "v", повторюсь, выдавать тайлы максимальных версий. При указании конкретной версии следует выдавать тайлы с версиями НЕ БОЛЬШИМИ указанной. То есть, если нет тайла с указанной версией, то выдаём тайл с ближайшей меньшей версией.
svp писал(а):Ещё раз: битые и косые тайлы не помещаем в кеш.
svp писал(а):Если они туда как-то попали, их надо оттуда вычищать.
svp писал(а):Я там выше дважды писал,
svp писал(а):при запросе тайла i-ой версии сервер должен возвращать тайл с максимальной версией, но меньшей либо равной i. То есть Зажопинск будет виден наравне с Москвой.
svp писал(а):Проблема может возникнуть только для сформированных слоёв. Однако в правилах сервера следует запретить закачку на него сформированных слоёв. Формировать слои должны админы.
svp писал(а):При хранении тайла, помимо версии, надо хранить битовый флаг, указывающий на то, сформирован ли он, или закачан, сформированные тайлы от клиентов не принимать. Хотя эту политику, пожалуй, стоит обсудить. В крайнем можно делать приблизительное сравнение распакованных в битмапы тайлов на предмет определения различаются ли их исходники.
Parasite писал(а):Как собираемся отличать битый от небитого?
Parasite писал(а):svp писал(а):Если косячит алгоритм закачки и неправильно именует тайл, то эта проблема к версии относится слабо.
Зато это очень относится к базе - когда "первый же залетевший глючный дятел разрушит цивилизацию"©
Parasite писал(а):Как будем отличать кривой участок от правильного - при общем кол-ве тайлов, например, в миллион? Глазками смотреть?? Увольте...
Parasite писал(а):Если посреди Садового Кольца вкрячатся тайлы озера Титикака (и сами тайлы будут верными и не битыми) - то НИ ОДНО заполнение слоя тебе не покажет ошибки. А она будет.
Parasite писал(а):А если это будет написанный каким-то умником (в идеале - гуглем) бот, и пока все это вскроется - оно успеет всю базу занулить тайлами с неприличным словом?
При открытой на запись всем желающим глобальной базе - это вопрос времени. Очень небольшого.
Согласен. Лог пока не нужен. Хотя проблемного клиента в домашней сети найти можно было бы. Тем более, если лог вести в БД и фильтровать по базе. Можно хоть убрать разом все тайлы, закачанные этим юзером.Parasite писал(а):И что Вам дадут логи? Косяк-то может вскрыться и через год, и через десять (пока его визуально не заметят).
Parasite писал(а):Кто-то из предыдущих ораторов в какой-то из веток писал, что Гугль собирается публиковать список произведенных апдейтов.
Parasite писал(а):Пример:
1. Москау смотрят\выкачивают\докачивают в базу 10 раз\сут, последняя "наша" версия, к примеру - 1000.
2. Соседний с ним Зажопинск единожды выкачал единственный живущий там пионер 1раз 10мес назад, последняя наша версия - 1.
3. Клея картинку из стыка пунктов 1 и 2 - берем тайлы макс.версий с обоих и получаем зоопарк на стыке, которого не будет если клеить напрямую с гугля.
Это проблемы САС, а не сервера. Вы же сами сказали. Да и к чему придирки7 Всего не предусмотришь и не автоматизируешь. По-любому что-то придётся делать ручками. И делать будет тот кому оно надо.Parasite писал(а):svp писал(а):Ещё раз: битые и косые тайлы не помещаем в кеш.
Алгоритм отличания битого жпега от небитого - в студию. И уж тем более косого - от некосого.
Parasite писал(а):По-хорошему, надо бы передавать вместе с тайлом еще и реальные координаты откуда он был выкачан САСом, и в базу класть согласно соответствия вычисленного САСом локального кэш-пути (или еще какого-нибудб CRC, привязанного к кэш-пути ПОСЛЕ скачки) и переданных САСом координат, которые были ДО скачки. И перепроверять на стороне базы. Если совпали - то класть в базу, если нет - то безусловно отправлять принятое в /dev/null
Правда от ботов и специально запрограмированной подмены это не застрахует. Плаааавно приходим к необходимости криптования....
Parasite писал(а):svp писал(а):Если они туда как-то попали, их надо оттуда вычищать.
Кто и как будет этим заниматься?
Parasite писал(а):svp писал(а):при запросе тайла i-ой версии сервер должен возвращать тайл с максимальной версией, но меньшей либо равной i. То есть Зажопинск будет виден наравне с Москвой.
...и если гугль у себя менял этот регион - то мы у нас получаем кусок свежей, недавно выкачанной другими Москвы и старого, выкачанного единожды год назад Зажопинска, то есть == зоопарк.
Всё верно. Поэтому чекить будет каждый себе кому что нужно. Или наймём Китацев? Или напишем ИИ? Есть разумные варианты?Parasite писал(а):При слоях с зумом =>5 прочекать всё глазками становится крайне затруднительно...
Parasite писал(а):Надо просто сделать пре-модерацию закачиваемого в базу
Parasite писал(а):PS: И сделать возможность откатов аппрувленных пакетов - а то единственный пьяный пивом админ может крайне много чего наапрувить...
PPS: и все это делается на server-side стороне путем тех или иных обработчиков на пхп\перле. Код САСа менять придется только раз - на тему ориентирования ее на серверную базу, а не на локальный кэш.
svp писал(а):В свете всего этого, уважаемый Parasite, пересмотрите, пожалуйста, свои возражения.
svp писал(а):Parasite писал(а):Как собираемся отличать битый от небитого?
Также как отличаете битые тайлы в своём кеше Вы сейчас.
svp писал(а):Parasite писал(а):svp писал(а):Если косячит алгоритм закачки и неправильно именует тайл, то эта проблема к версии относится слабо.
Зато это очень относится к базе - когда "первый же залетевший глючный дятел разрушит цивилизацию"©
Это не глобальный сервер. Глючных дятлов погубит естественный отбор добропорядочных птиц.
К тому же добавление тайлов не затирает предыдущие, а добавляет новые их версии. Таким образом косые версии можно оттирать слоями.
svp писал(а):Parasite писал(а):Как будем отличать кривой участок от правильного - при общем кол-ве тайлов, например, в миллион? Глазками смотреть?? Увольте...
Вы сейчас глазами смотрите? Кому надо тот свой участок посмотрит. Чего Вы ждёте от обменника? Искусственного интеллекта?
svp писал(а):Parasite писал(а):Если посреди Садового Кольца вкрячатся тайлы озера Титикака (и сами тайлы будут верными и не битыми) - то НИ ОДНО заполнение слоя тебе не покажет ошибки. А она будет.
Нарочно искать ошибки никто не будет. Если Вы решили склеить садовое кольцо, то Вы окинув его взглядом узрите воды Титикака.
svp писал(а):1. При скачке тайлов Титикаки у кого-то что-то проглючило и они отправились по другим координатам в кеш Москвы. Тогда у этих тайлов будет версия на 1 большая чем версия нормальных тайлов Москвы. Тут нам поможет карта заполнения.
svp писал(а):Parasite писал(а):А если это будет написанный каким-то умником (в идеале - гуглем) бот, и пока все это вскроется - оно успеет всю базу занулить тайлами с неприличным словом?
При открытой на запись всем желающим глобальной базе - это вопрос времени. Очень небольшого.
Поэтому ни о какой открытой базе речь не идёт.
svp писал(а):Вы не поняли. Версия тайла увеличивается не при каждом аплоадинге, а при каждой загрузке на сервер тайла отличного от стоявшего уже по этим координатам. То есть по сути мы сверху того тайла положим ещё один. Говоря о показе тайлов с параметром v=3 мы имеем виду. что надо показать тайлы не выше третьего. То есть если он был один, то с него и снять нечего.
svp писал(а):Кому не нужен зоопарк, тот подкачает Зажопинск.
svp писал(а):Как это происходит и сейчас в локальном кеше.
svp писал(а):В общем это уже частный случай и проблема именно тех. кому не нужен зоопарк.
svp писал(а):Parasite писал(а):svp писал(а):Ещё раз: битые и косые тайлы не помещаем в кеш.
Алгоритм отличания битого жпега от небитого - в студию. И уж тем более косого - от некосого.
Это проблемы САС, а не сервера. Вы же сами сказали. Да и к чему придирки? Всего не предусмотришь и не автоматизируешь. По-любому что-то придётся делать ручками. И делать будет тот кому оно надо.
svp писал(а):Parasite писал(а):svp писал(а):Если они туда как-то попали, их надо оттуда вычищать.
Кто и как будет этим заниматься?
Тот, кому это надо. Как? Хранение разных версий тайлов, голова на плечах и форум ему помогут. Мы делаем не коммерческий проект, а открытый и полулегальный, держащийся на одном лишь энтузиазме. Никаких гарантий.
svp писал(а):Проблема есть только если Зажопинск обновлялся гуглом вместе с Москвой дважды, а выкачан, в отличие от Москвы, был единожды. И это проблемы не сервера, а того, кому нужна картинка без зоопарка. Самую свежую версию всегда можно сделать ровной (без зоопарка) прокачав всю недостающую территорию.
svp писал(а):Parasite писал(а):При слоях с зумом =>5 прочекать всё глазками становится крайне затруднительно...
Всё верно. Поэтому чекить будет каждый себе кому что нужно. Или наймём Китацев? Или напишем ИИ? Есть разумные варианты?
svp писал(а):Конкретно и по пунктикам сочиняем ТЗ. Кто с чем конкретно не согласен и имеет альтернативные предложения, то пишем кратко и по существу.
svp писал(а):Короче спорить я не буду. Про версии тайлов меня не поняли и понимать, видимо, не желают.
svp писал(а):Уважаемый Parasite, набросайте план реализации http-сервера для обмена кешем. Выделите там этапы, первоочередные задачи и всё такое. Ну чтобы понятно было как делать. Иначе с мёртвой точки дело не сдвинется.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12