Чем больше запрос означает медленное чтение из кэшированных объектов?

Pandas имеет два считывателя csv, только гибко относится к избыточному ведущему пробелу:

pd.read_csv("whitespace.csv", skipinitialspace=True)

, в то время как один не является

pd.DataFrame.from_csv("whitespace.csv")

Ни тот, поле гибкое относительно конечного пробела, см. ответы с регулярными выражениями. Избегайте delim_whitespace, так как оно также позволяет просто пробелы (без или \ t) в качестве разделителей.

2
задан Bilgin Kılıç 4 February 2019 в 11:47
поделиться

2 ответа

Медлительность может быть связана с аппаратным обеспечением на сервере, например: - Ram, процессор. и службы или приложения, работающие в фоновом режиме на сервере.

0
ответ дан Husnain Sheikh 4 February 2019 в 11:47
поделиться

В основном этот тип медлительности происходит из-за совершения этой ошибки:

for (var i = 0; i<100; i++)
{
   // do a network-roundtrip/remoting/io/etc
}

, и решение состоит в том, чтобы изменить его на:

// do a network-roundtrip/remoting/io/etc
for (var i = 0; i<100; i++)
{
    // do something with the result of the above call
}

Так что, если я правильно вас понял, данные Global.holidayGlobals.Values поступают из другого процесса, например, из кеша памяти. Если это так, вам проще всего изменить код на:


int limit=450;
public bool functionUI()
{
    var holidays = Global.holidayGlobals.Values;
    for(int i=0;i< limit ; i++)
    {
        functionApp(i, holidays);
    }
}


public static bool functionApp(int i, IEnumerable<HolidayEntity> holidays)
{
    foreach(var h in holidays)
    {
        if(h.Value == i)
        {
             return false;
        }
    }
    return true;
}

Мы все еще делаем слишком много работы в циклах (мы можем улучшить алгоритм, создав словарь и просто просмотрев его), но для по вашему номеру (450) это ничтожно мало по сравнению со временем одной поездки туда и обратно в кэш памяти.

ОБНОВЛЕНИЕ

Из комментариев к вопросу видно, что holidays равно Dictionary<int, HolidayEntity>, если так, код может стать намного лучше, как это:

[113 ]
0
ответ дан Alireza 4 February 2019 в 11:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: