|
|
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
Прошу комментариев от специалистов, которые проектировали реализации динамических подгрузок данных на карты типа Яндекс. Есть задача, реализовать интерфейс с динамически загружаемыми данными на карту типа Яндекс.(пример http://www.cian.ru/sale/flat/2708215) Тип данных статистический - результирующая сумма по выборке из БД, которую и необходимо спроектировать. Объем данных большой (полная выборка доходит до 10 в 8 степени), особое требование - отсутсвие задержек в отображении информации при перемещении по карте. Предполагаю, что как раз время выполнения запроса и будет тем самым узким местом, которое тормозит обновление данных на карте. Из исходных данных пока только набор данных с определенной структурой, которую можно переформатировать. Предстоит решить следующие вопросы: - технологию реализации БД; - вопрос оптимизации структуры БД; - технологию реализации интерфейса; По поисковым системам нашел много чего, но в этой куче инфы пока разбираюсь. Очень бы хотел ознакомиться с примерами реализаций похожих механизмов. ДА), сейчас данный механизм реализован в ДОТнете на базе Fireberd, выборка с пересечением из 6 таблиц.\ - вообщем жутко тормозит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 14:55 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
10 в 8 степени чего? woron_al...Предполагаю, что как раз время выполнения запроса и будет тем самым узким местом, которое тормозит обновление данных на карте... предполагаю, что Вы не правы woron_al- технологию реализации БД; - вопрос оптимизации структуры БД; предполагаю, что это СИЛЬНО глубоко вторично и СВЯЗАНО со следующим пунктом woron_al- технологию реализации интерфейса; И чем будет отрисовываться карта. После этого, вариантов выбора структуры будет не так уж и много. Будет завязано на вендора картографического софта. IMHO & AFAIK Oracle Map Viewer ? woron_alсейчас данный механизм реализован в ДОТнете на базе Fireberd, выборка с пересечением из 6 таблиц.\ - вообщем жутко тормозит. Механизм чего? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 14:59 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
Если проблема просто с группировками/агрегацией данных - возьмите какую нибудь книжку "DWH для чайников", почитайте. Откройте для себя звезда / снежинка, GROUP BY, материализованные представления и так далее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:01 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
woron_alПредполагаю, что как раз время выполнения запроса и будет тем самым узким местом, которое тормозит обновление данных на карте ерунда. отключите прорисовку и убедитесь, что временем выполнения селекта можно пренебречь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:02 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
Oracle Map Viewer ? woron_alсейчас данный механизм реализован в ДОТнете на базе Fireberd, выборка с пересечением из 6 таблиц.\ - вообщем жутко тормозит. Механизм чего?[/quot] На данный момент подобная карта существует в описанном выше варианте , а механизм - средство отображениякарты ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:10 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
Так объясните, что такое 10 в 8 степени? Это чего? Точек, линий, полигонов? Товарные чеки которые нужно просуммировать? приход/уход со склада? Или просто байты? П.С. Ссылка на Ваш пример на cian не работает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:12 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
Азагашworon_alПредполагаю, что как раз время выполнения запроса и будет тем самым узким местом, которое тормозит обновление данных на карте ерунда. отключите прорисовку и убедитесь, что временем выполнения селекта можно пренебречь то, что тормозит запрос, при выборке данных, это точно, даже проводились на этот счет исследования, те сам запрос выполняется долго, а карта (существующий сегодня вариант) практически статична и проблем с ее выводом нет. Но необходимо перевести ее на динамическое обновление данных, вот в этом мой вопрос и заключается.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:13 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
Какой запрос? Что тормозит? При чем тут карта (если она не тормозит)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:14 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
- Приборы - 42 - Что "42" ? - А что "приборы" ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:15 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
Leonid KudryavtsevТак объясните, что такое 10 в 8 степени? Это чего? Точек, линий, полигонов? Товарные чеки которые нужно просуммировать? приход/уход со склада? Или просто байты? П.С. Ссылка на Ваш пример на cian не работает 10 в 8 степени записей в БД при полной выборке, те это максимальное число, которое может выдать запрос при подсчете количества записей. Данные то статистические. Ну грубо говоря необходимо подсчитать сколько магазинов в конкретном городе, в базе есть сведения, какой магазин в каком городе, на карту пользователь тырк и ему выводиться сообщение , что в этом городе столько-то (20 например) магазинов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:16 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
woron_al, для меня эта задача новая, поэтому и обратился к Вам... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:18 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:23 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
Leonid Kudryavtsev Oracle Map Viewer ? спасибо за рекомендацию, изучаю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:25 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
woron_al особое требование - отсутсвие задержек в отображении информации при перемещении по карте. Это достигается кэшированием соседних участков, пока клиент пялится на заданный, а не особо хитрой структурой БД. В целом Вам имхо надо определиться, нужно ли Вам динамическое суммирование или нет - по Вашему примеру на карту пользователь тырк и ему выводиться сообщение , что в этом городе столько-то (20 например) магазинов получается что скорее нет (т.е. пользователь может выбрать ограниченное кличество точек (в Вашем примере - городов) и по ним и только по ним получить статистику). Если пользователь может задать на карте произвольный полигон и сказать "А посчитай-ка мне количество обьектов в этом полигоне" - тут да, придется юзать OLAP в полный рост. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:27 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
[quot Кот Матроскин]woron_al на карту пользователь тырк и ему выводиться сообщение , что в этом городе столько-то (20 например) магазинов получается что скорее нет (т.е. пользователь может выбрать ограниченное кличество точек (в Вашем примере - городов) и по ним и только по ним получить статистику). Если пользователь может задать на карте произвольный полигон и сказать "А посчитай-ка мне количество обьектов в этом полигоне" - тут да, придется юзать OLAP в полный рост. полигонов, задаваемых пользователем не предвидится, но в зависимости от масштаба карты сведения указывать по городам\районам\областям\краям\республикам\ федеральным округам\ странам ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:41 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
пользователь не выбирает места на карте, данные, сами по факту отображения карты подгружаются на нее ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:42 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
woron_al полигонов, задаваемых пользователем не предвидится, но в зависимости от масштаба карты сведения указывать по городам\районам\областям\краям\республикам\ федеральным округам\ странам Классическая задача из учебников, гуглить по словам "OLAP географическая иерархия" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:48 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
woron_alДанные то статистические. Ну грубо говоря необходимо подсчитать сколько магазинов в конкретном городе, в базе есть сведения, какой магазин в каком городе, на карту пользователь тырк и ему выводиться сообщение , что в этом городе столько-то (20 например) магазинов. А нафига их "считать"? Простенькая табличка: город (объект, точка на карте) - кол-во объектов Считается ОДНИ раз и ВСЕ. Нафига в динамике пересчитывать? Как реализовывать обновление информации в таблице со статистикой - зависит от БД. В Oracle можно на триггерах, можно на матвиев, можно на уровне прикладного софта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:48 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
Leonid Kudryavtsevworon_alДанные то статистические. Ну грубо говоря необходимо подсчитать сколько магазинов в конкретном городе, в базе есть сведения, какой магазин в каком городе, на карту пользователь тырк и ему выводиться сообщение , что в этом городе столько-то (20 например) магазинов. А нафига их "считать"? Простенькая табличка: город (объект, точка на карте) - кол-во объектов Считается ОДНИ раз и ВСЕ. Нафига в динамике пересчитывать? Как реализовывать обновление информации в таблице со статистикой - зависит от БД. В Oracle можно на триггерах, можно на матвиев, можно на уровне прикладного софта. Пересчитывать необходимо, так как база постоянно обновляется по содержанию, те количество в разных городах может меняться. Вот этот "В Oracle можно на триггерах" момент мне интересен, я его тоже рассматриваю, ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:56 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
woron_alПересчитывать необходимо, так как база постоянно обновляется по содержанию, те количество в разных городах может меняться. Поскольку количество обновлений обычно гораздо меньше чем количество выборок, имеет смысл пересчитывать хранимые агрегаты при изменениях. PS: В Firbird в отличие от Oracle таблицы не мутируют, триггера можно применять без ограничений. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 16:15 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovworon_alПересчитывать необходимо, так как база постоянно обновляется по содержанию, те количество в разных городах может меняться. Поскольку количество обновлений обычно гораздо меньше чем количество выборок, имеет смысл пересчитывать хранимые агрегаты при изменениях. PS: В Firbird в отличие от Oracle таблицы не мутируют, триггера можно применять без ограничений. Либо я не понял что вы имеете в виду, либо - в нашем случае хранить результаты выборок не целесообразно, так как их неопределенное количество (по всем городам + несколько критериев по каждому магазину в городе), отсуда и проблема, что необходимо выполнять запрос на выборку с параметрами в момент обращения пользователя. Есть мысль кэшировать результаты выборок например в Тимес Тен Оракл и в случае повторного обращения от туда их подавать, как Вам такой вариант? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 16:42 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
woron_alЕсть мысль кэшировать результаты выборок например в Тимес Тен Оракл и в случае повторного обращения от туда их подавать, как Вам такой вариант? Exadata - ваше всё. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 16:46 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
Кот Матроскинworon_alполигонов, задаваемых пользователем не предвидится, но в зависимости от масштаба карты сведения указывать по городам\районам\областям\краям\республикам\ федеральным округам\ странам Классическая задача из учебников, гуглить по словам "OLAP географическая иерархия" Спасибо за совет, возможно придется создавать пересеченные таблицы из которых уже выводить результат на карту, и периодически обновлять эти таблицы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 16:47 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovworon_alЕсть мысль кэшировать результаты выборок например в Тимес Тен Оракл и в случае повторного обращения от туда их подавать, как Вам такой вариант? Exadata - ваше всё. Буду знать, спасибо за совет думаю это слишком серьезная штука, для решения моей задачи)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 16:52 |
|
||
|
Разработка БД под задачу реализации динамической карты
|
|||
|---|---|---|---|
|
#18+
woron_alЛибо я не понял что вы имеете в виду, либо - в нашем случае хранить результаты выборок не целесообразно, так как их неопределенное количество (по всем городам + несколько критериев по каждому магазину в городе) Сомневаюсь, что во всем мире 10 в 8 степени городов. Таким образом, замена представления информации на разрез "по городам" на ПОРЯДКИ уменьшает кол-во обрабатываемой информации. Что там может быть "не целесообразно" и "неопределенное количество", я не знаю. Кол-во городов понятие достаточно определенное, реформы, типа Учреждение о губерниях 1775 г. Екатерины II случаются достаточно редко. AFAIK. woron_alзапрос на выборку с параметрами в момент обращения пользователя Можно, конечно, и в момент обращения. Хозяин - барин. Тогда это называется DWH (data warehouse), агрегация, matview, в Oracle может даже сам matview под запросы подкладывать. woron_alЕсть мысль кэшировать результаты выборок например в Тимес Тен Оракл и в случае повторного обращения от туда их подавать, как Вам такой вариант? Хороший вариант. У богатых свои причуды. Захотите купить лицензии на Тимес Тен - обращайтесь. Так же можем и консалтинг продать. Вообще, продать можем почти все!!! Были бы у Вас деньги. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 16:57 |
|
||
|
|

start [/forum/topic.php?fid=32&startmsg=38641087&tid=1540887]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
163ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
2ms |
| others: | 240ms |
| total: | 508ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...