hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ted Yu <yuzhih...@gmail.com>
Subject Re: [ANNOUNCE] Apache HBase 1.0.0 is now available for download
Date Tue, 24 Feb 2015 14:17:04 GMT
Marvelous. 



> On Feb 24, 2015, at 12:28 AM, Enis Söztutar <enis@apache.org> wrote:
> 
> The HBase Team is pleased to announce the immediate release of HBase 1.0.0.
> Download it from your favorite Apache mirror [1] or maven repository.
> 
> HBase 1.0.0 is the next stable release, and the start of "semantic
> versioned"
> releases (See [2]).
> 
> The 1.0.0 release has three goals:
> 1) to lay a stable foundation for future 1.x releases;
> 2) to stabilize running HBase cluster and its clients; and
> 3) make versioning and compatibility dimensions explicit
> 
> Including previous (developer preview) 0.99.x releases, 1.0.0 contains over
> 1500
> jiras resolved on top of 0.98.0. Some of the major changes are:
> 
> API reorganization and changes
>  HBase’s client level API has evolved over the years. To simplify the
>  semantics and to support and make it extensible and easier to use in
>  the future, we revisited the API before 1.0. To that end, 1.0.0 introduces
>  new APIs, and deprecates some of the commonly-used client side APIs
>  (HTableInterface, HTable and HBaseAdmin).
> 
>  We advise to update your application to use the new style of APIs, since
>  deprecated APIs will be removed in future releases (2.x). See [3] and [4]
>  for an overview of changes.
> 
>  All Client side API's are marked with InterfaceAudience.Public class,
>  indicating that the class/method is an official "client API" for HBase
>  (See “11.1.1. HBase API Surface” in the HBase Refguide[2] for more details
>  on the Audience annotations) Going forward, all 1.x releases are planned
> to
>  be API compatible for classes annotated as client public.
> 
> Read availability using timeline consistent region replicas
>  This release contains Phase 1 items for experimental "Read availability
> using
>  timeline consistent region replicas" feature. A region can be hosted in
>  multiple region servers in read-only mode. One of the replicas for the
> region
>  will be primary, accepting writes, and other replicas will be sharing the
> same
>  data files. Read requests can be done against any replica for the region
> with
>  backup RPCs for high availability with timeline consistency guarantees.
> More
>  information can be found at HBASE-10070.
> 
> Online config change and other forward ports from 0.89-fb branch
>  HBASE-12147 forward ported online config change which enables some of the
>  configuration from the server to be reloaded without restarting the region
>  servers.
> 
> Master runs a Region Server as well
>  Starting with 1.0.0, the HBase master server and backup master servers
> will
>  also act as a region server. RPC port and info port for web UI is shared
> for
>  the master and region server roles. Active master can host regions of
>  defined tables if configured (disabled by default). Backup masters will
> not
>  host regions.
> 
> Other notable improvements in 1.0.0 are listed (but not limited to) below:
> - A new web skin in time for 1.0 (http://hbase.apache.org)
> - [HBASE-5349]  - Automatic tuning of global memstore and block cache sizes
> - Various security, tags and visibility labels improvements
> - Bucket cache improvements (usability and compressed data blocks)
> - [HBASE-11367] - A new pluggable replication endpoint to plug in to
> HBase's
>   inter-cluster replication to replicate to a custom data store
> - [HBASE-11885] - A Dockerfile to easily build and run HBase from source
> - [HBASE-8332]  - Truncate table command
> - [HBASE-11059] - Region assignment to use hbase:meta table instead of
>   zookeeper for faster region assignment (disabled by default)
> - Extensive documentation improvements
> - [HBASE-12511] - namespace permissions - add support from table creation
>   privilege in a namespace 'C'
> - [HBASE-12568] - Adopt Semantic Versioning and document it in the book
> - [HBASE-12640] - Add Thrift-over-HTTPS and doAs support for Thrift Server
> - [HBASE-12651] - Backport HBASE-12559 'Provide LoadBalancer with online
>   configuration capability' to branch-1
> - [HBASE-10560] - Per cell TTLs
> - [HBASE-11997] - CopyTable with bulkload
> - [HBASE-11990] - Make setting the start and stop row for a specific prefix
>   easier
> - [HBASE-12220] - Add hedgedReads and hedgedReadWins metrics
> - [HBASE-12032] - Script to stop regionservers via RPC
> - [HBASE-11907] - Use the joni byte[] regex engine in place of j.u.regex in
>   RegexStringComparator
> - [HBASE-11796] - Add client support for atomic checkAndMutate
> - [HBASE-11804] - Raise default heap size if unspecified
> - [HBASE-12126] - Region server coprocessor endpoint
> - [HBASE-12075] - Preemptive Fast Fail
> - [HBASE-12363] - Improve how KEEP_DELETED_CELLS works with MIN_VERSIONS
> - [HBASE-12434] - Add a command to compact all the regions in a
> regionserver
> - [HBASE-8707]  - Add LongComparator for filter
> - [HBASE-12286] - [shell] Add server/cluster online load of configuration
>   changes
> - [HBASE-12361] - Show data locality of region in table page
> - [HBASE-12496] - A blockedRequestsCount metric
> - [HBASE-12730] - Backport HBASE-5162 (Basic client pushback mechanism) to
>   branch-1
> - [HBASE-12731] - Heap occupancy based client pushback
> - [HBASE-12728] - buffered writes substantially less useful after removal
> of
>   HTablePool
> - [HBASE-5699] - Run with > 1 WAL in HRegionServer
> - Various fixes to REST server
> - Internal refactoring for abstracting away zookeeper usage
> - Better support for Cell interface internally in read and write paths for
>   better performance and flexibility
> - Combining internal mvcc and seqId infrastructure
> - [HBASE-10156][HBASE-8755] - Ring buffer based WAL improvements
> - [HBASE-9117] - Switch to using new style of client APIs internally
> - Perf improvements
> - Numerous improvements in other areas and bug fixes.
> 
> 1.0.0 release has these changes in default behavior (see [4])
> - [HBASE-12241] - Zookeeper 3.4.x is required
> - [HBASE-10781] - Hadoop-2.x is required
> - [HBASE-11666] - JDK-1.7 is required
> - Default ports have changed from 600XX range into out of ephemeral 160XX
>   range.
> - Hfile version 3 has been enabled by default.
> - Slab cache has been removed (use bucket cache instead)
> - [HBASE-11804] - Default heap for region servers (and master) is changed
> from
>   1GB to the jdk's default. On most platforms, it will default to 1/4 of
>   physical memory
> - [HBASE-10602] - Some client facing APIs (HTableInterface, etc) has been
>   deprecated and replaced.
> - Custom Filter implementations should switch to using the new recommended
>   APIs.
> - Some authorization permissions (especially regarding namespaces) have
> been
>   changed (HBASE-12511, HBASE-8015)
> - [HBASE-11178] - Mapred package and classes under there has been
>   un-deprecated.
> - Two new modules (jar files): hbase-annotations and hbase-rest.
> - HTrace dependency is moved to the Apache artifacts [7]
> - Various updates to dependency versions
> 
> Full list of the issues can be found at:
> - 1.0.0 issues  :
> https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310753&version=12325852
> - 0.99.2 issues :
> https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310753&version=12325675
> - 0.99.1 issues :
> https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310753&version=12328551
> - 0.99.0 issues :
> https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310753&version=12328822
> 
> 
> Compatibility
> -----------------
> Source Compatibility:
> Client side code in HBase-1.0.0 is (mostly) source compatible with earlier
> versions. Some minor API changes might be needed from the client side.
> 
> Wire Compatibility:
> HBase-1.0.0 release is wire compatible with 0.98.x releases. Clients and
> servers running in different versions as long as new features are not used
> should be possible.
> A rolling upgrade from 0.98.x clusters to 1.0.0 is supported as well. 1.0.0
> introduces a new file format (hfile v3) that is enabled by default that
> 0.96.x code cannot read. Thus, rolling upgrade from 0.96 directly to 1.0.0
> is
> not supported.
> 1.0.0 is NOT wire compatible with earlier releases (0.94, etc).
> 
> Binary Compatibility:
> Binary compatibility at the Java API layer with earlier versions (0.98.x,
> 0.96.x and 0.94.x) is NOT supported. You may have to recompile your client
> code and any server side code (coprocessors, filters etc) referring to
> hbase jars.
> 
> Upgrading
> --------------
> See [5] for upgrade instructions and extended discussion on the changes.
> 
> From 0.98.x : Upgrade from 0.98.x in regular upgrade or rolling upgrade
> fashion
> is supported.
> 
> From 0.96.x : Upgrade from 0.96.x is supported with a shutdown and restart
> of
> the cluster.
> 
> From 0.94.x : Upgrade from 0.94.x is supported similar to upgrade from
> 0.94 -> 0.96. The upgrade script should be run to rewrite cluster level
> metadata. See [6] for details.
> 
> 
> Supported Hadoop versions
> --------------------------------------
> 1.0.0 release drops support for Hadoop-1.x releases. Only Hadoop-2.x
> releases are supported. Hadoop-2.4.x, Hadoop-2.5.x and Hadoop-2.6.x releases
> are the most tested hadoop releases and we recommend running with those
> or later versions. Earlier Hadoop-2 based releases, hadoop-2.2.x and 2.3.x
> are not tested to the full extend. More information can be found at [8]
> 
> 
> Supported Java versions
> ----------------------------------
> 1.0.0 release drops support for JDK6. Only JDK7 is supported. JDK8 support
> is experimental. More information can be found at [9].
> 
> HBase-1.0.0 is marked as the current stable version, and we encourage all
> users
> to start using this version.
> 
> Thanks to everybody who contributed to this release!
> 
> Cheers,
> The HBase Team
> 
> 1. http://www.apache.org/dyn/closer.cgi/hbase/
> 2. https://hbase.apache.org/book/upgrading.html#hbase.versioning
> 3. http://www.slideshare.net/xefyr/apache-hbase-10-release
> 4. http://s.apache.org/hbase-1.0-api
> 5. https://hbase.apache.org/book/upgrade1.0.html#upgrade1.0.changes
> 6. https://hbase.apache.org/book/upgrade1.0.html#upgrade1.0.from.0.94
> 7. https://htrace.incubator.apache.org/
> 8. https://hbase.apache.org/book/configuration.html#hadoop
> 9. https://hbase.apache.org/book/configuration.html#java

Mime
View raw message