데이터 베이스 MySQL 튜토리얼 Managing HBase releases

Managing HBase releases

Jun 07, 2016 pm 04:29 PM
hbase releases y

Last year I (perhaps foolishly?) signed up to be the release manager for the 0.94 branch of HBase. I released 0.94.0 in Mai 2012. Since then I have learned a lot of the open source release process (which, in the end, is not that different

Last year I (perhaps foolishly?) signed up to be the release manager for the 0.94 branch of HBase. I released 0.94.0 in Mai 2012. Since then I have learned a lot of the open source release process (which, in the end, is not that different from release proprietary software).

There are no defined responsibilities per se for such a role other than actually doing the release.

When I started HBase had relatively infrequent releases and there used to be many discussions and delays to a release to get some more "essential" features in.
The partial cure for this is two fold:
  1. Frequent releases on a somewhat strict schedule. If a feature or fix does not get in, it'll be in the next release a few weeks later.
    This reduces the pressure to push a feature into the next point release.
    The only discussions now are typically around serious bugs that have been discovered during the round of release candidates.
    This is the "release train" model. The train stops every few weeks, changes that are ready get on board, the other changes wait for the next train.
  2. A passing, comprehensive test suite, so that we can do the frequent releases with confidence. Problems are identified early (if the tests fail regularly nobody will check out new test failures, or these failures just drown in the noise of failing tests).
We're now on HBase 0.94.5 (released today actually!), and the pattern that emerged after some initial adjustment is one point release (0.94.0, 0.94.1, ...) about every four to six weeks (depending on how many rounds of release candidates were needed), with a relatively constant rate of change of two fixes and improvements per day (hence a point release ends up having 60-80 changes).

As you can see HBase is pretty actively maintained!

So to me being the release manager includes all of the following:
  • Help decide what features or fixes should be included in the release.
  • Help channel the discussion about whether a feature in (unstable) trunk is important enough to be backported to 0.94.
  • Try to review all the changes that go into 0.94. Due to the rate of change I cannot have a detailed look at every fix (I have other responsibilities in my day time job too), but I try to at least skim the changes to see if anything risky or incorrect sticks out.
  • Make sure the test suite passes reliably. This is a pet-peeve of mine and has been especially challenging, but we're now at pass rate of about 70% (up from 20-30% a few months back, but still needs to be improved).
    (Note that many of the failures are due to timing issues in the virtual build machines, and not due to a bug in the HBase code base. A single failing test out of over 1800 tests will make the test suite fail. So 70% is not as bad as it sounds.)
  • Keep timely releases. This my pet-peeve number two.
    Releases should be frequent, on a semi strict schedule, and backward compatible.
    That allows users to get features and fixes sooner and does not require cumbersome serial upgrades (where you need to upgrade from version 0.94.0 to 0.94.1 first in order to then upgrade from 0.94.1 to 0.94.2, and so on). Intermediary releases can be skipped (it is possible to upgrade from 0.94.0 to 0.94.5 directly).
    At the same time - as mentioned above - it allows developers to finish a feature or fix correctly rather than rushing it to "get it in", just because the next release will be 6 months from now.
  • (Sometimes) coordinate with vendors (such as Cloudera and Hortonworks) to time a release or a fix with their releases. This is on a best effort basis, the Apache release is independent of any vendor; but let's be honest, a significant fraction of our users run a release from these vendors.
  • Doing the actual release:
    • Tagging the release in SVN
    • Creating the release artifacts (currently we use the ones generated by the jenkins build for this).
    • Go through a round of one or more RCs and get other committers to test and vote for this RC. Here we need to improve with more automated integration test.
    • Uploading the release to the official Apache mirrors.
    • Pushing the release to the Maven repository (which involves a lot of black voodoo).
0.94 is the current stable release branch of HBase. As long as the next version (0.96) does not have a stable release we will keep backporting new features to 0.94 and keep the frequent releases going.

So far this has been fun (with the occasional frustration about the flaky test suite in the past).

The HBase community is very friendly and invites outside patches and improvements. So download HBase 0.94.5, and start contributing :)

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

<gum> : Bubble Gum Simulator Infinity- 로얄 키를 얻고 사용하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
Nordhold : Fusion System, 설명
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora : 마녀 트리의 속삭임 - Grappling Hook 잠금 해제 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

빅 데이터 저장 및 쿼리를 위해 Beego에서 Hadoop 및 HBase 사용 빅 데이터 저장 및 쿼리를 위해 Beego에서 Hadoop 및 HBase 사용 Jun 22, 2023 am 10:21 AM

빅데이터 시대가 도래하면서 데이터의 처리와 저장이 더욱 중요해지고 있으며, 대용량 데이터를 어떻게 효율적으로 관리하고 분석할 것인가가 기업의 과제가 되었습니다. Apache Foundation의 두 가지 프로젝트인 Hadoop과 HBase는 빅데이터 저장 및 분석을 위한 솔루션을 제공합니다. 이 기사에서는 빅데이터 저장 및 쿼리를 위해 Beego에서 Hadoop 및 HBase를 사용하는 방법을 소개합니다. 1. Hadoop 및 HBase 소개 Hadoop은 오픈 소스 분산 스토리지 및 컴퓨팅 시스템입니다.

가격 노출! 신형 구세주 Y700은 2,000위안 이상부터 시작할 것으로 예상됩니다! 가격 노출! 신형 구세주 Y700은 2,000위안 이상부터 시작할 것으로 예상됩니다! Jul 20, 2023 pm 07:46 PM

7월 17일 뉴스에 따르면 최근 레노버의 세이비어 Y700 태블릿 컴퓨터 신제품 출시 소식이 큰 관심을 끌었다. 최근 노출된 타사 렌더링에 따르면 신형 Savior Y700의 디자인에는 몇 가지 확실한 변경 사항이 있습니다. 신형 구세주 Y700의 후면 카메라 모듈은 기존 제품에 비해 대폭 커지고, 카메라 개수도 1개에서 2개로 업그레이드됐다. 또한, 동체 뒷면의 금속 명판 로고에서 구형 구세주 Y700의 "LEGION" 로고가 취소된 것처럼 보이는 점도 주목할 만합니다. 다만, 머신 전면의 외관 디자인은 크게 달라진 점은 없어 보입니다. 전반적으로 새로운 Savior Y700은 외관상 게임용 태블릿의 일부 요소를 잃어버린 것처럼 보이며 일상 사용에 더 중점을 둡니다.

springboot에 hbase를 통합하는 방법 springboot에 hbase를 통합하는 방법 May 30, 2023 pm 04:31 PM

종속성: org.springframework.dataspring-data-hadoop-hbase2.5.0.RELEASEorg.apache.hbasehbase-client1.1.2org.springframework.dataspring-data-hadoop2.5.0.RELEASE 구성을 추가하는 공식적인 방법은 xml을 사용하는 것입니다. simple 다시 작성하면 다음과 같습니다. @ConfigurationpublicclassHBaseConfiguration{@Value("${hbase.zooke

Java를 사용하여 HBase 기반 NoSQL 데이터베이스 애플리케이션을 개발하는 방법 Java를 사용하여 HBase 기반 NoSQL 데이터베이스 애플리케이션을 개발하는 방법 Sep 20, 2023 am 08:39 AM

Java를 사용하여 HBase 기반 NoSQL 데이터베이스 애플리케이션을 개발하는 방법 소개: 빅 데이터 시대의 도래와 함께 NoSQL 데이터베이스는 대용량 데이터를 처리하는 중요한 도구 중 하나가 되었습니다. HBase는 오픈소스 분산형 NoSQL 데이터베이스 시스템으로 빅데이터 분야에서 광범위한 애플리케이션을 보유하고 있습니다. 이 기사에서는 Java를 사용하여 HBase 기반 NoSQL 데이터베이스 애플리케이션을 개발하는 방법을 소개하고 구체적인 코드 예제를 제공합니다. 1. HBase 소개: HBase는 Hadoop 기반의 분산 시스템입니다.

NoSQL 데이터베이스와 분산 스토리지를 구현하기 위해 PHP와 Apache HBase가 통합되었습니다. NoSQL 데이터베이스와 분산 스토리지를 구현하기 위해 PHP와 Apache HBase가 통합되었습니다. Jun 25, 2023 pm 06:01 PM

인터넷 애플리케이션과 데이터 양이 지속적으로 증가함에 따라 기존 관계형 데이터베이스는 더 이상 대규모 데이터를 저장하고 처리해야 하는 요구 사항을 충족할 수 없습니다. NoSQL(NotOnlySQL)은 새로운 유형의 데이터베이스 관리 시스템으로 대용량 데이터 저장 및 처리에 상당한 이점을 갖고 있어 점점 더 많은 관심과 활용을 받고 있습니다. NoSQL 데이터베이스 중 ApacheHBase는 Google의 BigTable 아이디어를 기반으로 설계되었으며 매우 인기 있는 오픈소스 분산 데이터베이스입니다.

Go 언어에서 HBase를 사용하여 효율적인 NoSQL 데이터베이스 애플리케이션 구현 Go 언어에서 HBase를 사용하여 효율적인 NoSQL 데이터베이스 애플리케이션 구현 Jun 15, 2023 pm 08:56 PM

빅데이터 시대가 도래하면서 대용량 데이터의 저장과 처리가 더욱 중요해졌습니다. NoSQL 데이터베이스 측면에서 현재 널리 사용되는 솔루션은 HBase입니다. Go 언어는 정적으로 강력한 형식의 프로그래밍 언어로서 간단한 구문과 뛰어난 성능으로 인해 클라우드 컴퓨팅, 웹 사이트 개발, 데이터 과학 등의 분야에서 점점 더 많이 사용되고 있습니다. 이 기사에서는 Go 언어에서 HBase를 사용하여 효율적인 NoSQL 데이터베이스 애플리케이션을 구현하는 방법을 소개합니다. HBase 소개 HBase는 확장성이 뛰어나고 신뢰성이 높은 기본 솔루션입니다.

Beego에서 데이터 저장 및 쿼리를 위해 HBase 사용 Beego에서 데이터 저장 및 쿼리를 위해 HBase 사용 Jun 22, 2023 am 11:58 AM

Beego 프레임워크에서 데이터 저장 및 쿼리를 위해 HBase 사용 인터넷 시대의 지속적인 발전으로 인해 데이터 저장 및 쿼리가 점점 더 중요해졌습니다. 빅데이터 시대의 도래와 함께 다양한 데이터 소스가 해당 분야에서 중요한 위치를 점유하고 있습니다. 비관계형 데이터베이스는 데이터 저장 및 쿼리 측면에서 확실한 장점을 지닌 데이터베이스이며, HBase는 Hadoop 기반의 분산형 비관계형 데이터베이스입니다. 관계형 데이터베이스. 이 기사에서는 Beego 프레임워크에서 데이터 저장 및 쿼리를 위해 HBase를 사용하는 방법을 소개합니다. 1.H

Workerman에서 데이터 저장 및 쿼리를 위해 HBase를 사용하는 방법 Workerman에서 데이터 저장 및 쿼리를 위해 HBase를 사용하는 방법 Nov 07, 2023 am 08:30 AM

Workerman은 다수의 동시 연결을 호스팅할 수 있는 고성능 PHPsocket 프레임워크입니다. 기존 PHP 프레임워크와 달리 Workerman은 Apache 또는 Nginx와 같은 웹 서버에 의존하지 않고 대신 PHP 프로세스를 시작하여 전체 애플리케이션을 실행합니다. Workerman은 매우 높은 작업 효율성과 더 나은 부하 용량을 제공합니다. 동시에 HBase는 빅데이터 분야에서 널리 사용되는 분산형 NoSQL 데이터베이스 시스템입니다.

See all articles