HBase version evolutionary history and characteristics of large version

HBase 2.0  New Features Introduction

April 30, 2018 HBase released a version of Release 2.0. HBase version 2.0 carries a lot of Features, contains a total of 4551 Issues, it can be said to be the largest to date version.

  • A new Region assignment manager

AssignmentManager V2 ( "AMv2") based on Procedure V2 achieved more quickly assign Region, the region maintain a state machine storage is no longer dependent on ZooKeeper, better able to cope with the problem RIT Region for a long time.

  • Offheaping of Read/Write

Heap reduce the use of memory, the memory switch Offheap region, effectively reducing the pressure GC

  • In-Memory Compaction

Alternatively redesigned CompactingMemStore DefaultMemStore, after data CompactingMemStore reaches a certain size, the file is not directly HFile Flush to the HDFS, but the first Flush into a non-rewritable memory of the Segment, Thus, a plurality of memory may be pre Segments merger, when after reaching a certain size, it Flush into HFile files in HDFS, the benefits of doing so is to reduce write amplification IO problems Compaction brings.

  • NettyRpcServer

HBase2.0 default NettyRpcServer start
using alternative Netty HBase native RPC server, greatly enhance the HBaseRPC throughput, reduced latency

  • Async RPC Client

HBase2.0 Client is not the original synchronization wait, but to use asynchronous RPC mechanism, greatly improving the Client-side request concurrency, improve resource utilization, expansion of throughput.

  • RegionServer Group

In HBase 2.0 we can be divided into a plurality of logical RegionServer Group, such a capability can provide multi-tenant.

  • Support for MOB

MOB characteristic storage medium such HBase support medium is less than 10MB of data objects, these small objects file is stored in a separate file HFile original object into direct hbase storing large compared to its higher write efficiency; Mob data storage format or in hfile storage, HBase compatible with existing features, such as snapshot, bulkload, replication and so on. MOB data files independent of compaction and expire clean mechanism, stability is more controllable.

  • Compatibility with version 1.x

Client version 1.x cluster can access version 2.0, normal data read and write operations. But the case of non-stop service 1.x version of a rolling upgrade to version 2.0 is not done, the case 1.x version of coprocessor / Endpoint changes also do not work properly in version 2.0.

HBase1.0 new features introduced

  • API changes, such as giving up several important client API :( HTableInterface, HTable, HBaseAdmin), recommended program to upgrade to the new API, the old PAI will be removed in 2.X.
  • Reads the configuration file without restarting the regionserver.
  • master node also runs regionserver. master and share regionserver RPC ports.
  • Global memstore and automatically adjusts the size of the block cache.
  • Bucket cache improved (data blocks in terms of compression and availability)
  • A new cluster of terminals pluggable into a customized storage replication. (A new pluggable replication endpoint to plug in to HBase's inter-cluster replication to replicate to a custom data store)
  • New truncate table command
  • New meta table instead zk be faster region allocation (This feature is off by default all)
  • Extensive documentation improvements
  • [HBASE-12511] - namespace permissions - add support from table creation privilege in a namespace 'C'
  • Bit Thrift Server add Thrift-over-HTTPS and doAs support (?)
  • bulkload copy table
  • Use Prefix setting the start and end of a row of more easy.
  • The script to stop using RPC regionserver
  • It supports atomic check and change the client.
  • Automatically increase the value of the heap size if the start does not specify the size of the words.
  • regionserver coprocessor terminal.
  • Add a command to compress all the region on a regionserver.
  • Add LongComparator filter
  • [Shell] Online change load configuration files.
  • Some repair the REST server.
  • The need to support zk3.4.X.
  • The need to support hadoop2.x
  • jdk1.7, 1.6 is no longer supported
  • The default port number has been changed by the 600xx 160XX
  • Default hfile version3
  • Slab cache has been removed, using a bucket cache
  • The default heap memory by the 1G regionserver jdk to default values, typically a quarter of physical memory.
  • mapred packages and classes have been abolished.
  • Added two new modules: hbase-annotations and hbase-rest

HBase 0.98 introduces new features

HBase 0.98 new version contains a number of new security features :

  • cell Visibility labels
  • cell ACL server-side encryption and transparent
  • Write-ahead log threading model under high load conditions provides higher throughput
  • Reverse scanner
  • Snapshot file MapReduce
  • Stripe Compaction

HBase version evolutionary history

Since 2006, HBase has gone through 10 years of evolution iteration:

  • In December 2006, Google released a paper on "Bigtable: A Distributed Storage System for Structured Data", based on the design idea of ​​the literary theory, HBase prototype implementation later be born.
  • February 2007, as a branch of the Hadoop project, the first version of HBase was born.
  • In October 2007, the first available version of HBase (Hadoop0.15.0) was born.
  • In January 2008, Hadoop become Apache top-level project, HBase its subprojects.
  • In October 2008, HBase 0.18.0 release.
  • January 2009, HBase 0.19.0 release.
  • October 2009, HBase 0.20.0 release.
  • May 2010, HBase was promoted to the top-level Apache project.
  • June 2010, HBase first developer version (0.89.20100621) release.
  • January 2011, Hbase first sustainable, stable version (0.90.0) release.
  • 2012 January, Hbase 0.92.0 release, support for things (coprocessor) and safety (security) as its version of the label.
  • 2012 May, HBase 0.94.0 release, as part of its performance version of the label.
  • January 2013, HBase 0.96.0 release.
  • February 2014, version 0.98.0 release, this version is the version of the first to use a lot of domestic companies.
  • February 2015, HBase 1.0.0 release.
  • February 2016, HBase 1.2.0 release.
  • May 2017, HBase 1.2.6 release, as part of its version 1.2 stable version label.
  • April 2018, HBase long-awaited official release of version 2.0.0.
  • June 2018, Hbase Hbase2.0.1 release.

HBase0.98.0, HBase1.2.6 version, HBase1.4 + version is the mainstream version of a lot of Internet companies, system stability, reliability and so have endured many trials. In addition, the community who want to keep up the pace, students experience the new features, you can use the latest version 2.0.

Guess you like

Origin www.cnblogs.com/yyy-blog/p/11846738.html