Я работаю над заданием cron, которое должно ежедневно запрашивать Postgres. Стол - огромные триллионы записей. В среднем я ожидаю получить около миллиарда записей за выполнение. Я не мог найти документацию по использованию курсоров или разбивки на страницы для Slick 2.1.0. Легкий подход, о котором я могу думать, - сначала вычислить счет, а затем выполнить цикл с помощью drop and take. Есть ли лучший и эффективный способ сделать это?Получить большие результаты ~ 1 миллиард с помощью Typesafe Slick
0
A
ответ
-1
Map уменьшить с помощью akka, postgresql-async, сначала подсчитать, а затем распространять с помощью смещения + лимит-запрос субъектам, а затем сопоставлять данные по мере необходимости, а затем уменьшать результат до elasticsearch или другого магазина?
+1
Этот ответ больше похож на комментарий. Постарайтесь отформатировать ваши шаги в шагах и дать немного больше деталей. – CaptainBli
Вы (1) полагаетесь на огромное количество ОЗУ на клиенте или (2) планируете использовать курсоры для извлечения меньше, чем весь набор результатов? Я не уверен, что понимаю ваш вопрос в деталях. –
Извиняюсь, если я не объясню это должным образом. Я определенно ищу вариант (2) – Shashi
Я думаю, что Ричард Хукстон получал то, что если вы используете курсоры, вы не будете вытаскивать все эти записи в память сразу. Вы будете читать свои миллиардные результаты в памяти по одному (или, возможно, куску за раз, в зависимости от драйвера базы данных). – AmigoNico