Các lệnh của HBase Shell với các ví dụ

Mục lục:

Anonim

Sau khi cài đặt thành công HBase trên Hadoop, chúng tôi nhận được một trình bao tương tác để thực hiện các lệnh khác nhau và thực hiện một số hoạt động. Sử dụng các lệnh này, chúng tôi có thể thực hiện nhiều thao tác trên bảng dữ liệu có thể mang lại hiệu quả lưu trữ dữ liệu tốt hơn và tương tác linh hoạt của khách hàng.

Chúng ta có thể tương tác với HBase theo hai cách,

  • Chế độ vỏ tương tác HBase và
  • Thông qua Java API

Trong HBase, chế độ shell tương tác được sử dụng để tương tác với HBase cho các hoạt động bảng, quản lý bảng và mô hình hóa dữ liệu. Bằng cách sử dụng mô hình Java API, chúng tôi có thể thực hiện tất cả các loại bảng và hoạt động dữ liệu trong HBase. Chúng ta có thể tương tác với HBase bằng cả hai phương pháp này.

Sự khác biệt duy nhất giữa hai điều này là Java API sử dụng mã java để kết nối với HBase và chế độ shell sử dụng các lệnh shell để kết nối với HBase.

Tóm tắt nhanh HBase trước khi chúng tôi tiếp tục-

  • HBase sử dụng các tệp Hadoop làm hệ thống lưu trữ để lưu trữ lượng lớn dữ liệu. Hbase bao gồm Máy chủ chính và Máy chủ khu vực
  • Dữ liệu sẽ được lưu trữ trong HBase sẽ ở dạng vùng. Hơn nữa, các khu vực này sẽ được chia nhỏ và lưu trữ trong nhiều máy chủ khu vực
  • Các lệnh shell này cho phép người lập trình xác định các lược đồ bảng và các phép toán dữ liệu bằng cách sử dụng tương tác chế độ shell hoàn chỉnh
  • Cho dù chúng ta sử dụng lệnh nào, nó sẽ phản ánh trong mô hình dữ liệu HBase
  • Chúng tôi sử dụng các lệnh vỏ HBase trong trình thông dịch tập lệnh của hệ điều hành như Bash shell
  • Bash shell là trình thông dịch lệnh mặc định cho hầu hết các bản phân phối điều hành Linux và Unix
  • Các phiên bản nâng cao của HBase cung cấp các lệnh shell tham chiếu hướng đối tượng kiểu jruby cho các bảng
  • Các biến tham chiếu bảng có thể được sử dụng để thực hiện các thao tác dữ liệu trong chế độ vỏ HBase

Ví dụ ,

  • Trong hướng dẫn này, chúng tôi đã tạo một bảng trong đó 'giáo dục' đại diện cho tên bảng và tương ứng với tên cột "guru99".
  • Trong một số lệnh "guru99", bản thân nó đại diện cho một tên bảng.

Trong hướng dẫn này - bạn sẽ học,

  • Các lệnh chung
  • Lệnh quản lý bảng
  • Các lệnh thao tác dữ liệu
  • Lệnh sao chép cụm

Các lệnh chung

Trong Hbase, các lệnh chung được phân loại thành các lệnh sau

  • Trạng thái
  • Phiên bản
  • Table_help (quét, thả, lấy, đặt, vô hiệu hóa, v.v.)
  • Tôi là ai

Để truy cập vào lệnh shell HBase, trước hết, chúng ta phải thực thi đoạn mã như đã đề cập bên dưới

hbase Shell

Khi chúng ta vào được HBase shell, chúng ta có thể thực thi tất cả các lệnh shell được đề cập bên dưới. Với sự trợ giúp của các lệnh này, chúng ta có thể thực hiện tất cả các loại thao tác bảng trong chế độ vỏ HBase.

Chúng ta hãy xem xét tất cả các lệnh này và cách sử dụng của chúng với một ví dụ.

Trạng thái

Syntax:status

Lệnh này sẽ cung cấp thông tin chi tiết về trạng thái hệ thống như một số máy chủ hiện diện trong cụm, số lượng máy chủ đang hoạt động và giá trị tải trung bình. Bạn cũng có thể chuyển bất kỳ thông số cụ thể nào tùy thuộc vào trạng thái chi tiết mà bạn muốn biết về hệ thống. Các tham số có thể là 'tóm tắt', 'đơn giản' hoặc 'chi tiết' , tham số mặc định được cung cấp là "tóm tắt".

Dưới đây, chúng tôi đã chỉ ra cách bạn có thể chuyển các tham số khác nhau cho lệnh trạng thái.

Nếu chúng ta quan sát ảnh chụp màn hình dưới đây, chúng ta sẽ hiểu rõ hơn.

hbase(main):001:0>statushbase(main):002:0>status 'simple'hbase(main):003:0>status 'summary'hbase(main):004:0> status 'detailed'

Khi chúng tôi thực hiện trạng thái lệnh này, nó sẽ cung cấp thông tin về số lượng máy chủ hiện tại, máy chủ chết và tải trung bình của máy chủ, ở đây trong ảnh chụp màn hình, nó hiển thị thông tin như- 1 máy chủ hoạt động, 1 máy chủ chết và 7.0000 tải trung bình.

Phiên bản

Syntax: version

  • Lệnh này sẽ hiển thị phiên bản HBase hiện đang được sử dụng trong chế độ lệnh
  • Nếu bạn chạy lệnh phiên bản, nó sẽ cho kết quả như hình trên

Bảng trợ giúp

Syntax:table_help

Lệnh này hướng dẫn

  • Điều gì và cách sử dụng các lệnh được tham chiếu đến bảng
  • Nó sẽ cung cấp các cách sử dụng lệnh vỏ HBase khác nhau và các cú pháp của nó
  • Ở đây trong ảnh chụp màn hình ở trên, nó hiển thị cú pháp của lệnh " create" và " get_table" cùng với cách sử dụng của nó. Chúng ta có thể thao tác bảng thông qua các lệnh này sau khi bảng được tạo trong HBase.
  • Nó sẽ đưa ra các lệnh thao tác bảng như put, get và tất cả các thông tin về lệnh khác.

tôi là ai

Cú pháp:

Syntax: Whoami

Lệnh "whoami" này được sử dụng để trả về thông tin người dùng HBase hiện tại từ cụm HBase.

Nó sẽ cung cấp thông tin như

  • Các nhóm hiện diện trong HBase
  • Thông tin người dùng, ví dụ trong trường hợp này là "hduser" đại diện cho tên người dùng như được hiển thị trong ảnh chụp màn hình

TTL (Thời gian tồn tại) - Thuộc tính

Trong HBase, họ Cột có thể được đặt thành giá trị thời gian tính bằng giây bằng cách sử dụng TTL. HBase sẽ tự động xóa các hàng khi đạt đến thời gian hết hạn. Thuộc tính này áp dụng cho tất cả các phiên bản của một hàng - ngay cả phiên bản hiện tại.

Thời gian TTL được mã hóa trong HBase cho hàng được chỉ định theo giờ UTC. Thuộc tính này được sử dụng với các lệnh quản lý bảng.

Dưới đây là những khác biệt quan trọng giữa xử lý TTL và TTL họ cột

  • TTL của ô được biểu thị bằng đơn vị mili giây thay vì giây.
  • TTL của ô không thể kéo dài thời gian tồn tại thực tế của ô vượt quá cài đặt TTL cấp Họ cột.

Lệnh quản lý bảng

Các lệnh này sẽ cho phép người lập trình tạo bảng và lược đồ bảng với họ hàng và họ cột.

Sau đây là các lệnh Quản lý Bảng

  • Tạo nên
  • Danh sách
  • Diễn tả
  • Vô hiệu hóa
  • Vô hiệu hóa tất cả
  • Kích hoạt
  • Cho phép tất cả
  • Rơi vãi
  • Drop_all
  • Hiển thị bộ lọc
  • Alter
  • Alter_status

Hãy để chúng tôi xem xét các cách sử dụng lệnh khác nhau trong HBase với một ví dụ.

Tạo nên

Syntax: create 
, 

Thí dụ:-

hbase(main):001:0> create 'education' ,'guru99'0 rows(s) in 0.312 seconds=>Hbase::Table - education

Ví dụ trên giải thích cách tạo bảng trong HBase với tên cụ thể được cung cấp theo từ điển hoặc thông số kỹ thuật theo họ cột. Ngoài ra, chúng ta cũng có thể chuyển một số thuộc tính phạm vi bảng vào đó.

Để kiểm tra bảng 'education' đã được tạo hay chưa, chúng ta phải sử dụng lệnh "list" như đã đề cập bên dưới.

Danh sách

Syntax:list

  • Lệnh "Danh sách" sẽ hiển thị tất cả các bảng hiện có hoặc được tạo trong HBase
  • Kết quả hiển thị trong ảnh chụp màn hình ở trên hiện đang hiển thị các bảng hiện có trong HBase
  • Ở đây trong ảnh chụp màn hình này, nó cho thấy có tổng cộng 8 bảng hiện diện bên trong HBase
  • Chúng tôi có thể lọc các giá trị đầu ra từ các bảng bằng cách chuyển các tham số biểu thức chính quy tùy chọn

Diễn tả

Syntax:describe 

hbase(main):010:0>describe 'education'

Lệnh này mô tả bảng được đặt tên.

  • Nó sẽ cung cấp thêm thông tin về các họ cột có trong bảng đã đề cập
  • Trong trường hợp của chúng tôi, nó cung cấp mô tả về bảng "giáo dục".
  • Nó sẽ cung cấp thông tin về tên bảng với họ cột, bộ lọc liên quan, phiên bản và một số chi tiết khác.

vô hiệu hóa

Syntax: disable 

hbase(main):011:0>disable 'education'
  • Lệnh này sẽ bắt đầu vô hiệu hóa bảng đã đặt tên
  • Nếu cần xóa hoặc xóa bảng, trước tiên nó phải tắt

Ở đây, trong ảnh chụp màn hình ở trên, chúng tôi đang tắt giáo dục bảng

vô hiệu hóa tất cả

 Syntax: disable_all<"matching regex"
  • Lệnh này sẽ vô hiệu hóa tất cả các bảng khớp với regex đã cho.
  • Việc triển khai tương tự như lệnh xóa (Ngoại trừ việc thêm regex để khớp)
  • Khi bảng bị vô hiệu hóa, người dùng có thể xóa bảng khỏi HBase
  • Trước khi xóa hoặc bỏ bảng, phải tắt nó trước

Kích hoạt

Syntax: enable 

hbase(main):012:0>enable 'education'
  • Lệnh này sẽ bắt đầu kích hoạt bảng được đặt tên
  • Cho dù bảng nào bị vô hiệu hóa, để khôi phục lại trạng thái trước đó của nó, chúng ta sử dụng lệnh này
  • Nếu một bảng bị vô hiệu hóa trong trường hợp đầu tiên và không bị xóa hoặc bị xóa, và nếu chúng ta muốn sử dụng lại bảng đã bị vô hiệu hóa thì chúng ta phải kích hoạt nó bằng cách sử dụng lệnh này.
  • Ở đây trong ảnh chụp màn hình ở trên, chúng tôi đang bật bảng "giáo dục".

Hiển thị bộ lọc

Syntax: show_filters

Lệnh này hiển thị tất cả các bộ lọc có trong HBase như ColumnPrefix Filter, TimestampsFilter, PageFilter, FamilyFilter, v.v.

rơi vãi

Syntax:drop 

hbase(main):017:0>drop 'education'

Chúng ta phải quan sát các điểm dưới đây để thả lệnh

  • Để xóa bảng hiện diện trong HBase, trước tiên chúng ta phải tắt nó
  • Để loại bỏ bảng hiện diện trong HBase, trước tiên chúng ta phải tắt nó
  • Vì vậy, một trong hai bảng để thả hoặc xóa trước tiên bảng nên được vô hiệu hóa bằng lệnh vô hiệu
  • Ở đây trong ảnh chụp màn hình trên, chúng tôi đang bỏ bảng "giáo dục".
  • Trước khi thực hiện lệnh này, bạn cần phải tắt bảng "giáo dục".

drop_all

Syntax: drop_all<"regex">
  • Lệnh này sẽ loại bỏ tất cả các bảng phù hợp với regex đã cho
  • Các bảng phải vô hiệu hóa đầu tiên trước khi thực hiện lệnh này bằng cách sử dụng disable_all
  • Các bảng có biểu thức so khớp regex sẽ bị loại khỏi HBase

được kích hoạt

Syntax: is_enabled 'education'

Lệnh này sẽ xác minh xem bảng được đặt tên có được bật hay không. Thông thường, có một chút nhầm lẫn giữa hành động lệnh "enable" và "is_enabled", chúng ta sẽ làm rõ ở đây

  • Giả sử một bảng bị vô hiệu hóa, để sử dụng bảng đó, chúng ta phải kích hoạt nó bằng cách sử dụng lệnh enable
  • lệnh is_enabled sẽ kiểm tra bảng đã được bật hay chưa

thay đổi

Syntax: alter 
, NAME=>, VERSIONS=>5

Lệnh này thay đổi lược đồ họ cột. Để hiểu chính xác nó làm gì, chúng tôi đã giải thích nó ở đây với một ví dụ.

Ví dụ:

Trong các ví dụ này, chúng ta sẽ thực hiện các thao tác lệnh thay đổi trên các bảng và trên các cột của nó. Chúng tôi sẽ thực hiện các thao tác như

  • Thay đổi tên họ cột đơn, nhiều cột
  • Xóa họ cột khỏi bảng
  • Một số hoạt động khác sử dụng thuộc tính phạm vi với bảng
  1. Để thay đổi hoặc thêm họ cột 'guru99_1' trong bảng 'giáo dục' từ giá trị hiện tại để giữ tối đa 5 VERSIONS ô ,
  • "education" là tên bảng được tạo với tên cột "guru99" trước đây
  • Ở đây với sự trợ giúp của lệnh thay đổi, chúng tôi đang cố gắng thay đổi lược đồ họ cột thành guru99_1 từ guru99

hbase> alter 'education', NAME='guru99_1', VERSIONS=>5
  1. Bạn cũng có thể thao tác lệnh thay đổi trên một số họ cột. Ví dụ: chúng tôi sẽ xác định hai cột mới cho bảng hiện có của chúng tôi "giáo dục".
 hbase> alter 'edu', 'guru99_1', {NAME => 'guru99_2', IN_MEMORY => true}, {NAME => 'guru99_3', VERSIONS => 5}

  • Chúng ta có thể thay đổi nhiều lược đồ cột cùng một lúc bằng lệnh này
  • guru99_2 và guru99_3 như được hiển thị trong ảnh chụp màn hình ở trên là hai tên cột mới mà chúng tôi đã xác định cho giáo dục bảng
  • Chúng ta có thể xem cách sử dụng lệnh này trong ảnh chụp màn hình trước
  1. Trong bước này, chúng ta sẽ thấy cách xóa họ cột khỏi bảng. Để xóa họ cột 'f1' trong bảng 'giáo dục'.

Sử dụng một trong các lệnh dưới đây,

hbase> alter 'education', NAME => 'f1', METHOD => 'delete'
hbase> alter 'education', 'delete' =>' guru99_1' 
  • Trong lệnh này, chúng tôi đang cố gắng xóa tên không gian cột guru99_1 mà chúng tôi đã tạo trước đó trong bước đầu tiên

  1. Như được hiển thị trong ảnh chụp màn hình bên dưới, nó cho thấy hai bước - cách thay đổi thuộc tính phạm vi bảng và cách xóa thuộc tính phạm vi bảng.
Syntax: alter <'tablename'>, MAX_FILESIZE=>'132545224'

Bước 1) Bạn có thể thay đổi các thuộc tính phạm vi bảng như MAX_FILESIZE, READONLY, MEMSTORE_FLUSHSIZE, DEFERRED_LOG_FLUSH, v.v. Các thuộc tính này có thể được đặt ở cuối; ví dụ: để thay đổi kích thước tối đa của một vùng thành 128MB hoặc bất kỳ giá trị bộ nhớ nào khác, chúng tôi sử dụng giá trị này chỉ huy.

Sử dụng:

  • Chúng ta có thể sử dụng MAX_FILESIZE với bảng làm thuộc tính phạm vi như trên
  • Số đại diện bằng MAX_FILESIZE được tính bằng byte trong bộ nhớ

N OTE: MAX_FILESIZE Phạm vi bảng thuộc tính sẽ được xác định bởi một số thuộc tính có trong HBase. MAX_FILESIZE cũng có thuộc tính phạm vi bảng.

Bước 2) Bạn cũng có thể xóa thuộc tính phạm vi bảng bằng phương thức table_att_unset. Nếu bạn thấy lệnh

alter 'education', METHOD => 'table_att_unset', NAME => 'MAX_FILESIZE'
  • Ảnh chụp màn hình ở trên hiển thị tên bảng đã thay đổi với các thuộc tính phạm vi
  • Phương thức table_att_unset được sử dụng để hủy đặt các thuộc tính có trong bảng
  • Trường hợp thứ hai chúng tôi đang hủy đặt thuộc tính MAX_FILESIZE
  • Sau khi thực hiện lệnh, nó sẽ đơn giản hủy đặt thuộc tính MAX_FILESIZE khỏi bảng "giáo dục".

Alter_status

 Syntax: alter_status 'education'

  • Thông qua lệnh này, bạn có thể nhận được trạng thái của lệnh thay đổi
  • Điều này cho biết số vùng của bảng đã nhận được tên bảng vượt qua lược đồ được cập nhật
  • Ở đây trong ảnh chụp màn hình ở trên, nó hiển thị 1/1 khu vực được cập nhật. Nó có nghĩa là nó đã cập nhật một vùng. Sau đó nếu thành công nó sẽ hiển thị bình luận xong.

Các lệnh thao tác dữ liệu

Các lệnh này sẽ hoạt động trên bảng liên quan đến các thao tác dữ liệu như đưa dữ liệu vào bảng, lấy dữ liệu từ bảng và xóa lược đồ, v.v.

Các lệnh dưới đây là

  • Đếm
  • Đặt
  • Được
  • Xóa bỏ
  • Xóa hết
  • Cắt bớt
  • Quét

Hãy xem xét việc sử dụng các lệnh này với một ví dụ.

Đếm

Syntax: count <'tablename'>, CACHE =>1000
  • Lệnh sẽ truy xuất số lượng hàng trong bảng. Giá trị được trả về bởi giá trị này là số hàng.
  • Số lượng hiện tại được hiển thị trên mỗi 1000 hàng theo mặc định.
  • Khoảng đếm có thể được chỉ định tùy ý.
  • Kích thước bộ nhớ cache mặc định là 10 hàng.
  • Lệnh Count sẽ hoạt động nhanh khi nó được cấu hình với đúng Cache.

Thí dụ:

hbase> count 'guru99', CACHE=>1000

Số lượng ví dụ này tìm nạp 1000 hàng cùng một lúc từ bảng "Guru99".

Chúng ta có thể tạo bộ nhớ cache thành một số giá trị thấp hơn nếu bảng có nhiều hàng hơn.

Nhưng theo mặc định, nó sẽ tìm nạp từng hàng một.

hbase>count 'guru99', INTERVAL => 100000hbase> count 'guru99', INTERVAL =>10, CACHE=> 1000

Nếu giả sử nếu bảng "Guru99" có một số tham chiếu bảng như nói g.

Chúng ta có thể chạy lệnh count trên bảng tham chiếu như bên dưới

hbase>g.count INTERVAL=>100000hbase>g.count INTERVAL=>10, CACHE=>1000

Đặt

Syntax: put <'tablename'>,<'rowname'>,<'columnvalue'>,<'value'>

Lệnh này được sử dụng để làm những việc sau

  • Nó sẽ đặt một ô 'giá trị' tại bảng hoặc hàng hoặc cột được xác định hoặc chỉ định.
  • Nó sẽ tùy chọn phối hợp tem thời gian.

Thí dụ:

  • Ở đây chúng tôi đang đặt các giá trị vào bảng "guru99" dưới hàng r1 và cột c1
    hbase> put 'guru99', 'r1', 'c1', 'value', 10
  • Chúng tôi đã đặt ba giá trị, 10,15 và 30 trong bảng "guru99" như được hiển thị trong ảnh chụp màn hình bên dưới

  • Giả sử nếu bảng "Guru99" có một số tham chiếu bảng như nói g. Chúng ta cũng có thể chạy lệnh trên bảng tham chiếu như

    hbase> g.put 'guru99', 'r1', 'c1', 'value', 10
  • Kết quả sẽ được hiển thị trong ảnh chụp màn hình ở trên sau khi đặt các giá trị vào "guru99".

Để kiểm tra xem giá trị đầu vào có được chèn chính xác vào bảng hay không, chúng ta sử dụng lệnh "scan". Trong ảnh chụp màn hình dưới đây, chúng ta có thể thấy các giá trị được chèn chính xác

Đoạn mã: Dành cho Thực hành

create 'guru99', {NAME=>'Edu', VERSIONS=>213423443}put 'guru99', 'r1', 'Edu:c1', 'value', 10put 'guru99', 'r1', 'Edu:c1', 'value', 15put 'guru99', 'r1', 'Edu:c1', 'value', 30

Từ đoạn mã, chúng tôi đang thực hiện những điều này

  • Ở đây chúng tôi đang tạo một bảng có tên 'guru99' với tên cột là "Edu."
  • Bằng cách sử dụng lệnh "put", chúng tôi đang đặt các giá trị vào tên hàng r1 trong cột "Edu" vào bảng "guru99."

Được

Syntax: get <'tablename'>, <'rowname'>, {< Additional parameters>}

Ở đây bao gồm TIMERANGE, TIMESTAMP, PHIÊN BẢN và BỘ LỌC.

Bằng cách sử dụng lệnh này, bạn sẽ nhận được một hàng hoặc nội dung ô có trong bảng. Ngoài ra, bạn cũng có thể thêm các tham số bổ sung vào nó như TIMESTAMP, TIMERANGE, VERSIONS, FILTERS, v.v. để có được một hàng hoặc nội dung ô cụ thể.

Ví dụ: -

hbase> get 'guru99', 'r1', {COLUMN => 'c1'}

Đối với bảng "guru99 'giá trị hàng r1 và cột c1 sẽ hiển thị bằng lệnh này như được hiển thị trong ảnh chụp màn hình ở trên

hbase> get 'guru99', 'r1'

Đối với bảng "guru99", các giá trị r1 sẽ được hiển thị bằng lệnh này

hbase> get 'guru99', 'r1', {TIMERANGE => [ts1, ts2]}

Đối với bảng "guru99", giá trị hàng 1 trong phạm vi thời gian ts1 và ts2 sẽ được hiển thị bằng lệnh này

hbase> get 'guru99', 'r1', {COLUMN => ['c1', 'c2', 'c3']}

Đối với bảng "guru99" hàng r1 và các giá trị c1, c2, c3 của họ cột sẽ được hiển thị bằng lệnh này

Xóa bỏ

Syntax:delete <'tablename'>,<'row name'>,<'column name'>
  • Lệnh này sẽ xóa giá trị ô tại bảng hàng hoặc cột đã xác định.
  • Xóa phải và phải khớp chính xác với tọa độ ô đã xóa.
  • Khi quét, xóa ô sẽ ngăn chặn các phiên bản cũ hơn của giá trị.

Thí dụ:

hbase(main):)020:0> delete 'guru99', 'r1', 'c1''. 
  • Việc thực thi trên sẽ xóa hàng r1 khỏi họ cột c1 trong bảng "guru99."
  • Giả sử nếu bảng "guru99" có một số tham chiếu bảng như nói g.
  • Chúng ta có thể chạy lệnh trên tham chiếu bảng như hbase> g.delete 'guru99', 'r1', 'c1' ".

xóa hết

Syntax: deleteall <'tablename'>, <'rowname'>

  • Lệnh này sẽ xóa tất cả các ô trong một hàng nhất định.
  • Chúng ta có thể xác định tùy chọn tên cột và dấu thời gian theo cú pháp.

Thí dụ:-

hbase>deleteall 'guru99', 'r1', 'c1'

Thao tác này sẽ xóa tất cả các hàng và cột có trong bảng. Tùy chọn, chúng tôi có thể đề cập đến tên cột trong đó.

Cắt bớt

Syntax: truncate 

Sau khi cắt bớt một bảng hbase, lược đồ sẽ hiển thị nhưng không hiển thị các bản ghi. Lệnh này thực hiện 3 chức năng; những cái đó được liệt kê bên dưới

  • Tắt bảng nếu nó đã hiển thị
  • Bỏ bảng nếu nó đã có mặt
  • Tạo lại bảng đã đề cập

Quét

Syntax: scan <'tablename'>, {Optional parameters}

Lệnh này quét toàn bộ bảng và hiển thị nội dung bảng.

  • Chúng ta có thể chuyển một số thông số kỹ thuật tùy chọn cho lệnh quét này để có thêm thông tin về các bảng hiện diện trong hệ thống.
  • Thông số kỹ thuật của máy quét có thể bao gồm một hoặc nhiều thuộc tính sau.
  • Đó là TIMERANGE, FILTER, TIMESTAMP, LIMIT, MAXLENGTH, COLUMNS, CACHE, STARTROW và STOPROW.
scan 'guru99' 

Đầu ra như dưới đây được hiển thị trong ảnh chụp màn hình

Trong ảnh chụp màn hình ở trên

  • Nó hiển thị bảng "guru99" với tên và giá trị cột
  • Nó bao gồm ba giá trị hàng r1, r2, r3 cho giá trị cột đơn c1
  • Nó hiển thị các giá trị được liên kết với các hàng

Ví dụ: -

Các cách sử dụng khác nhau của lệnh quét

Chỉ huy

Sử dụng

quét '.META.', {COLUMNS => 'info: regioninfo'}

Nó hiển thị tất cả thông tin dữ liệu meta liên quan đến các cột có trong bảng trong HBase

quét 'guru99', {COLUMNS => ['c1', 'c2'], LIMIT => 10, STARTROW => 'xyz'}

Nó hiển thị nội dung của table guru99 với các họ cột c1 và c2 của chúng, giới hạn các giá trị là 10

quét 'guru99', {COLUMNS => 'c1', TIMERANGE => [1303668804, 1303668904]}

Nó hiển thị nội dung của guru99 với tên cột c1 của nó với các giá trị nằm giữa giá trị thuộc tính phạm vi thời gian đã đề cập

quét 'guru99', {RAW => true, VERSIONS => 10}

Trong lệnh này RAW => true cung cấp tính năng nâng cao như hiển thị tất cả các giá trị ô có trong bảng guru99

Ví dụ về mã:

Đầu tiên tạo bảng và đặt các giá trị vào bảng

create 'guru99', {NAME=>'e', VERSIONS=>2147483647}put 'guru99', 'r1', 'e:c1', 'value', 10put 'guru99', 'r1', 'e:c1', 'value', 12put 'guru99', 'r1', 'e:c1', 'value', 14delete 'guru99', 'r1', 'e:c1', 11

Ảnh chụp màn hình đầu vào:

Nếu chúng ta chạy lệnh quét

Query: scan 'guru99', {RAW=>true, VERSIONS=>1000}

Nó sẽ hiển thị đầu ra như bên dưới.

Ảnh chụp màn hình đầu ra:

Kết quả hiển thị trong ảnh chụp màn hình ở trên cung cấp thông tin sau

  • Đang quét bảng guru99 với các thuộc tính RAW => true, VERSIONS => 1000
  • Hiển thị các hàng có họ cột và giá trị
  • Trong hàng thứ ba, các giá trị được hiển thị cho biết giá trị đã xóa hiện có trong cột
  • Đầu ra được hiển thị bởi nó là ngẫu nhiên; nó không thể cùng thứ tự với các giá trị mà chúng tôi đã chèn vào bảng

Lệnh sao chép cụm

  • Các lệnh này hoạt động trên chế độ thiết lập cụm của HBase.
  • Để thêm và xóa các đồng nghiệp vào cụm và để bắt đầu và dừng sao chép, các lệnh này được sử dụng nói chung.

Chỉ huy

Chức năng

add_peer

Thêm đồng nghiệp vào cụm để nhân rộng

hbase> add_peer '3', zk1, zk2, zk3: 2182: / hbase-prod

remove_peer

Dừng luồng nhân rộng đã xác định.

Xóa tất cả thông tin siêu dữ liệu về ứng dụng ngang hàng

hbase> remove_peer '1'

start_replication

Khởi động lại tất cả các tính năng sao chép

hbase> start_replication

stop_replication

Dừng tất cả các tính năng sao chép

hbase> stop_replication

Tóm tắt :

HBase shell và các lệnh chung cung cấp thông tin đầy đủ về các loại thao tác dữ liệu khác nhau, quản lý bảng và các lệnh sao chép cụm. Chúng ta có thể thực hiện các chức năng khác nhau bằng cách sử dụng các lệnh này trên các bảng có trong HBase.