SASGIS - SAS.Планета |
View Issue Details |
|
ID | Project | Category | View Status | Date Submitted | Last Update |
0001647 | SAS.Планета | [All Projects] Хотелка | public | 22-10-2012 03:58 | 18-05-2016 19:17 |
|
Reporter | Parasite | |
Assigned To | zed | |
Priority | normal | Severity | tweak | Reproducibility | N/A |
Status | resolved | Resolution | fixed | |
Platform | Windows | OS | Server | OS Version | 2003 |
Product Version | 121010 | |
Target Version | 160606 | Fixed in Version | 160606 | |
|
Summary | 0001647: Автоматическая разбивка выделения на несколько потоков скачки |
Description | Часто бывает нужно выкачать какую-нибудь весьма изощренную по форме но немаленькую по площади область. Обрисовав ее разово и начав закачку по полигону - получаем прокачку в один поток. Для того чтобы быстрее выкачать - нужно открывать несколько потоков но со смещением слева (для уже работающих тредов). При сложном полигоне - обрисовывать\выделять все это ручками по многу раз есть гимор.
Прошу на вкладке "СКАЧАТЬ" сделать фичу "Разбить выделение на ХХ частей" (по типу "Разбить склейку на Х файлов" на вкладке "СКЛЕИТЬ"), при указании коего соответственно и открывать заданное число окошек скачки.
Разбивать можно по общему числу тайлов, например (если 1000 тайлов в выделении, и разбивать на 4 потока - то соответственно открывать 4 окошка с нуля, с 250, с 500 и 750го тайлов соответственно). Наверное можно даже через "эмуляцию загрузки SLS" сделать - там можно указывать с какого тайла начинать полигон, и окошко при этой "вирт.загрузке" откроется само... На усмотрение программеров, короче. :) |
Steps To Reproduce | |
Additional Information | |
Tags | VIP |
Relationships | related to | 0000134 | confirmed | | Многопоточная закачка \ отдельный качальщик |
|
Attached Files | |
|
Issue History |
Date Modified | Username | Field | Change |
22-10-2012 03:58 | Parasite | New Issue | |
22-10-2012 04:02 | Parasite | Description Updated | bug_revision_view_page.php?rev_id=4676#r4676 |
22-10-2012 04:42 | Tolik | Note Added: 0009655 | |
22-10-2012 06:35 | Parasite | Note Added: 0009659 | |
22-10-2012 06:53 | Tolik | Note Added: 0009660 | |
22-10-2012 06:53 | Tolik | Relationship added | duplicate of 0000134 |
22-10-2012 08:22 | Parasite | Note Added: 0009664 | |
22-10-2012 08:22 | Parasite | Note Edited: 0009664 | bug_revision_view_page.php?bugnote_id=9664#r4682 |
22-10-2012 08:23 | Tolik | Relationship replaced | related to 0000134 |
22-10-2012 08:24 | Parasite | Note Edited: 0009664 | bug_revision_view_page.php?bugnote_id=9664#r4683 |
22-10-2012 08:25 | Tolik | Note Added: 0009665 | |
22-10-2012 08:25 | Tolik | Status | new => feedback |
22-10-2012 09:02 | Parasite | Note Added: 0009666 | |
22-10-2012 09:02 | Parasite | Status | feedback => new |
22-10-2012 09:24 | vasketsov | Note Added: 0009668 | |
22-10-2012 09:28 | Tolik | Note Added: 0009669 | |
22-10-2012 09:29 | Tolik | Note Edited: 0009669 | bug_revision_view_page.php?bugnote_id=9669#r4685 |
22-10-2012 09:54 | Parasite | Note Added: 0009671 | |
22-10-2012 09:55 | Parasite | Note Edited: 0009671 | bug_revision_view_page.php?bugnote_id=9671#r4687 |
22-10-2012 14:54 | vdemidov | Note Added: 0009678 | |
22-10-2012 15:52 | Tolik | Note Added: 0009686 | |
22-10-2012 17:15 | Parasite | Note Added: 0009688 | |
22-10-2012 17:23 | Parasite | Assigned To | => Parasite |
22-10-2012 17:23 | Parasite | Status | new => feedback |
22-10-2012 18:04 | vdemidov | Note Added: 0009689 | |
22-10-2012 18:04 | vdemidov | Status | feedback => resolved |
22-10-2012 18:04 | vdemidov | Resolution | open => won't fix |
22-10-2012 18:04 | vdemidov | Status | resolved => closed |
13-05-2016 12:46 | zed | Assigned To | Parasite => zed |
13-05-2016 12:46 | zed | Status | closed => assigned |
13-05-2016 12:47 | zed | Tag Attached: VIP | |
13-05-2016 12:47 | zed | Resolution | won't fix => reopened |
13-05-2016 12:47 | zed | Target Version | => 160606 |
13-05-2016 12:48 | zed | Note Added: 0017210 | |
18-05-2016 19:17 | zed | Status | assigned => resolved |
18-05-2016 19:17 | zed | Fixed in Version | => 160606 |
18-05-2016 19:17 | zed | Resolution | reopened => fixed |
Notes |
|
(0009655)
|
Tolik
|
22-10-2012 04:42
|
|
Кстати, и правда, почему качает в 1 поток (если открыть только 1 окно скачивания)?
Но делать (опциональную) многопоточную скачку так не надо. Зачем разбивать полигон на части? Можно просто послать одновременно N запросов на N последовательных тайлов. |
|
|
|
>Можно просто послать одновременно N запросов на N последовательных тайлов.
Можно-то можно, но последние телодвижения по тикету 134 (совершенно внезапно - тоже моему) были полтора года назад... :( |
|
|
(0009660)
|
Tolik
|
22-10-2012 06:53
|
|
Значит, закрывать как дубль? |
|
|
(0009664)
|
Parasite
|
22-10-2012 08:22
(edited on: 22-10-2012 08:24) |
|
C чего бы дубль-то, если совершенно о разных сущностях тикеты? Разбитие полигона на N процессов никоим образом не дублирует многопоточности в каждом из этих процессов - и уж тем более может быть реализовано независимо друг от друга.
Общая цель (быстрая скачка) - да, достигаться будет быстрее в обоих случаях. Но дубля тут ни разу нет - в данном конкретном тикете просится минимизация работы по ручному разбитию сложного полигона на N условно-равнозначных частей. А уж выюзать коннект на полную можно весьма многими [при этом не обязательно дублирующимися] способами. 2 способа = 2 тикета. :)
|
|
|
(0009665)
|
Tolik
|
22-10-2012 08:25
|
|
Ок, идея другая, но цель та же (многопоточная скачка). Нужно ли кому-нибудь автоматическое разбиение полигонов на N частей само по себе? |
|
|
|
Тикет, собссно, к тому что я считаю что его ввести в работу много проще (в САСе уже всё нужное есть, см. "SLS" выше) чем непосредственно "честную" многопоточную закачку (для которой придется перелопатить всю САСовую качалку - и ждать который мы будем еще долго, а потом еще кучу времени ловить глюки и баги).
Это просто заход к той же проблеме но с другой стороны. Я, собссно, через SLS и делаю сабж - редактируя их ручками. Но - гимор же... А как только появится честная многопоточность - то и ЕЩЕ лучше будем качать уже и в каждом из тех потоков. :) |
|
|
|
>закрывать как дубль?
Это никакой не дубль. Там про "отдельный качальщик" и ни слова о реализации "многопоточки". Тут исключительно про "многопоточку".
>просится минимизация работы по ручному разбитию сложного полигона на N условно-равнозначных частей
Госпаде. Какая может быть минимизация работы, если это простейший итератор, который вернёт только тайлы с нужной сравнимостью по модулю числа потоков? Например для 2 - отдельно качаются все чётные, отдельно - все нечётные. Просто параметр, сколько тайлов пропустить (от 0 до N-1) при переходе к Next. Всё. С этим как раз никаких проблем.
>для которой придется перелопатить всю САСовую качалку
Пока что не вижу причин для перелопачивания. |
|
|
(0009669)
|
Tolik
|
22-10-2012 09:28
(edited on: 22-10-2012 09:29) |
|
Да уж, надо было с самого начала 0000134 разделить на 2:
1. многопоточность в сасе (запрос параллельно нескольких тайлов, как vasketsov написал)
2. отдельная фоновая качалка (предсказуемо уходит в 2015 год)
А этот - разделение полигонов - можно закрыть, если будет сделан п.1.
|
|
|
(0009671)
|
Parasite
|
22-10-2012 09:54
(edited on: 22-10-2012 09:55) |
|
>Какая может быть минимизация работы
"..по РУЧНОМУ разбитию сложного полигона...", очевидно ж. То есть - того, что я делаю сейчас, пока "простейшие итераторы" в 134й уже полтора года пешком так и не пришли.
>для 2 - отдельно качаются все чётные, отдельно - все нечётные.
Как вариант. Правда, при произвольной остановке либо неравной скорости скачки каждого второго - будем иметь прокачанную дырявую "шахматную доску" по всему полигону (которой еще нельзя пользоваться) а не полностью прокачанную область слева (которой пользоваться можно)...ну да некритично, я думаю.
>разделение полигонов - можно закрыть, если будет сделан п.1.
Можно и так. Обсуждать, соответственно - там, а не тут.
|
|
|
|
Та ну нафиг такой прон только ради многопточности закачки по региону делать? Ее можно гораздо проще добавить и без этого. Недостаток только в том, что непонятно будет как определять последний обработанный тайл при сохранении sls. И в логе закачки будет полная каша. |
|
|
(0009686)
|
Tolik
|
22-10-2012 15:52
|
|
Нафиг такой прон == Closed - won't fix :) |
|
|
|
>Ее можно гораздо проще добавить и без этого.
Каким образом?
Дано: выделение по России, 800 с гаком точек. Полигон.
Надо: прокачать по максимуму моего канала. Скажем, 100 параллельных потоков на время от пары месяцев до года.
КАК??
>непонятно будет как определять последний обработанный тайл при сохранении sls. И в логе закачки будет полная каша.
Никакой каши не будет - каждый поток будет работать точно так же, как если бы он был перевыделен\открыт ручками (то есть - качают каждый сам по себе и не зная о соседях). Сейчас же каша никого не смущает, если я открою ручками сотню окошек?
От тикета требуется всего лишь открыть их - всю ту сотню со смещениями - автоматом. Всё.
Ну или предложите свой вариант указанной в первых строках этого поста задачи. Возможно, что и действительно есть изящное решение - а мужики-то и не знают. Мне без разницы за реализацию - главное чтобы кэш получался быстрее. Коннект - позволяет, САС - нет. |
|
|
|
Просто сделать вместо мютекса семафор и ставить любое вменяемое число запросов в очередь какое понравится. Но то что это легко, не значит что я собираюсь это реализовывать в ближайшем будущем. |
|
|
(0017210)
|
zed
|
13-05-2016 12:48
|
|
|