zed писал(а):Так научите, как прикрутить хоть какую базу к sas, и желательно, с пошаговой инструкцией, и с того момента, где я ничего ни про базы, ни про перлы не знаю, и ни разу не слышал. Что установить, где это скачать, какие и где именно настройки нужно производить.
Без вышеупомянутой нужной переделки кода самого SASа это будет сложнее. Допустим, автор САСа согласен изменить код. Тогда в общем и целом - последовательность действий такова:
1. Ставим Апача (
http://www.apache.org). Настраиваем под локалхост, запускаем, забываем.
2. Ставим мускул (
http://www.mysql.com). Настраиваем, запускаем, создаем нужную базу, забываем.
3. Ставим интерпретатор перла (сложнее в программировании) либо PHP (проще, для нубов). Прикручиваем модуль к апачу, забываем.
3.1 Для легкости управления базой данных - ставим пакет MyPHPadmin, прописываем конфиг до базы, забываем.
На этом установку доп.софта можно считать законченной.
Чтобы не париться со всем вышеперечисленным - можно просто качнуть и поставить пакет Денвер (
http://www.denwer.ru), там все это есть и уже настроенное на дефолтные пути (кои элементарно меняются в конфигах). Общий размер пакета 3 (ТРИ) мегабайта на всё.
Идеальная сборка для отладки тестовых проектов.
Далее:
4. Создаем два файла get.php и put.php (ну или .pl). Это будут наши основные гейты на получение и сохранение в БД. пути ображения к ним будут, соответственно,
http://localhost/put.php?параметры--->,
http://localhost/get.php?параметры--->. Параметров может быть сколь угодно много, и их можно будет добавлять впоследствии без перекачивания всей базы. На наст.момент, как я вижу - нам нужны параметры "id карты","X" блока на этой карте, "Y" блока и "Zoom". Для начала.
5. Путем элементарнейшего кодинга обучаем первый файл - брать BINARY из базы данных согласно полей в <---параметры--->, а второй - соответственно, ложить в базу данных согласно полей <---параметры--->.
6. Соответственно, для получения тайла из кэша SAS должен будет обратиться по адресу, к примеру,
http://localhost/get.php?id=1&x=2&y=4&z=3 и взять выданный сервером бинарник либо текстовый репорт (если тайла нет, к примеру). А для сохранения в кэш -
http://localhost/put.php?id=1&x=2&y=4&z=3 + сам бинарник как аттач.
При введении такой схемы открывается широчайшее поле для творчества: например, можно хранить разные версии одних и тех же тайлов в БД (добавляем параметр "version"), можно отмечать в БД тайлы которые ранее проверялись на сервере и не существовали (например, вместо бинарника класть #00 и анализировать оное при выдаче в get.php), можно делать какие угодно репорты из БД (например сравнение между версиями и точный вывод всех мест которые были изменены гуглем в новой версии), можно как угодно выводить информацию (например гуглевый вид со спутника по состоянию "год назад" + дороги из VE по состоянию на щас + ландшафт + карта) итд итп. Можно вообще не качать SASом, а просто передавать сгенерированный прямой УРЛ в get.php, который и будет выкачивать в фоновом режиме и хоть в десяток потоков и напрямую класть в кэш... А банальным изменением
http://localhost/ на
http://vasya_pupkin/ - можно элементарнейше подключиться к БД соседа, который тоже пользуется данной программой, и делать все вышеуказанное уже на базе его кэша...........итд итп.
PS: именно схема обработчика запросов+БД и сделана в гуглевом ГЕ. Правда, она там на порядки более сложная, ну да этого в данном вопросе и не требуется.