Как я могу запросить большой набор результатов в Kusto Explorer?

Я пытаюсь вернуть более 1 миллиона записей из базы данных Kusto в проводнике Kusto, но я получаю эту ошибку ниже

Query result set has exceeded the internal record count limit 500000 (E_QUERY_RESULT_SET_TOO_LARGE; see http://aka.ms/kustoquerylimits)

Я думаю, что предел составляет 5000000. Есть идеи, как я могу этого добиться? Благодарность


person HaiY    schedule 18.04.2020    source источник
comment
См. docs.microsoft.com/en-us/azure/data-explorer/kusto/concepts/   -  person OMANSAK    schedule 19.04.2020


Ответы (3)


set notruncation;

В этом случае настоятельно рекомендуется ввести какие-либо ограничения.

set truncationmaxsize=YOUR_LIMIT;
set truncationmaxrecords=YOUR_LIMIT;

Ссылка: https://docs.microsoft.com/en-us/azure/data-explorer/kusto/concepts/querylimits#limit-on-result-set-size-result-truncation

person OMANSAK    schedule 18.04.2020
comment
Я настроил свойство усечения, но получаю эту ошибку. Невозможно прочитать данные из транспортного соединения: существующее соединение было принудительно закрыто удаленным хостом. - person HaiY; 20.04.2020

Для экспорта больших объемов данных используйте параметры экспорта на сервер, описанные здесь:

https://docs.microsoft.com/en-us/azure/data-explorer/kusto/management/data-export/

Экспорт на стороне службы (push): приведенные выше методы несколько ограничены, поскольку результаты запроса должны передаваться через одно сетевое соединение между производителем, выполняющим запрос, и потребителем, записывающим его результаты. Для масштабируемого экспорта данных Kusto предоставляет модель экспорта «push», в которой служба, выполняющая запрос, также записывает свои результаты оптимизированным образом. Эта модель предоставляется с помощью набора управляющих команд .export, поддерживающих экспорт результатов запроса во внешнюю таблицу, таблицу SQL или во внешнее хранилище BLOB-объектов.

person Alexander Sloutsky    schedule 23.04.2020
comment
Спасибо, я использовал команду .export, и она работала отлично, но через час она возвращает следующую ошибку. Оператор суммирования превысил бюджет памяти во время оценки. Результаты могут быть неправильными или неполными (E_RUNAWAY_QUERY). У меня 32 ГБ физической памяти на моей виртуальной машине - person HaiY; 27.04.2020
comment
Ознакомьтесь со статьей, описывающей, как преодолеть эту ошибку: docs.microsoft .com / ru-ru / azure / data-explorer / kusto / query / - person Alexander Sloutsky; 29.04.2020

Дополнительный вариант - использовать кнопку «Запустить запрос в csv» в Kusto Explorer, это добавит set notruncation; для вас и сохранит результаты непосредственно на диск, чтобы вы могли легко открывать результаты в других инструментах, таких как Excel.

введите здесь описание изображения

person Avnera    schedule 19.04.2020
comment
Я получаю эту ошибку. Невозможно прочитать данные из транспортного соединения: существующее соединение было принудительно закрыто удаленным хостом. - person HaiY; 20.04.2020
comment
Я могу получить 1 миллион строк, используя предложенный способ, но мое требование - получить 26 миллионов записей, что вызывает указанную выше ошибку. - person HaiY; 20.04.2020
comment
в этом случае вы должны использовать команду .export для хранилища Azure и обрабатывать файлы оттуда. - person Avnera; 25.04.2020
comment
Я использовал команду .export, и похоже, что она улучшилась ... но после одного часа выполнения запроса (безупречная запись записей в csv) он терпит неудачу. ошибка связана с памятью. Оператор суммирования превысил бюджет памяти во время оценки. Результаты могут быть неправильными или неполными (E_RUNAWAY_QUERY). Моя физическая память 32 гб. - person HaiY; 27.04.2020