Я делаю программу, которая хранит и читает из таблиц Azure некоторые, которые хранятся в файлах CSV. У меня есть файлы CSV, которые могут иметь различное количество столбцов и между строками 3k и 50k. Мне нужно загрузить эти данные в таблицу Azure. До сих пор мне удалось загрузить и загрузить данные. Я использую REST API, и для загрузки я создаю пакетный запрос XML со 100 строками на запрос. Теперь это работает нормально, за исключением того, что требуется слишком много времени для загрузки, например. для строк 3k требуется около 30 секунд. Есть ли способ ускорить это? Я заметил, что это занимает больше времени, когда выполняется ответ (для команды ReadToEnd()
). Я где-то читал, что установка прокси на нуль может помочь, но в моем случае это мало что делает.Время доступа к хранилищу Azure Table - вставка/чтение из
Я также нашел, что можно загрузить весь XML-запрос в blob, а затем выполнить его оттуда, но я не мог найти никакого примера для этого.
using (Stream requestStream = request.GetRequestStream())
{
requestStream.Write(content, 0, content.Length);
}
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
Stream dataStream = response.GetResponseStream();
using (var reader = new StreamReader(dataStream))
{
String responseFromServer = reader.ReadToEnd();
}
}
Что касается получения данных из лазурных таблиц, мне удалось получить 1000 объектов за запрос. Что касается этого, мне требуется около 9 секунд для CS с 3k строк. Это также занимает больше времени при чтении из потока. Когда я звоню эту часть кода (опять ReadToEnd()
):
response = request.GetResponse() as HttpWebResponse;
using (StreamReader reader = new StreamReader(response.GetResponseStream()))
{
string result = reader.ReadToEnd();
}
Любые советы?
Тестируете облако или облако. среда для облаков? – Igorek
Те, где для локального облака, когда я переместил приложение в облако, работал намного быстрее – jasheem