±à¼ÍƼö: |
±¾ÎÄÀ´×ÔÓÚ36´óÊý¾Ý£¬HBaseÊÇÒ»ÖÖHadoopÊý¾Ý¿â£¬ÊÇÒ»¸ö¿ÉÒÔËæ»ú·ÃÎʵĴ洢ºÍ¼ìË÷Êý¾ÝµÄƽ̨
|
|
Ò»¡¢HBase½éÉÜ 1¡¢»ù±¾¸ÅÄî HBaseÊÇÒ»ÖÖHadoopÊý¾Ý¿â£¬¾³£±»ÃèÊöΪһÖÖÏ¡ÊèµÄ£¬·Ö²¼Ê½µÄ£¬³Ö¾Ã»¯µÄ£¬¶àάÓÐÐòÓ³É䣬Ëü»ùÓÚÐмü¡¢ÁмüºÍʱ¼ä´Á½¨Á¢Ë÷Òý£¬ÊÇÒ»¸ö¿ÉÒÔËæ»ú·ÃÎʵĴ洢ºÍ¼ìË÷Êý¾ÝµÄƽ̨¡£HBase²»ÏÞÖÆ´æ´¢µÄÊý¾ÝµÄÖÖÀ࣬ÔÊÐí¶¯Ì¬µÄ¡¢Áé»îµÄÊý¾ÝÄ£ÐÍ£¬²»ÓÃSQLÓïÑÔ£¬Ò²²»Ç¿µ÷Êý¾ÝÖ®¼äµÄ¹ØÏµ¡£HBase±»Éè¼Æ³ÉÔÚÒ»¸ö·þÎñÆ÷¼¯ÈºÉÏÔËÐУ¬¿ÉÒÔÏàÓ¦µØºáÏòÀ©Õ¹¡£ 2¡¢HBaseʹÓó¡¾°ºÍ³É¹¦°¸Àý »¥ÁªÍøËÑË÷ÎÊÌ⣺ÅÀ³æÊÕ¼¯ÍøÒ³£¬´æ´¢µ½BigTableÀMapReduce¼ÆËã×÷ҵɨÃèÈ«±íÉú³ÉËÑË÷Ë÷Òý£¬´ÓBigTableÖвéѯËÑË÷½á¹û£¬Õ¹Ê¾¸øÓû§¡£ ץȡÔöÁ¿Êý¾Ý£ºÀýÈ磬ץȡ¼à¿ØÖ¸±ê£¬×¥È¡Óû§½»»¥Êý¾Ý£¬Ò£²â¼¼Êõ£¬¶¨ÏòͶ·Å¹ã¸æµÈ ÄÚÈÝ·þÎñ ÐÅÏ¢½»»¥ 3¡¢HBase ShellÃüÁîÐн»»¥£º Æô¶¯Shell $ hbase shell ÁгöËùÓеıí hbase > list
´´½¨ÃûΪmytableµÄ±í£¬º¬ÓÐÒ»¸öÁÐ×åhb hbase >
create ' mytable' , 'hb'
ÔÚ¡®mytable¡¯±íµÄ'first'ÐÐÖеġ®hb:data¡¯ÁжÔÓ¦µÄÊý¾Ýµ¥ÔªÖвåÈë×Ö½ÚÊý×é¡®hello
HBase¡¯
hbase > put 'mytable' , 'first'
, 'hb:data' , 'hello HBase'
¶ÁÈ¡mytable±í ¡®first¡¯ÐеÄÄÚÈÝ hbase > get 'mytable' ,
'first' ¶ÁÈ¡mytable±íËùÓеÄÄÚÈÝ hbase > scan ¡®mytable' ¶þ¡¢ÈëÃÅ 1¡¢API ºÍÊý¾Ý²Ù×÷ÓйصÄHBase APIÓÐ5¸ö£¬·Ö±ðÊÇ Get(¶Á)£¬Put(д)£¬Delete(ɾ)£¬Scan(ɨÃè)ºÍIncrement(ÁÐÖµµÝÔö) 2¡¢²Ù×÷±í Ê×ÏÈÒª´´½¨Ò»¸öconfiguration¶ÔÏó Configuration conf = HBaseConfiguration.create(); ʹÓÃeclipseʱµÄ»°»¹±ØÐ뽫ÅäÖÃÎļþÌí¼Ó½øÀ´¡£ conf.addResource (new Path("E:\\share\\hbase-site.xml"));
conf.addResource (new Path("E:\\share\\core-site.xml"));
conf.addResource (new Path("E:\\share\\hdfs-site.xml"));
ʹÓÃÁ¬½Ó³Ø´´½¨Ò»ÕÅ±í¡£ HTablePool pool = new HTablePool(conf,1);
HTableInterface usersTable = pool.getTable("users");
3¡¢Ð´²Ù×÷ ÓÃÀ´´æ´¢Êý¾ÝµÄÃüÁîÊÇput£¬Íù±íÀï´æ´¢Êý¾Ý£¬ÐèÒª´´½¨PutʵÀý¡£²¢Öƶ¨Òª¼ÓÈëµÄÐÐ
Put put = new Put(byte[] row) ;
PutµÄadd·½·¨ÓÃÀ´Ìí¼ÓÊý¾Ý£¬·Ö±ðÉ趨ÁÐ×壬ÏÞ¶¨·ûÒÔ¼°µ¥Ôª¸ñµÄÖ¸ put.add (byte[] family , byte[] qualifier , byte[]
value) ; ×îºóÌá½»ÃüÁî¸ø±í usersTable.put(put); usersTable.close(); ÐÞ¸ÄÊý¾Ý£¬Ö»ÐèÖØÐÂÌá½»Ò»´Î×îеÄÊý¾Ý¼´¿É¡£ HBaseд²Ù×÷µÄ¹¤×÷»úÖÆ£º

HBaseÿ´ÎÖ´ÐÐд²Ù×÷¶¼»áдÈëÁ½¸öµØ·½£ºÔ¤Ð´Ê½ÈÕÖ¾£¨write-ahead log£¬Ò²³ÆHLog£©ºÍMemStore£¨Ð´È뻺³åÇø£©£¬ÒÔ±£Ö¤Êý¾Ý³Ö¾Ã»¯£¬Ö»Óе±ÕâÁ½¸öµØ·½µÄ±ä»¯ÐÅÏ¢¶¼Ð´È벢ȷÈϺ󣬲ÅÈÏΪд¶¯×÷Íê³É¡£MemStoreÊÇÄÚ´æÀïµÄдÈ뻺³åÇø£¬HBaseÖÐÊý¾ÝÔÚÓÀ¾ÃдÈëÓ²ÅÌ֮ǰÔÚÕâÀïÀÛ»ý£¬µ±MemStoreÌîÂúºó£¬ÆäÖеÄÊý¾Ý»áˢдµ½Ó²ÅÌ£¬Éú³ÉÒ»¸öHFile¡£ 4¡¢¶Á²Ù×÷ ´´½¨Ò»¸öGetÃüÁîʵÀý£¬°üº¬Òª²éѯµÄÐÐ Get get = new Get(byte[] row) ; Ö´ÐÐaddColumn()»òaddFamily()¿ÉÒÔÉèÖÃÏÞÖÆÌõ¼þ¡£ ½«getʵÀýÌá½»µ½±í»á·µ»ØÒ»¸ö°üº¬Êý¾ÝµÄResultʵÀý£¬ÊµÀýÖаüº¬ÐÐÖÐËùÓÐÁÐ×åµÄËùÓÐÁС£ Result r = usersTable.get(get) ; ¿ÉÒÔ¶ÔresultʵÀý¼ìË÷ÌØ¶¨µÄÖµ byte[] b = r.getValue (byte[] family , byte[] qualifier)
; ¹¤×÷»úÖÆ£º

BlockCacheÓÃÀ´±£´æ´ÓHFileÖжÁÈëÄÚ´æµÄƵ·±·ÃÎʵÄÊý¾Ý£¬±ÜÃâÓ²Å̶Á£¬Ã¿¸öÁÐ×å¶¼ÓÐ×Ô¼ºµÄBlockCache¡£´ÓHBaseÖжÁ³öÒ»ÐУ¬Ê×ÏÈ»á¼ì²éMemStoreµÈ´ýÐ޸ĵĶÓÁУ¬È»ºó¼ì²éBlockCache¿´°üº¬¸ÃÐеÄBlockÊÇ·ñ×î½ü±»·ÃÎʹý£¬×îºó·ÃÎÊÓ²ÅÌÉϵĶÔÓ¦HFile¡£ 5¡¢É¾³ý²Ù×÷ ´´½¨Ò»¸öDeleteʵÀý£¬Ö¸¶¨ÒªÉ¾³ýµÄÐС£ Delete delete = new Delete(byte[] row) ; ¿ÉÒÔͨ¹ýdeleteFamily()ºÍdeleteColumn()·½·¨Ö¸¶¨É¾³ýÐеÄÒ»²¿·Ö¡£ 6¡¢±íɨÃè²Ù×÷ Scan scan = new Scan() ¿ÉÒÔÖ¸¶¨ÆðʼÐкͽáÊøÐС£ setStartRow() , setStopRow() , setFilter()·½·¨¿ÉÒÔÓÃÀ´ÏÞÖÆ·µ»ØµÄÊý¾Ý¡£ addColumn()ºÍaddFamily()·½·¨»¹¿ÉÒÔÖ¸¶¨ÁкÍÁÐ×å¡£ HBaseģʽµÄÊý¾ÝÄ£ÐͰüÀ¨£º ±í£ºHBaseÓñíÀ´×éÖ¯Êý¾Ý¡£ ÐУºÔÚ±íÀÊý¾Ý°´Ðд洢£¬ÐÐÓÉÐмüΨһ±êʶ¡£ÐмüûÓÐÊý¾ÝÀàÐÍ£¬Îª×Ö½ÚÊý×ébyte[]¡£ ÁÐ×壺ÐÐÀïµÄÊý¾Ý°´ÕÕÁÐ×å·Ö×飬ÁÐ×屨ÐëÊÂÏȶ¨Òå²¢ÇÒ²»ÇáÒ×Ð޸ġ£±íÖÐÿÐÐÓµÓÐÏàͬµÄÁÐ×å¡£ ÁÐÏÞ¶¨·û£ºÁÐ×åÀïµÄÊý¾Ýͨ¹ýÁÐÏÞ¶¨·û»òÁÐÀ´¶¨Î»£¬ÁÐÏÞ¶¨·û²»±ØÊÂÏȶ¨Òå¡£ µ¥Ôª£º´æ´¢ÔÚµ¥ÔªÀïµÄÊý¾Ý³ÆÎªµ¥ÔªÖµ£¬ÖµÊÇ×Ö½ÚÊý×é¡£µ¥ÔªÓÉÐмü£¬ÁÐ×å»òÁÐÏÞ¶¨·ûÒ»ÆðÈ·¶¨¡£ ʱ¼ä°æ±¾£ºµ¥ÔªÖµÓÐʱ¼ä°æ±¾£¬ÊÇÒ»¸ölongÀàÐÍ¡£ Ò»¸öHBaseÊý¾Ý×ø±êµÄÀý×Ó£º

HBase¿ÉÒÔ¿´×öÊÇÒ»¸ö¼üÖµÊý¾Ý¿â¡£HBaseµÄÉè¼ÆÊÇÃæÏò°ë½á¹¹»¯Êý¾ÝµÄ£¬Êý¾Ý¼Ç¼¿ÉÄܰüº¬²»Ò»ÖµÄÁУ¬²»È·¶¨´óСµÈ¡£ Èý¡¢·Ö²¼Ê½µÄHBase¡¢HDFSºÍMapReduce 1¡¢·Ö²¼Ê½Ä£Ê½µÄHBase HBase½«±í»áÇзֳÉСµÄÊý¾Ýµ¥Î»½Ðregion£¬·ÖÅäµ½¶ą̀·þÎñÆ÷¡£ÍйÜregionµÄ·þÎñÆ÷½Ð×öRegionServer¡£Ò»°ãÇé¿öÏ£¬RgionServerºÍHDFS
DataNode²¢ÁÐÅäÖÃÔÚͬһÎïÀíÓ²¼þÉÏ£¬RegionServer±¾ÖÊÉÏÊÇHDFS¿Í»§¶Ë£¬ÔÚÉÏÃæ´æ´¢·ÃÎÊÊý¾Ý£¬HMaster·ÖÅäregion¸øRegionServer,ÿ¸öRegionServerÍйܶà¸öregion¡£

HBaseÖеÄÁ½¸öÌØÊâµÄ±í£¬-ROOT-ºÍ.META.£¬ÓÃÀ´²éÕÒ¸÷ÖÖ±íµÄregionλÖÃÔÚÄÄ¡£-ROOT-Ö¸Ïò.META.±íµÄregion£¬.META.±íÖ¸ÏòÍйܴý²éÕÒµÄregionµÄRegionServer¡£ Ò»´Î¿Í»§¶Ë²éÕÒ¹ý³ÌµÄ3²ã·Ö²¼Ê½B+Ê÷ÈçÏÂͼ£º 
HBase¶¥²ã½á¹¹Í¼£º 
zookeeper¸ºÔð¸ú×Ùregion·þÎñÆ÷£¬±£´æroot regionµÄµØÖ·¡£ Client¸ºÔðÓëzookeeper×Ó¼¯ÈºÒÔ¼°HRegionServerÁªÏµ¡£ HMaster¸ºÔðÔÚÆô¶¯HBaseʱ£¬°ÑËùÓеÄregion·ÖÅ䵽ÿ¸öHRegion ServerÉÏ£¬Ò²°üÀ¨-ROOT-ºÍ.META.±í¡£ HRegionServer¸ºÔð´ò¿ªregion£¬²¢´´½¨¶ÔÓ¦µÄHRegionʵÀý¡£HRegion±»´ò¿ªºó£¬ËüΪÿ¸ö±íµÄHColumnFamily´´½¨Ò»¸öStoreʵÀý¡£Ã¿¸öStoreʵÀý°üº¬Ò»¸ö»ò¶à¸öStoreFileʵÀý£¬ËüÃÇÊÇʵ¼ÊÊý¾Ý´æ´¢ÎļþHFileµÄÇáÁ¿¼¶·â×°¡£Ã¿¸öStoreÓÐÆä¶ÔÓ¦µÄÒ»¸öMemStore£¬Ò»¸öHRegionServer¹²ÏíÒ»¸öHLogʵÀý¡£ Ò»´Î»ù±¾µÄÁ÷³Ì£º a¡¢ ¿Í»§¶Ëͨ¹ýzookeeper»ñÈ¡º¬ÓÐ-ROOT-µÄregion·þÎñÆ÷Ãû¡£ b¡¢ ͨ¹ýº¬ÓÐ-ROOT-µÄregion·þÎñÆ÷²éѯº¬ÓÐ.META.±íÖжÔÓ¦µÄregion·þÎñÆ÷Ãû¡£ c¡¢ ²éѯ.META.·þÎñÆ÷»ñÈ¡¿Í»§¶Ë²éѯµÄÐмüÊý¾ÝËùÔÚµÄregion·þÎñÆ÷Ãû¡£ d¡¢ ͨ¹ýÐмüÊý¾ÝËùÔÚµÄregion·þÎñÆ÷»ñÈ¡Êý¾Ý¡£ HFile½á¹¹Í¼£º 
TrailerÓÐÖ¸ÏòÆäËû¿éµÄÖ¸Õ룬Index¿é¼Ç¼DataºÍMeta¿éµÄÆ«ÒÆÁ¿£¬DataºÍMeta¿é´æ´¢Êý¾Ý¡£Ä¬ÈÏ´óСÊÇ64KB¡£Ã¿¸ö¿é°üº¬Ò»¸öMagicÍ·²¿ºÍÒ»¶¨ÊýÁ¿µÄÐòÁл¯µÄKeyValueʵÀý¡£ KeyValue¸ñʽ£º 
¸Ã½á¹¹ÒÔÁ½¸ö·Ö±ð±íʾ¼ü³¤¶ÈºÍÖµ³¤¶ÈµÄ¶¨³¤Êý×Ö¿ªÊ¼£¬¼ü°üº¬ÁËÐмü£¬ÁÐ×åÃûºÍÁÐÏÞ¶¨·û£¬Ê±¼ä´ÁµÈ¡£ ԤдÈÕÖ¾WAL£º ÿ´Î¸üж¼»áдÈëÈÕÖ¾£¬Ö»ÓÐдÈë³É¹¦²Å»á֪ͨ¿Í»§¶Ë²Ù×÷³É¹¦£¬È»ºó·þÎñÆ÷¿ÉÒÔ°´Ðè×ÔÓɵØÅúÁ¿´¦Àí»ò¾ÛºÏÄÚ´æÖеÄÊý¾Ý¡£ ±à¼Á÷ÔÚmemstoreºÍWALÖ®¼ä·ÖÁ÷µÄ¹ý³Ì£º

´¦Àí¹ý³Ì£º¿Í»§¶Ëͨ¹ýRPCµ÷Óý«KeyValue¶ÔÏóʵÀý·¢Ë͵½º¬ÓÐÆ¥ÅäregionµÄHRegionServer¡£½Ó×ÅÕâЩʵÀý±»·¢Ë͵½¹ÜÀíÏàÓ¦ÐеÄHRegionʵÀý£¬Êý¾Ý±»Ð´Èëµ½WAL£¬È»ºó±»·ÅÈ뵽ʵ¼ÊÓµÓмǼµÄ´æ´¢ÎļþµÄMemStoreÖС£µ±memstoreÖеÄÊý¾Ý´ïµ½Ò»¶¨µÄ´óСÒÔºó£¬Êý¾Ý»áÒì²½µØÁ¬ÐøÐ´Èëµ½ÎļþϵͳÖУ¬WALÄܱ£Ö¤ÕâÒ»¹ý³ÌµÄÊý¾Ý²»»á¶ªÊ§¡£ 2¡¢HBaseºÍMapReduce ´ÓMapReduceÓ¦Ó÷ÃÎÊHBaseÓÐ3ÖÖ·½Ê½£º ×÷Òµ¿ªÊ¼Ê±¿ÉÒÔÓÃHBase×÷ΪÊý¾ÝÔ´£¬×÷Òµ½áÊøÊ±¿ÉÒÔÓÃHBase½ÓÊÕÊý¾Ý£¬ÈÎÎñ¹ý³ÌÖÐÓÃHBase¹²Ïí×ÊÔ´¡£ ʹÓÃHBase×÷ΪÊý¾ÝÔ´ ½×¶Îmap protected void map(ImmutableBytesWritable rowkey,Result
result,Context context){ }; ´ÓHBase±íÖжÁÈ¡µÄ×÷ÒµÒÔ[rowkey:scan result]¸ñʽ½ÓÊÕ[k1,v1]¼üÖµ¶Ô£¬¶ÔÓ¦µÄÀàÐÍÊÇImmutableBytesWritableºÍResult¡£ ´´½¨ÊµÀýɨÃè±íÖÐËùÓеÄÐÐ Scan scan = new Scan(); scan.addColumn(¡); ½ÓÏÂÀ´ÔÚMapReduceÖÐʹÓÃScanʵÀý¡£ TableMapReduceUtil.initTableMapperJob (tablename,scan,map.class, Êä³ö¼üµÄÀàÐÍ.class,Êä³öÖµµÄÀàÐÍ.class,job); ʹÓÃHBase½ÓÊÕÊý¾Ý reduce½×¶Î protected void reduce(
ImmutableBytesWritable rowkey, Iterable<put>values,
Context context){
}; °ÑreducerÌîÈëµ½×÷ÒµÅäÖÃÖУ¬ TableMapReduceUtil.initTableReducerJob (tablename,reduce.class,job); 3¡¢HBaseʵÏÖ¿É¿¿ÐԺͿÉÓÃÐÔ HDFS×÷Ϊµ×²ã´æ´¢£¬Îª¼¯ÈºÀïµÄËùÓÐRegionServerÌṩµ¥Ò»ÃüÃû¿Õ¼ä£¬Ò»¸öRegionServer¶ÁдÊý¾Ý¿ÉÒÔΪÆäËüËùÓÐRegionServer¶Áд¡£Èç¹ûÒ»¸öRegionServer³öÏÖ¹ÊÕÏ£¬ÈÎºÎÆäËûRegionServer¶¼¿ÉÒԴӵײãÎļþϵͳ¶ÁÈ¡Êý¾Ý£¬»ùÓÚ±£´æÔÚHDFSÀïµÄHFile¿ªÊ¼Ìṩ·þÎñ¡£½Ó¹ÜÕâ¸öRegionServerz·þÎñµÄregion¡£ ËÄ¡¢ÓÅ»¯HBase 1¡¢Ëæ»ú¶ÁÃܼ¯ÐÍ ÓÅ»¯·½Ïò£º¸ßЧÀûÓûº´æºÍ¸üºÃµÄË÷Òý Ôö¼Ó»º´æÊ¹ÓõĶѵİٷֱȣ¬Í¨¹ý²ÎÊý hfile.block.cache.size ÅäÖá£
¼õÉÙMemStoreÕ¼Óõİٷֱȣ¬Í¨¹ýhbase.regionserver.global.memstore.lowerLimit
ºÍhbase.regionserver.global.memstore.upperLimitÀ´µ÷½Ú¡£
ʹÓøüСµÄÊý¾Ý¿é£¬Ê¹Ë÷ÒýµÄÁ£¶È¸üϸ¡£ ´ò¿ª²¼Â¡¹ýÂËÆ÷£¬ÒÔ¼õÉÙΪ²éÕÒÖ¸¶¨ÐеÄKey Value¶ÔÏó¶ø¶ÁÈ¡µÄHFileµÄÊýÁ¿¡£ ÉèÖü¤½ø»º´æ£¬¿ÉÒÔÌáÉýËæ»ú¶ÁÐÔÄÜ¡£ ¹Ø±ÕûÓб»Óõ½Ëæ»ú¶ÁµÄÁÐ×壬ÌáÉý»º´æÃüÖÐÂÊ¡£ 2¡¢Ë³Ðò¶ÁÃܼ¯ÐÍ ÓÅ»¯·½Ïò£º¼õÉÙʹÓûº´æ¡£ Ôö´óÊý¾Ý¿éµÄ´óС£¬Ê¹Ã¿´ÎÓ²ÅÌѰµÀʱ¼äÈ¡³öµÄÊý¾Ý¸ü¶à¡£ ÉèÖýϸߵÄɨÃèÆ÷»º´æÖµ£¬ÒÔ±ãÔÚÖ´Ðдó¹æÄ£Ë³Ðò¶Áʱÿ´ÎRPCÇëÇóɨÃèÆ÷¿ÉÒÔÈ¡»Ø¸ü¶àÐС£ ²ÎÊý hbase.client.scanner.caching
¶¨ÒåÁËÔÚɨÃèÆ÷Éϵ÷ÓÃnext·½·¨Ê±È¡»ØµÄÐеÄÊýÁ¿¡£ ¹Ø±ÕÊý¾Ý¿éµÄ»º´æ£¬±ÜÃâ·ÌÚ»º´æµÄ´ÎÊýÌ«¶à¡£Í¨¹ýScan.setCacheBlocks(false)ÉèÖᣠ¹Ø±Õ±íµÄ»º´æ£¬ÒÔ±ãÔÚÿ´ÎɨÃèʱ²»ÔÙ·ÌÚ»º´æ¡£ 3¡¢Ð´Ãܼ¯ÐÍ ÓÅ»¯·½Ïò£º²»ÒªÌ«Æµ·±Ë¢Ð´£¬ºÏ²¢»òÕß²ð·Ö¡£ µ÷¸ßµ×²ã´æ´¢Îļþ£¨HStoreFile£©µÄ×î´ó´óС£¬regionÔ½´óÒâζ×ÅÔÚдµÄʱºò²ð·ÖÔ½ÉÙ¡£Í¨¹ý²ÎÊý
hbase.hregion.max.filesizeÉèÖᣠÔö´óMemStoreµÄ´óС£¬Í¨¹ý²ÎÊýhbase.hregion.memstore.flush.sizeµ÷½Ú¡£Ë¢Ð´µ½HDFSµÄÊý¾ÝÔ½¶à£¬Éú²úµÄHFileÔ½´ó£¬»áÔÚдµÄʱºò¼õÉÙÉú³ÉÎļþµÄÊýÁ¿£¬´Ó¶ø¼õÉٺϲ¢µÄ´ÎÊý¡£ ÔÚÿ̨RegionServerÉÏÔö¼Ó·ÖÅ䏸MemStoreµÄ¶Ñ±ÈÀý¡£°ÑupperLimitÉèΪÄܹ»ÈÝÄÉÿ¸öregionµÄMemStore³ËÒÔÿ¸öRegionServerÉÏÔ¤ÆÚregionµÄÊýÁ¿¡£ À¬»ø»ØÊÕÓÅ»¯£¬ÔÚhbase-env.shÎļþÀïÉèÖ㬿ÉÒÔÉèÖóõʼֵΪ£º-Xmx8g -Xms8g -Xmn128m
-XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=70 ´ò¿ªMemStore-Local Allocation BufferÕâ¸öÌØÐÔ£¬ÓÐÖúÓÚ·ÀÖ¹¶ÑµÄË鯬»¯¡£
ͨ¹ý²ÎÊýhbase.hregion.memstore.mslab.enabledÉèÖà 4¡¢»ìºÏÐÍ ÓÅ»¯·½Ïò£ºÐèÒª·´¸´³¢ÊÔ¸÷ÖÖ×éºÏ£¬È»ºóÔËÐвâÊÔ£¬µÃµ½×î¼Ñ½á¹û¡£ Ó°ÏìÐÔÄܵÄÒòËØ»¹°üÀ¨£º ѹËõ£º¿ÉÒÔ¼õÉÙ¼¯ÈºÉϵÄIOѹÁ¦ ºÃµÄÐмüÉè¼Æ ÔÚÔ¤ÆÚ¼¯Èº¸ºÔØ×îСµÄʱºòÊÖ¹¤´¦Àí´óºÏ²¢ ÓÅ»¯RegionServer´¦Àí³ÌÐò¼ÆÊý |