Как создать таблицу в hbase, используя pyspark? - PullRequest
0 голосов
/ 27 сентября 2018

Я хочу создать новую таблицу hbase, если она не существует в пространстве имен / hbase из кода pyspark для хранения данных, может кто-нибудь помочь мне выполнить эту задачу?

1 Ответ

0 голосов
/ 27 сентября 2018

Я думаю, что самый простой способ - использовать happybase.Вы можете найти документ здесь happybase .Это пример ниже

hbase(main):001:0> list
TABLE                                                                                                                                                            
emp                                                                                                                                                              
1 row(s) in 0.7750 seconds

=> ["emp"]

Существует только одна таблица, и я создам новую таблицу, которая называется my_table с использованием Spark

>>> import happybase
>>> host = 'your host'
>>> connection = happybase.Connection(host = host) #not specify port
>>> connection.create_table(
...     'my_table',
...     {'col1': dict(), # it uses defaults, if you want you can define column definitions
...      'col2': dict(),
...      'col3': dict()
...     }
... )

И проверим hbase

hbase(main):002:0> list
TABLE                                                                                                                                                            
emp                                                                                                                                                              
my_table                                                                                                                                                         
2 row(s) in 0.0660 seconds

=> ["emp", "my_table"]

Новая таблица создана.Вы также можете читать таблицы в Spark через happybase.

>>> import happybase
>>> host = 'your host'
>>> connection = happybase.Connection(host = host) #not specify port
>>> table = connection.table('emp')
>>> table.row('1')
{b'personal data:name': b'raju'}
...