
Maxim
30.03.2017
11:05:25
если читать куски таблицы в массив, можно лавировать между размером потребляемой памяти и частотой запросов к базе, изменяя количество читаемых строк
я так на похапе с итераторами делал)

Dmitry
30.03.2017
11:06:28
Тоесть поверх этой штуки еще один Range сделать который в себе будет значения по n аккумулировать?

Shorty(Ale Chapa) Manskiy
30.03.2017
11:06:40

Google

Dmitry
30.03.2017
11:09:25
Да определенно я что-то смогу, но оно будет очень постредственное. Я на соседнем факультете ИЗО видел, что у некоторых оно как на первом курсе не идет, так и к шестому курсу после тысячей часов наработки выгледело все хреново

Pavel
30.03.2017
11:10:47
Так тут фишка в том что даже рисуя офигительные картины но не обладая харизмой и маркетингом не прийти к успеху и признанию.
И D тому самый яркий пример. Все кто его смотрел говорят что он очень крутой и фичастый, однако на нем никто ничего не пишет :)

Maxim
30.03.2017
11:13:47


Shorty(Ale Chapa) Manskiy
30.03.2017
11:22:21
Да определенно я что-то смогу, но оно будет очень постредственное. Я на соседнем факультете ИЗО видел, что у некоторых оно как на первом курсе не идет, так и к шестому курсу после тысячей часов наработки выгледело все хреново
Я тебе уже писал про пять лет изучения английского - пять лет и никакого толку.
Если я сейчас приеду к учителям, то они скажут - ну ты и пиздабол, может ты все это время после школы учил английский, по-этому что-то да можешь, за пятнадцать лет то сложно ничиго не добиться, и нестранно что писать не можеш, а только читать, учытывая то как ты немог его в школе.

Maxim
30.03.2017
11:24:10
а с чего вообще у вас спор начался?)

Dmitry
30.03.2017
11:24:36
>Не получится, я так понимаю, этот Range на каждую строку генерирует запрос к БД,
С чего ты взял?
>а с чего вообще у вас спор начался?
С тезиса о том, что врожденные предпосылки крайне важны и что идет у одного очень легко второму может даваться с огромным трудом или не даваться вообще

Maxim
30.03.2017
11:26:27

Pavel
30.03.2017
11:26:31
Так это легко проверить, включи логи на базе и погоняй эти Range. Посмотри какие там запросы прилетают и по скольку записей запрашивается.

Shorty(Ale Chapa) Manskiy
30.03.2017
11:26:47

Maxim
30.03.2017
11:29:36
по поводу рисования точно могу сказать, что есть люди с врожденным чувством композиции, перспективы и цвета, и им художественные науки даются гораздо легче, чем остальным)
сам с таким сталкивался

Google

Maxim
30.03.2017
11:31:16
опять же, по поводу музыки - есть люди с врожденным абсолютным слухом, им гораздо легче, чем остальным, петь или играть на безладовых инструментах

Shorty(Ale Chapa) Manskiy
30.03.2017
11:32:09
Видимо Давинчи родился с умением рисовать, и первый его рисунок был произведением искусства

Maxim
30.03.2017
11:32:13
почти наверняка есть такая же склонность и к инженерным дисциплинам, каким-то людям гораздо легче, чем остальным, строить у себя в голове сложные абстрактные модели)
естественно, это не отменяет того, что нужно усердно трудиться, чтобы развить свои врожденные склонности, и не значит, что кто-то без таких склонностей не сможет добиться успеха

Shorty(Ale Chapa) Manskiy
30.03.2017
11:33:51

Maxim
30.03.2017
11:34:56
точно так же развивается слух и чувство композиции, но есть люди с _врожденными_ склонностями, которым для развития этих способностей необходимо прикладывать гораздо меньше усилий

Shorty(Ale Chapa) Manskiy
30.03.2017
11:36:06
нет, откуда такие сведения, как проверить что у человека есть склонность?

Maxim
30.03.2017
11:36:19
это видно)

Shorty(Ale Chapa) Manskiy
30.03.2017
11:36:44
это видно - это твое предположение

Maxim
30.03.2017
11:37:07
у меня, например, есть склонности к изучению иностранных языков, и в школе мне изучение английского давалось гораздо легче, чем одноклассникам)

qwe
30.03.2017
11:37:10

Shorty(Ale Chapa) Manskiy
30.03.2017
11:38:23

Grigirii
30.03.2017
11:38:24

Shorty(Ale Chapa) Manskiy
30.03.2017
11:38:35

Dmitry
30.03.2017
11:38:58
@laladrik ты Савельеву не доверяешь? Он же кучу книг написал и я что-то не встречал тех кто его мнение оспаривает...

qwe
30.03.2017
11:39:33

Dmitry
30.03.2017
11:40:18
Посмотри на Ютубе "Савельев Мозг человека"

Maxim
30.03.2017
11:40:26

Dmitry
30.03.2017
11:40:26
у него так же куча книг по этой теме

Grigirii
30.03.2017
11:40:44
и ещё по поводу чанков: если это postgres, то лучше вообще использовать курсоры, они дадут честную линейную сложность

Google

Dmitry
30.03.2017
11:42:22
про Range тут есть ResultSet с интересным описанием:
"A random access range of Row.
This is being considered for deprecation in a future release of mysql-native, because the same thing can be achieved by passing a ResultRange to std.array.array(). "
т.е. метод std.array.array(). превращает ResultRange в полный массив в памяти, так что ли?

Grigirii
30.03.2017
11:42:48
да

qwe
30.03.2017
11:43:03

Grigirii
30.03.2017
11:43:15
array любой range превращает в массив

Dmitry
30.03.2017
11:43:16
А как оно может превращать то? Ждет когда все элементы будут собраны?

Shorty(Ale Chapa) Manskiy
30.03.2017
11:43:18

Grigirii
30.03.2017
11:44:20
если проитерироваться по ResultRange, то будут все элементы. вот он и итерируется, вставляя по одному в массив

Shorty(Ale Chapa) Manskiy
30.03.2017
11:44:33
если знать меру конечно

Dmitry
30.03.2017
11:44:51
Grigirii если ResultRange получает данные по одному запросу, то приведение его к array будет очень медленным?

Grigirii
30.03.2017
11:45:17
да, по запросу на элемент

Maxim
30.03.2017
11:45:31

Grigirii
30.03.2017
11:45:37
но это по скорости то же самое, что сделать foreach по нему

Dmitry
30.03.2017
11:46:09
но если сразу все элементы получить, то получается это быстрее будет чем по одному запросу отправлять?

Shorty(Ale Chapa) Manskiy
30.03.2017
11:46:26

Grigirii
30.03.2017
11:47:39
я не силён в конкретном апи, но ResultRange - результат одного запроса, а значит выполняется он единожды

Shorty(Ale Chapa) Manskiy
30.03.2017
11:47:53
т.е. по твоему получается предрасположенность может меняться?

Grigirii
30.03.2017
11:48:00
тут нужен код, который обсуждать, абстрактно не получится дальше

Dmitry
30.03.2017
11:48:10
Grigirii из его описания "The rows are downloaded one-at-a-time, as you iterate the range"
https://github.com/mysql-d/mysql-native/blob/4eaf5c6bb57d4ca852aa7fa5e8d2cd8810c0808a/source/mysql/commands.d#L265

Google

Grigirii
30.03.2017
11:49:21
передаются по одному ещё не значит, что запрос многократно выполняется

Shorty(Ale Chapa) Manskiy
30.03.2017
11:49:36

Dmitry
30.03.2017
11:50:21
@adhoc но Савельев говорит обратное
и он все же изучением мозга занимался десятки лет

qwe
30.03.2017
11:51:13
Может хватит оффтопа?

Maxim
30.03.2017
11:51:16
савельев слишком эпатажен)

qwe
30.03.2017
11:51:37
Создайте чат и там обсуждайте

Maxim
30.03.2017
11:52:06
да тут все равно толком ни о чем не разговаривают, чего бы не пофлудить слегка?)

Shorty(Ale Chapa) Manskiy
30.03.2017
11:52:09

Admin
ERROR: S client not available

Dmitry
30.03.2017
11:52:20
ok

Pavel
30.03.2017
11:52:55

Shorty(Ale Chapa) Manskiy
30.03.2017
11:53:07
Савельев - как его звать то?

Maxim
30.03.2017
11:53:21

Dmitry
30.03.2017
11:59:36
Ближе к теме канала. А какие алгоритмы сейчас используются для поиска кратчайшего пути? Щас все в сторону ML ушло и разных ИИ?

Grigirii
30.03.2017
11:59:59
кратчайшего пути где?
если это простой граф, то Дейкстра всё ещё актуален

Dmitry
30.03.2017
12:00:22
ну граф дорог к примеру

Grigirii
30.03.2017
12:00:36
ни ИИ ни ML в этой теме не нужен
для графов размером с мир Дейкстра конечно слабоват, но есть куча отличных алгоритмов, умеющих строить индекс графа и быстро искать

Google

Grigirii
30.03.2017
12:01:39
и все они построены на https://ru.wikipedia.org/wiki/Динамическое_программирование

Dmitry
30.03.2017
12:01:53
А графовые БД кто нить использовал?

Grigirii
30.03.2017
12:05:48
запрос ушёл на сервер, сервер стал отвечать. Отвечать ему много, поэтому отвечает небольшими пачками. Драйвер вычитывает приходящее по сети по мере итерирования по результату
второй вариант: курсоры. клиент отправляет запрос, получает в ответ один результат. отправляет ещё один специальный запрос, говорящий, что я хочу следующую строку предыдущего запроса
с точки зрения сети - каждая итерация новый запрос, с точки зреня базы запрос был один, а дельше его просто постепенно отдавать
разумеется по одной строке никто не читает, а читают пачками

Dmitry
30.03.2017
12:24:42
А в каких случаях курсоры могут быть полезны?

Grigirii
30.03.2017
12:28:38
для задачи вычитывания и обработки очень большой таблицы, которая не влазит в память
но это не SQL фича, это уже самодейятельность конкретных реализаций

Pavel
30.03.2017
12:40:43
В MySQL нету курсоров вроде, они есть в потсгресе

Aleksey
30.03.2017
13:12:08
Друзья, как лучше прикрутить http/socks5 прокси?

Pavel
30.03.2017
13:12:59
Куда прикрутить?
Тебе нежна реализация клиента?

Aleksey
30.03.2017
13:16:54

Pavel
30.03.2017
13:17:44
Ну в случае http прокси и делать ничего не надо, все работает прозрачно. А в случае socks нужен клиент, да.
Которого видимо нету =)

Aleksey
30.03.2017
13:23:46
https://github.com/ikod/dlang-requests
Vibe.d тоже не могет в socks5 прокси

Pavel
30.03.2017
13:33:20
https://github.com/ikod/dlang-requests/blob/d7ff4a8ac9b966e4e9de5800f4be8bc7a3ece77d/docs/matrix.txt#L16
Не поддерживает судя по гиту