|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
бабушкин зайчик, то есть вы продолжаете исходить из того, что я не знаю, как из миллиарда значений Q отобрать миллион самых больших? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 13:27 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
бабушкин зайчик как бы там ни было, в чём проблема сложить эти ваши значения в БД, оставив в памяти лишь Q, из которых отсеять нужные? Помимо очевидных выгод, таким образом можно надеяться, что данные не выпадут из кэша CPU, что ускорит процесс раз в 50. Это очень жесткие требования. На такое можно пойти только в том случае, когда система, принимающая решение так-же быстро должна реагировать. Синхронно с фронтом приходящих новых данных. Но такое бывает редко IMHO. Тем более что биржевые индексы - это инфа вторичная. Для нее тоже есть свой источник данных и расчет этого индекса не факт что такой-же быстрый. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 13:37 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
Иван FXS вы продолжаете исходить из того, что я не знаю, как из миллиарда значений Q отобрать миллион самых больших? Похоже, Вы не знаете, что 1/1000 от бесконечности это бесконечность и динамически подстраиваете задачу под невозможность её решения. Это бесперспективняк. PS: Диски быстрее, чем сеть и рассматривать их как ограничение можно только если ваши "сущности" порождаются ГСЧ. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 13:41 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
mayton Это очень жесткие требования. в БД сохранять? А "не жёсткие" - это какие? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 13:48 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
Иван FXS бабушкин зайчик, то есть вы продолжаете исходить из того, что я не знаю, как из миллиарда значений Q отобрать миллион самых больших? при вашем регулярно растущем ТЗ вы скоро забудете, зачем вообще приходили вы до сих пор так и не сделали главного... не показали исходную строку И конечную строку. ну отберите, в чём проблема? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 13:51 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
бабушкин зайчик mayton Это очень жесткие требования. в БД сохранять? А "не жёсткие" - это какие? Не жосткие - это когда человек-от-бизнеса захочет на них взглянуть. Подумать. И принять какое-то решение. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 13:54 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Похоже, Вы не знаете, что 1/1000 от бесконечности это бесконечность Dimitry Sibiryakov рассматривать их как ограничение можно только если ваши "сущности" порождаются ГСЧ ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 13:58 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
Я так понимаю Иван FXS хочет заранее предсказать пороговое значение Q, а дальше просто дергать с потока только те сущности у которых Q больше порога. Только придумать не может как порог найти. ИМХУ тут разве что нейросети тренировать, и то решение будет негарантированным. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 14:03 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
Иван FXS, Если каждая сущность генерится из трех чисел, то хранить сущности нет необходимости. Сгенерите, посчитайте Q, запомните интересующие тройки. По тройкам сгенерите второй (и третий, и четвертый) раз. У вас скорость генерации превышает скорость высокоскоростных дисков. Такое хранить смысла нет, быстрее сгенерить чем прочитать. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 14:04 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
Иван FXS да, они именно ГСЧ и порождаются, я уже это упоминал, и даже ссылку на тему давал В пределах той темы не нужно "1/1000 лучших", достаточно и просто "миллиона лучших". А с учётом того, что они генерятся из одного целого - этот миллион займёт четыре мегабайта памяти, на диск сбрасывать ничего не нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 14:15 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
НеофитSQL, я объяснял на предыдущей странице ( 22322961 ), что у меня сущности генерируются "пакетами" по 100*200=20000 штук ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 14:19 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
mayton бабушкин зайчик пропущено... в БД сохранять? А "не жёсткие" - это какие? Не жосткие - это когда человек-от-бизнеса захочет на них взглянуть. Подумать. И принять какое-то решение. т.е. алгоритм придумывает обыватель? его дело чётко составить ТЗ и показать требуемый результат. А он блин ставит задачу так, что её надо непременно сохранять на диск, а потом оказывается, что там всего 20000 сущностей, которые можно в памяти держать не парясь... Да там ещё под вопросом эта 20... а чё не 1000? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 14:24 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
и почему нельзя прямо во время генерации отсеять нужные? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 14:31 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
бабушкин зайчик а потом оказывается, что там всего 20000 сущностей key имеет тип Длинное целое, мощность которого 4 миллиарда, и для каждого значения key я генерирую пакет из 20000 сущностей ... или всё бесполезно? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 14:43 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
Иван FXS или всё бесполезно? Без точной формулировки задачи - бесполезно. Твоё "хочу поработать с большим количеством" - пустое сотрясение воздуха. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 15:13 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
а вам разжевать значение слова "разжевать"? вы 4 страницы только запутываете мозги беззащитных программистов. " мощность long int = 4 миллиарда"... што это вообще?! ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 15:14 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, я продолжаю считать, что если вы перестанете пытаться убедить меня и себя, что в моей задаче поток -- это никакой не поток , а его целиком можно залить в бассейн, и работать с ним как с целиком доступным набором , то исходная формулировка задачи окажется вполне точной. Просто повторите десять раз: поток, поток, поток, поток, поток, поток, поток, поток, поток, поток . ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 15:22 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
Иван FXS исходная формулировка задачи окажется вполне точной. И для этой исходной формулировки "наилучшим по соотношению качество/затраты" будет решение, которое Вы назвали "брутфорсом": сохранять на диске текущий набор "лучших", перезаписывая худшие из них новыми по мере поступления. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 15:32 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
бабушкин зайчик мощность long int = 4 миллиарда"... што это вообще?! Математики так называют количество возможных значений ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 15:52 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
Иван FXS Dimitry Sibiryakov, я продолжаю считать, что если вы перестанете пытаться убедить меня и себя, что в моей задаче поток -- это никакой не поток , а его целиком можно залить в бассейн, и работать с ним как с целиком доступным набором , то исходная формулировка задачи окажется вполне точной. Передергивать не надо. Никто не предлагал сохранять все. Только хранить миллион самых лучших на текущий момент. Ты сам выше писал что сохранить придется в 7 раз больше чем надо, это нормальный оверхэд, не 0.1%, а 0,7%. Что тут плохого? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 16:01 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, можете сформулировать критерий, на основании которого будет приниматься решение о том, что очередную сущность в потоке не следует сохранять на диск? Вот, я обрабатываю сущность номер k (k может быть равно 1, 999, 1000, 1001, 145142 или 217363728) -- и Q(k) оказалось равно 1.23456 ... сохранять её на диск или проигнорировать? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 16:02 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
Dima T Только хранить миллион самых лучших на текущий момент ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 16:06 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
Иван FXS Dima T Только хранить миллион самых лучших на текущий момент поток = цикл у цикла есть счётчик перестаньте уже за программистов думать лучше учитесь чётко описывать задачу ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 16:12 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
Dima T бабушкин зайчик мощность long int = 4 миллиарда"... што это вообще?! Математики так называют количество возможных значений а зачем это на форуме программистов и какое отношение имеет к задаче? ему то что эти 4 ярда? Он вообще знает, что 4 000 000 000 ярда или 1 всё = 8 байт? а то что long это 9223372036854775807 он вообще никогда не слышал. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 16:14 |
|
Как отбирать из потока 1/1000 лучших экземпляров?
|
|||
---|---|---|---|
#18+
Иван FXS Dimitry Sibiryakov, можете сформулировать критерий, на основании которого будет приниматься решение о том, что очередную сущность в потоке не следует сохранять на диск? Вот, я обрабатываю сущность номер k (k может быть равно 1, 999, 1000, 1001, 145142 или 217363728) -- и Q(k) оказалось равно 1.23456 ... сохранять её на диск или проигнорировать? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2021, 16:15 |
|
|
start [/forum/topic.php?fid=16&msg=40070788&tid=1339663]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
74ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
others: | 288ms |
total: | 455ms |
0 / 0 |