1、向 zookeeper 发起请求,获得 META 所在的 region,再根据 table、namespace、rowkey 信息去 META 表中找到目标数据对应的 Region 信息以及 Regionserver(ROOT 表从 0.96 版本开始已经被淘汰)
2、把数据分别写到 HLog 和 MemStore 上各一份
* MemStore 达到一个阈值后则会把数据刷成一个 StoreFile 文件落到磁盘,同时将内存中的数据删除,并删除 Hlog 中的历史数据。在 Hlog 中做标记点,若 MemStore 中的数据有丢失,则可以从 HLog 上恢复;
* 当多个 StoreFile 文件达到一定的大小后,会触发 Compact 合并操作,合并为一个 StoreFile,这里同时进行已标记删除数据的版本合并和实际数据的删除。
* 当 Compact 后,逐步形成越来越大的 StoreFile 后,Region 也会达到 Split 的阈值,会触发 Split 操作,把一个大的 region 分割成两个 region(细粒度来看其实也是 StoreFile 的分割)。
更多关于“大数据培训”的问题,欢迎咨询千锋教育在线名师。千锋教育多年办学,课程大纲紧跟企业需求,更科学更严谨,每年培养泛IT人才近2万人。不论你是零基础还是想提升,都可以找到适合的班型,千锋教育随时欢迎你来试听。