Size: a a a

2019 July 31

AZ

Anton Zadorozhniy in Data Engineers
Rustam Iksanov
Инженеры, как я понимаю, единственное феникс не может нормально кастить числовые типы с hbase.  И для того, чтобы типы там работали,нужно писать все через феникс?
В хбейз нет типов
источник

RI

Rustam Iksanov in Data Engineers
Anton Zadorozhniy
В хбейз нет типов
Это я понимаю, что он хранит все в байтах. Просто когда делаешь external table в hive, то там он валидно преобразует байты в типы. а вот  с феникс такой поворот не прошел.
источник

AZ

Anton Zadorozhniy in Data Engineers
Rustam Iksanov
Это я понимаю, что он хранит все в байтах. Просто когда делаешь external table в hive, то там он валидно преобразует байты в типы. а вот  с феникс такой поворот не прошел.
Это звучит как проблема хайв а не финикс, у меня было несколько финиксов и там не было проблем с интами и лонгами
источник

AZ

Anton Zadorozhniy in Data Engineers
Финикс это олтп база, ему хайв не нужен
источник

RI

Rustam Iksanov in Data Engineers
Anton Zadorozhniy
Это звучит как проблема хайв а не финикс, у меня было несколько финиксов и там не было проблем с интами и лонгами
Тогда опишу свою проблему. Есть таблица в hbase, которая записана через spark коннектор. Она читается через спарк и через external table в hive, но при попытке сделать на нее view или таблицу в фениксе все числовые типы становятся не валидны.
источник

AZ

Anton Zadorozhniy in Data Engineers
Rustam Iksanov
Тогда опишу свою проблему. Есть таблица в hbase, которая записана через spark коннектор. Она читается через спарк и через external table в hive, но при попытке сделать на нее view или таблицу в фениксе все числовые типы становятся не валидны.
Записано через phoenix-spark?
источник

RI

Rustam Iksanov in Data Engineers
Anton Zadorozhniy
Записано через phoenix-spark?
нет, через hbase-spark-connector
источник

S

Stanislav in Data Engineers
Renarde
Фишка в том что атомарный апдейт (скажем один заказ - не будет весить 16мб), но внутри одного клиента мы можем иметь очень много заказов, и тогда они сильно больше будут
А выполнять джойн клиенты-на-заказы каждый раз не хочется
композитный кей - клиент-заказ
тогда записи становятся мелкими и операции простыми
+получаем бонус в хбейзе с быстрым сканом по клиентам
источник

AZ

Anton Zadorozhniy in Data Engineers
Rustam Iksanov
нет, через hbase-spark-connector
Пишите через phoenix-spark, и читайте хайвом через Phoenix storage handler
источник

S

Stanislav in Data Engineers
Stanislav
композитный кей - клиент-заказ
тогда записи становятся мелкими и операции простыми
+получаем бонус в хбейзе с быстрым сканом по клиентам
типа одна операция скана выдаст сразу все заказы
источник

RI

Rustam Iksanov in Data Engineers
Anton Zadorozhniy
Пишите через phoenix-spark, и читайте хайвом через Phoenix storage handler
А почему читать через hive? Для меня преимуществом phoenix перед hive вторичные индексы в hbase. Будут ли они использоваться? И в чем вообще выйгрыш читать через phoenix storage handler
источник

AZ

Anton Zadorozhniy in Data Engineers
Rustam Iksanov
А почему читать через hive? Для меня преимуществом phoenix перед hive вторичные индексы в hbase. Будут ли они использоваться? И в чем вообще выйгрыш читать через phoenix storage handler
Вы написали что читали хайвом, я не понял зачем. Собственно можно читать напрямую финиксом
источник

AZ

Anton Zadorozhniy in Data Engineers
Трогать через хайв надо если вам нужно джоин с данными из хдфс, это антипаттерн и так делать не стоит
источник

RI

Rustam Iksanov in Data Engineers
Anton Zadorozhniy
Вы написали что читали хайвом, я не понял зачем. Собственно можно читать напрямую финиксом
Простите, ввел в заблуждение. Просто hive уже был на кластере, поэтому изначально надеялся обойтись его external table для доступа аналитикам и внешним системам. Но время запросов не порадовало. И поэтому поднял феникс.
источник

RI

Rustam Iksanov in Data Engineers
Anton Zadorozhniy
Вы написали что читали хайвом, я не понял зачем. Собственно можно читать напрямую финиксом
В том то и дело нужны join + вторичные индексы
источник

AZ

Anton Zadorozhniy in Data Engineers
Rustam Iksanov
В том то и дело нужны join + вторичные индексы
Финикс это олтп база, там возможны только простые джоины когда одна сторона очень маленькая (например редуцирована через where), для больших merge join он не подходит
источник

RI

Rustam Iksanov in Data Engineers
Anton Zadorozhniy
Финикс это олтп база, там возможны только простые джоины когда одна сторона очень маленькая (например редуцирована через where), для больших merge join он не подходит
Что тогда для ускорения hive поднять llap вместо tez ?
источник

AZ

Anton Zadorozhniy in Data Engineers
Rustam Iksanov
Что тогда для ускорения hive поднять llap вместо tez ?
СУБД нормальную пробовали?
источник

S

Stanislav in Data Engineers
Rustam Iksanov
Что тогда для ускорения hive поднять llap вместо tez ?
из крайности в крайность. ни феникс не спасет, ни ллап
источник

S

Stanislav in Data Engineers
один над кв сделан, второй над файлами
если нужна бд - возьмите бд
источник