Thanks for the notes and efforts Stack, it's pretty helpful to know the
progress and latest status of the work!

Best Regards,
Yu


On Wed, 28 Jul 2021 at 12:13, Stack <[email protected]> wrote:

> Note, no meeting tomorrow. We'll meet next week on the 4th or 5th of
> August.
> Thanks,
> S
>
> On Thu, Jul 22, 2021 at 8:53 PM Stack <[email protected]> wrote:
>
> > Notes from yesterday's meeting (attendees, please amend if I misrepresent
> > or if you have anything extra to add!)
> >
> > Split Meta Design Reset Status
> >
> > Wed Jul 21 21:24:38 PDT 2021
> >
> > Attendees: Bharath, Stack, Duo, and Francis
> >
> > We went over the new updates to the Brainstorming [1] section under
> >
> > Design in the Super Split Meta Design doc [2].
> >
> > First was the new addition, 4.1.2 Extend (& Move) ConnectionRegistry;
> hide
> >
> > ROOT from Client [3]. In particular, filling out how "ROOT" might be
> >
> > implemented behind the new API in ConnectionRegistry. On option 1.,
> >
> > replicating master-local Region to RegionServers, options considered
> >
> > included
> >
> >  * Listener on master-local Region WAL to replicate.
> >
> >  * Perhaps Read-Replica but master-local is not an actual Region
> >
> >  * Needs to be incremental edits because ROOT could get too big to ship
> >
> >    in a lump; need to visit how...
> >
> >  * Possibly in-memory-only Regions on RS replicated from master-local
> >
> >    Region via WAL tailing <= [email protected]
> >
> >  * Which RegionServers? Those hosting ROOT replicas?
> >
> >  * How to bootstrap? Failure scenarios.
> >
> >  * This would be a new replication system alongside current; could
> >
> >    evolve to replace/improve old?
> >
> > Duo offered to look into means of replicating the master-local Region
> >
> > out to RegionServers.
> >
> > Next up was discussion constrasting ROOT as a standalone table vs
> >
> > First-meta Region-as-Root (see 4.1.1 hbase:meta,,1 as ROOT [4]); i.e.
> >
> > options 2 and 3 for how we'd implement a ROOT. One item that came up
> >
> > was whether a need to specify one replica count for a ROOT table vs
> >
> > another for hbase:meta. If so, then it would be argument for ROOT as
> >
> > standalone table (Others of us argued it not a concern of consequence).
> >
> > If ROOT access is behind a new simple API in ConnectionRegistry, how
> >
> > to stop clients reading hbase:meta table if not Master or fronted by
> >
> > a ConnectionRegistry request? (Should be able to switch on client
> >
> > identity/source). One suggestion for First-meta-Region-as-ROOT was
> >
> > NOT returning the first Region to the client post-meta split when
> >
> > accessing via the simple API. Some concern this would confuse old
> >
> > Clients (Francis was going to take a look).
> >
> > Moved to discussion how we'd move ConnectionRegistry from
> >
> > hosted-by-Master to hosted-by-RegionServers. How to bootstrap such a
> >
> > system came up? Where do clients go? How do they know which
> >
> > RegionServers (special regionserver group?  Every RS fields
> >
> > ConnectionRegistry requests but only designated core serve the ROOT
> >
> > lookup APIs?). This was a TODO.
> >
> > This led naturally into 4.1.5 System RS group for client meta services
> >
> > [5], a new addition under Brainstorming. Discussion. Bharath to look
> >
> > into feedback.
> >
> > On the end of the discussion, group expressed support for adding
> >
> > simple API to the ConnectionRegistry to hide ROOT implementation
> >
> > detail from client. Support was expressed for moving ConnectionRegistry
> >
> > from Master to RegionServers. Intent is to move forward on design of
> >
> > these pieces: e.g. how client bootstraps.
> >
> > Support was expressed for getting at least the bones of a split meta
> >
> > into an hbase3 before the RCs.
> >
> > Where we'd actually store hbase:meta Region locations -- i.e. how a
> >
> > "ROOT' would be implemented -- was for our next meeting informed by
> >
> > research of the various approaches noted mostly above. It was
> >
> > also thought that the new ConnectionRegistry should not preclude
> >
> > making progress on the "ROOT" implementation.
> >
> > Will post notice of next meeting (next Weds or the one
> >
> > following).
> >
> > 1.
> >
> https://docs.google.com/document/d/11ChsSb2LGrSzrSJz8pDCAw5IewmaMV0ZDN1LrMkAj4s/edit#heading=h.wr0fwvw06j7n
> >
> > 2.
> >
> https://docs.google.com/document/d/11ChsSb2LGrSzrSJz8pDCAw5IewmaMV0ZDN1LrMkAj4s/edit#heading=h.9s666p6no9cq
> >
> > 3.
> >
> https://docs.google.com/document/d/11ChsSb2LGrSzrSJz8pDCAw5IewmaMV0ZDN1LrMkAj4s/edit#heading=h.90th11txi153
> >
> > 4.
> >
> https://docs.google.com/document/d/11ChsSb2LGrSzrSJz8pDCAw5IewmaMV0ZDN1LrMkAj4s/edit#heading=h.ikbhxlcthjle
> >
> > 5.
> >
> https://docs.google.com/document/d/11ChsSb2LGrSzrSJz8pDCAw5IewmaMV0ZDN1LrMkAj4s/edit#heading=h.utoenf10t05b
> >
> > On Tue, Jul 20, 2021 at 11:00 AM Stack <[email protected]> wrote:
> >
> >> Lets meet tomorrow. Please review the design doc "Design/Brainstorming"
> >> Section 4.1 [1] before the meeting if you can (No harm if a refresh of
> the
> >> requirements section while you are at it).
> >>
> >> Topic: Split Meta Design Reset Status
> >> Time: Jul 21, 2021 05:00 PM Pacific Time (US and Canada)
> >>
> >> Join Zoom Meeting
> >>
> https://us04web.zoom.us/j/77318920525?pwd=OFZXZFVPSHJLaGNsby9SN25OV1F2Zz09
> >>
> >> Meeting ID: 773 1892 0525
> >> Passcode: hbase
> >>
> >> Thanks,
> >> S
> >>
> >> 1. 1.
> >>
> https://docs.google.com/document/d/11ChsSb2LGrSzrSJz8pDCAw5IewmaMV0ZDN1LrMkAj4s/edit#heading=h.wr0fwvw06j7n
> >>
> >> On Thu, Jul 8, 2021 at 1:04 PM Stack <[email protected]> wrote:
> >>
> >>> Meeting notes (Meeting happend after I figured the zoom had a 'waiting
> >>> room' -- sorry Duo)
> >>>
> >>> Split Meta Status Zoom Meeting
> >>> Wed Jul  7, 2021 @ 5pm for ~90minutes
> >>> Attendees: Duo, Francis, Stack, and Clay
> >>> Agenda: Mainly talk about the one-pager design and PoC proposed in [2]
> >>> and added to the
> >>> split-meta design doc here [1] (hereafter, the 'hbase:meta,,1 as ROOT'
> >>> approach)
> >>>
> >>> Duo suggested no advantage treating the first meta of hbase:meta table
> >>> special; as a "root"
> >>> and other comments (see remarks in [2]).
> >>>
> >>> Some pushback. When meta is NOT split, all works as it did before (big
> >>> on backward-compatible).
> >>>
> >>> Duo suggested just intro a ROOT table altogether rather than treat the
> >>> first Region
> >>> in the hbase:meta table as a 'root' and then mirror to zk the first
> meta
> >>> region; if no
> >>> split, then old clients should just work even though now hbase cluster
> >>> has a ROOT table.
> >>> Discussion. If no split, what's to do, etc.?
> >>>
> >>> Duo expressed concern that if split-meta is not on always -- enabled
> >>> optionally -- then
> >>> the code path will not see exercise and split-meta will likely fail and
> >>> go the way of
> >>> prefix tree and distributed log replay -- a feature that failed,
> >>> cluttered up the
> >>> code base, and only later was removed. Discussion. Was allowed this
> >>> could happen.
> >>> Counter examples: RegionServer Groups. A few of the attendees
> >>> volunteered they need
> >>> split meta for their production so would try to see it through.
> >>>
> >>> Some back and forth. Duo allowed that merit to the 'hbase:meta,,1 as
> >>> ROOT' if we don't
> >>> split; not much changes.
> >>>
> >>> Comment on the PoC that its all
> >>>
> >>>   if 'first special meta region' do this
> >>>   else do something else...
> >>>
> >>> (all over the codebase) but it was suggested that this will be the case
> >>> if ROOT table
> >>> added also and argued any implementation will have this issue (if ROOT
> >>> then....) and
> >>> THAT ugly 'root' comparator too whether a ROOT table or the
> >>>  'hbase:meta,,1 as ROOT'
> >>> approach.
> >>>
> >>> Clay asking if meta is a bottleneck (Clay played the 'operator' and
> >>> 'new-to-the-topic'
> >>> roles). Some discussion around how indeed it is and why we want to
> split
> >>> meta at all.
> >>>
> >>> Clay mentioned how Master is inline for data now (Master-hosted
> >>> Registry)....
> >>> Discussion. Hopefully temporary state -- Registry doesn't need to be
> >>> hosted on
> >>> Master -- and Master will return to its background role -- soon.
> >>>
> >>> Clay brought up rollback after meta split. Discussion. Some agreement
> it
> >>> could be done for
> >>> 'hbase:meta,,1 as ROOT' approach (but would be UGLY!). If root table
> and
> >>> client had
> >>> started to use ROOT, it might be harder...
> >>>
> >>> Duo suggested that we not change the client at all; that client stays
> >>> same however split
> >>> meta is implemented (with addition of a root table or using
> >>> hbase:meta,,1 as 'root').
> >>> This sounded attractive. We discussed how this could be done in a
> >>> backward compatible way;
> >>> add simple location lookup API to Registry...A write-up on how this
> >>> might work will be posted
> >>> in next day or so for others to review (Need to figure getting Registry
> >>> off Master).
> >>>
> >>> Clay suggested, as an operator, how he thought the split meta should
> >>> roll out. One of us
> >>> claimed this described the 'hbase:meta,,1 as ROOT' approach.
> >>>
> >>> Duo had to go to work so we called it quits and said we'd meet again
> >>> same time, next week.
> >>>
> >>> 1.
> >>>
> https://docs.google.com/document/d/11ChsSb2LGrSzrSJz8pDCAw5IewmaMV0ZDN1LrMkAj4s/edit#heading=h.ikbhxlcthjle
> >>> 2. https://issues.apache.org/jira/browse/HBASE-25761
> >>>
> >>> On Wed, Jul 7, 2021 at 5:09 PM 张铎(Duo Zhang) <[email protected]>
> >>> wrote:
> >>>
> >>>> Is it only me? I tried to join the meeting but it always tell me that
> I
> >>>> need to wait for the presenter to invite me to join...
> >>>>
> >>>> Stack <[email protected]> 于2021年7月8日周四 上午1:04写道:
> >>>>
> >>>> > Short notice but reminder that this meeting is today at 5pm PST (We
> >>>> talked
> >>>> > of doing it earlier but in the end lets just keep the original 5pm
> >>>> time).
> >>>> > Thanks,
> >>>> > S
> >>>> >
> >>>> > On Tue, Jul 6, 2021 at 11:36 AM Stack <[email protected]> wrote:
> >>>> >
> >>>> > > Lets do a quick chat on current state of hbase split-meta project.
> >>>> > >
> >>>> > > Francis has posted a suggested one-pager design in HBASE-25761
> which
> >>>> > would
> >>>> > > be good to review before the meeting if you can. Lets discuss this
> >>>> and
> >>>> > any
> >>>> > > other suggestions for moving the project forward.
> >>>> > >
> >>>> > > Meeting details below.
> >>>> > >
> >>>> > > Thanks,
> >>>> > > S
> >>>> > >
> >>>> > > Topic Split Meta Design Reset Status
> >>>> > > Description Review one-pager design attached to
> >>>> > > https://issues.apache.org/jira/browse/HBASE-25761
> >>>> > > Time Jul 7, 2021 05:00 PM Pacific Time (US and Canada)
> >>>> > >
> >>>> > > Meeting ID 736 3907 8852
> >>>> > > Security
> >>>> > > Passcode *hbase* Hide
> >>>> > > Waiting Room
> >>>> > > Invite Link
> >>>> > >
> >>>> >
> >>>>
> https://us04web.zoom.us/j/73639078852?pwd=eHE2VCt2RG5FV2V2RXVNazlPVTVyQT09
> >>>> > Copy
> >>>> > > Invitation
> >>>> > >
> >>>> > > On Mon, Mar 22, 2021 at 4:28 PM Stack <[email protected]> wrote:
> >>>> > >
> >>>> > >> Now the requirements are in [1], we're going to move to the next
> >>>> stage
> >>>> > --
> >>>> > >> actual design for split-meta -- and have set up a chat for this
> >>>> thursday
> >>>> > >> afternoon (4PM California time/8AM Beijing time) to get the ball
> >>>> > rolling.
> >>>> > >> Please come if interested. Zoom details are below.
> >>>> > >>
> >>>> > >> Yours,
> >>>> > >> S
> >>>> > >> 1.
> >>>> > >>
> >>>> >
> >>>>
> https://docs.google.com/document/d/11ChsSb2LGrSzrSJz8pDCAw5IewmaMV0ZDN1LrMkAj4s/edit#heading=h.hdf0rnyevxz2
> >>>> > >>
> >>>> > >>
> >>>> > >> Topic: hbase split-meta design warmup chat
> >>>> > >> Time: Mar 25, 2021 04:00 PM Pacific Time (US and Canada)
> >>>> > >>
> >>>> > >> Join Zoom Meeting
> >>>> > >>
> >>>> >
> >>>>
> https://us04web.zoom.us/j/75988003798?pwd=Wi9mU0w0T2ZjTFNBaE9lUmtTbHRpQT09
> >>>> > >>
> >>>> > >> Meeting ID: 759 8800 3798
> >>>> > >> Passcode: hbase
> >>>> > >>
> >>>> > >>
> >>>> > >> On Tue, Jan 5, 2021 at 9:13 AM Stack <[email protected]> wrote:
> >>>> > >>
> >>>> > >>> FYI, a few of us have been working on the redo/reset of the
> split
> >>>> meta
> >>>> > >>> design (HBASE-25382). We (think we've) finished the
> requirements.
> >>>> Are
> >>>> > there
> >>>> > >>> any others to consider?
> >>>> > >>>
> >>>> > >>> Feedback and contribs welcome. Otherwise, on to the next phase
> --
> >>>> > design.
> >>>> > >>>
> >>>> > >>> Thanks,
> >>>> > >>> S
> >>>> > >>>
> >>>> > >>
> >>>> >
> >>>>
> >>>
>

Reply via email to