Getting Started with HBase
HBase is a column-based distributed storage system that features high reliability, performance, and scalability. This section describes how to use HBase from scratch. For example, how to run the HBase shell command to create tables, insert data into tables, modify tables, read and delete table data, and delete tables.
Background Information
Suppose a user develops an application to manage users who use service A in an enterprise. The procedure of operating service A on the HBase client is as follows:
- Create the user_info table.
- Add users' educational backgrounds and professional titles to the table.
- Query user names and addresses by user ID.
- Query information by user name.
- Deregister users and delete user data from the user information table.
- Delete the user information table after service A ends.
ID |
Name |
Gender |
Age |
Address |
---|---|---|---|---|
12005000201 |
A |
Male |
19 |
Shenzhen, Guangdong |
12005000202 |
B |
Female |
23 |
Shijiazhuang, Hebei |
12005000203 |
C |
Male |
26 |
Ningbo, Zhejiang |
12005000204 |
D |
Male |
18 |
Xiangyang, Hubei |
12005000205 |
E |
Female |
21 |
Shangrao, Jiangxi |
12005000206 |
F |
Male |
32 |
Zhuzhou, Hunan |
12005000207 |
G |
Female |
29 |
Nanyang, Henan |
12005000208 |
H |
Female |
30 |
Kaixian, Chongqing |
12005000209 |
I |
Male |
26 |
Weinan, Shaanxi |
12005000210 |
J |
Male |
25 |
Dalian, Liaoning |
Buying an HBase Cluster
- Log in to the CloudTable console.
- Select a region in the upper left corner.
- Click Cluster Management.
- Click Buy Cluster in the upper right corner of the Cluster Management page and set related parameters. For details about how to configure ports for security group rules, see Table 2.
- Click Buy Now. On the displayed page, confirm the specifications and click Finish.
- Return to the cluster list to view the cluster creation progress. If the cluster status is In service, the cluster is created. For details, see Creating an HBase Cluster.
Table 2 Custom security rules Direction
Protocol
Port/Range
Source/Security Group
Usage
Outbound
All
All
0.0.0.0/0
Permit in the outbound direction
Inbound
TCP
16000
Security group of the CloudTable HBase cluster
HMaster RPC port
TCP
16020
RegionServer RPC port
TCP
2181
ZooKeeper client connection monitoring port
TCP
2888
Follower connection monitoring port
TCP
3888
ZooKeeper election port
TCP
2000
HAgent access port
Downloading the HBase Client
- Log in to the CloudTable console.
- Select a region in the upper left corner.
- Click Help in the navigation pane.
- Choose Download the HBasex.x Client under Helpful Links (choose the version that you need) on the right of the help page to download the client installation package.
Preparing an ECS
- Buy an ECS.
- Log in to the ECS console.
- Click in the upper left corner to select a region.
- Click the service list icon and choose .
- Click Buy ECS.
- Configure ECS parameters.
- Select the CPU architecture and specifications.
Figure 1 Configuring basic settings
- Select the image and disk specifications.
Figure 2 Selecting the image and disk specifications
- Select the CPU architecture and specifications.
- Click Next: Configure Network.
- Select a VPC and a security group.
Figure 3 Configuring network
- Select Auto assign and set Billed By to Traffic.
Figure 4 Configuring EIP type and bandwidth billing type
- Select a VPC and a security group.
- Click Next: Configure Advanced Settings.
Configure the ECS name and password.
Figure 5 Configuring advanced settings
- Click Next: Confirm to confirm the configuration information.
Figure 6 Confirming the configuration information
- Select an enterprise project, select the sentence in the Agreement area, confirm the configuration information, and click Submit.
- Return to the ECS list page and view the ECS creation progress.
Installing the Client
This part introduces how to manually install the client. You can also choose the one-click client deployment method.
- Use the SSH login tool (such as PuTTY) to log in to the Linux ECS through the EIP.
For details about how to log in to the ECS, see "Remotely Logging In to a Linux ECS (Using an SSH Password)" in Logging In to a Linux ECS of the Elastic Cloud Server User Guide.
- Transfer the client downloaded in 2 to the Linux ECS.
- Decompress the client installation package.
cd <Path of the client installation package> tar xzvf hbase-1.3.1-bin.tar.gz
cd <Path of the client installation package> tar xzvf hbase-2.4.14-bin.tar.gz
<Path of the client installation package>: Replace it with the actual path.
- Configure the ZooKeeper address in a configuration file.
In the decompression directory of the client installation package, open the hbase/conf/hbase-site.xml file and set the following parameters:
- hbase.zookeeper.quorum: The value of this parameter is the ZooKeeper link of the cluster found in the cluster list.
Log in to the CloudTable console and choose Cluster Management. In the cluster list, locate the required cluster and obtain its ZooKeeper link in the ZK Link column. Add this link address to the hbase/conf/hbase-site.xml file, as shown in Figure 8.
Figure 7 Viewing the ZooKeeper link
- mapreduce.cluster.local.dir: Check whether the configuration item exists. If the configuration item does not exist, add it.
The configuration example is as follows:
<configuration> <property> <name>hbase.zookeeper.quorum</name> <value>xxx-zk1.cloudtable.com,xxx-zk2.cloudtable.com,xxx-zk3.cloudtable.com</value> </property> <property> <name>mapreduce.cluster.local.dir</name> <value>${hadoop.tmp.dir}/mapred/local</value> </property> </configuration>
- hbase.zookeeper.quorum: The value of this parameter is the ZooKeeper link of the cluster found in the cluster list.
- Start the shell to access the cluster. Run the bin/hbase shell command to start the shell to access the cluster.
Running the HBase Client Command to Implement Service A
- Create the user_info table according to Table 1 and add related data to it.
create 'user_info',{NAME => 'i'}
For example, to add information about the user whose ID is 12005000201, run the following commands:
put 'user_info','12005000201','i:name','A' put 'user_info','12005000201','i:gender','Male' put 'user_info','12005000201','i:age','19' put 'user_info','12005000201','i:address','Shenzhen, Guangdong'
- Add users' educational backgrounds and titles to the user_info table.
For example, to add educational background and title information about user 12005000201, run the following commands:
put 'user_info','12005000201','i:degree','master' put 'user_info','12005000201','i:pose','manager'
- Query user names and addresses by user ID.
For example, to query the name and address of user 12005000201, run the following command:
scan 'user_info',{STARTROW=>'12005000201',STOPROW=>'12005000201',COLUMNS=>['i:name','i:address']}
- Query information by user name.
For example, to query information about user A, run the following command:
scan 'user_info',{FILTER=>"SingleColumnValueFilter('i','name',=,'binary:A')"}
- Delete user data from the user information table.
All user data needs to be deleted. For example, to delete data of user 12005000201, run the following command:
delete 'user_info','12005000201','i'
- Delete the user information table.
disable 'user_info';drop 'user_info'
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot