2015-09-25 2 views
0

Я зарегистрировал временную таблицу в искры и закрепил эту таблицу в памяти. Я часто запрашиваю эту таблицу в конкретном столбце, например, в запросе диапазона, который является меткой времени. Записи составляют около 4 миллионов, и для фильтрации записей в столбце диапазона требуется около 25 секунд. Я делаю это около 50 раз, чтобы получать записи между временами. Есть ли способ, по которому у меня может быть индекс btree в этом столбце, так что мои запросы намного быстрее.Индексирование искровой таблицы inmemory

ответ

1

Запишите фильтр, чтобы он мог получить все соответствующие записи за один раз (фильтр (x => x.field> = date1 & x.field < = date2)

+0

Да, я использую фильтр для фильтрации записей. У меня есть записи от x до y. один час для обработки.Так что я получаю мин и максимальное время от записей и итерации, чтобы иметь один час записи с использованием фильтра.Этот фильтр занимает около 20-30 секунд – Nipun

+0

Также все мои таблицы в памяти на одном подчиненном. для разделения записей на несколько подчиненных устройств, чтобы я мог отфильтровывать записи во много раз aster way? – Nipun

+0

«Также вся моя таблица находится в памяти на одном подчиненном @Nipun, как прийти к такому выводу. Это может произойти, если вы используете один раздел. Вы всегда можете переразделить RDD –

Смежные вопросы