Как определить размер моих таблиц HBase?. Есть ли команда для этого?

У меня есть несколько таблиц в моей оболочке Hbase, которые я хотел бы скопировать в свою файловую систему. Некоторые таблицы превышают 100 гб. Однако в моей локальной файловой системе осталось только 55 ГБ свободного места. Поэтому я хотел бы знать размер моих таблиц hbase, чтобы я мог экспортировать только таблицы небольшого размера. Любые предложения приветствуются.

Благодарю, gautham

Ответы

Ответ 1

попробуйте hdfs dfs -du -h/hbase/data/default/ (или /hbase/в зависимости от используемой версии hbase)

Это покажет, сколько места используется файлами ваших таблиц.

Надеюсь, что это поможет.

Ответ 2

для 0. 98+ try hadoop fs -du -s -h $hbase_root_dir/data/data/$schema_name/ (или /hbase/for 0.94)

Вы можете найти hbase_root_dir из файла hbase-site.xml вашего кластера. Вышеупомянутая команда предоставит вам сводку диска, используемую каждой таблицей.

Ответ 3

использовать du

Использование: hdfs dfs -du [-s] [-h] URI [URI …]

Отображает размеры файлов и каталогов, содержащихся в данном каталоге, или длину файла в случае его просто файла.

Опции:

Параметр -s приведет к отображению суммарной суммы отображаемых длин файлов, а не отдельных файлов.

Опция -h будет форматировать размеры файлов "с точки зрения человека" (например, 64,0 м вместо 67108864)

Пример:

hdfs dfs -du -h /hbase/data/default

выход для меня:

1.2 M    /hbase/data/default/kylin_metadata
14.0 K   /hbase/data/default/kylin_metadata_acl
636      /hbase/data/default/kylin_metadata_user
5.6 K    /hbase/data/default/test