[ https://issues.apache.org/jira/browse/HBASE-16438?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15953244#comment-15953244 ]
ramkrishna.s.vasudevan commented on HBASE-16438: ------------------------------------------------ bq.In ByteBufferChunkCell, please explain me why to add this new class? Why can not the existing BBKV just have a new method - getChunkId() - to return the chunk id in the 0th offset of the backing BB? We now have BBKV every where in write path and we can also make use of it in read path to form cells coming out of hfileblocks. Since we have added getChunkId() to the ExtendedCell any cell can make use of this getchunkId. (though it was not generic it was added to make things simpler). Since we deal with ExtendedCells we create a specific impl of BBKV that returns the chunkId alone and by default it will be returning -1. bq.In ByteBufferKeyValue or in MSLAB or anywhere else, please add constant saying what is the size in bytes of the ChunkCell or what I call cell-representation (chunkId + offset + length + seqId), so I can use it later. Ok. bq.OK. So lets have a new cell representation. Ok fine we can make use of it. bq.This is not a desired situation. We are increasing from 12 bytes to 20 bytes, almost twice... We should not do it unless it is very very necessary... Some where we need the seqId of every cell getting written to the cellChunkMap. How do you think you can avoid it? You have some idea on that? bq.. In ByteBufferKeyValue or in MSLAB or anywhere else, please add constant saying what is the size in bytes of the ChunkCell Am just getting confused here. When you say ChunkCell are you telling the BBChunkCell in current patch? In current patch there is no extra overhead at all. But if you are talking about the cell to be moved to CellChunkMap - yes then it will have some overhead in terms of serialization and not in terms of heap overhead. > Create a cell type so that chunk id is embedded in it > ----------------------------------------------------- > > Key: HBASE-16438 > URL: https://issues.apache.org/jira/browse/HBASE-16438 > Project: HBase > Issue Type: Sub-task > Affects Versions: 2.0.0 > Reporter: ramkrishna.s.vasudevan > Assignee: ramkrishna.s.vasudevan > Attachments: HBASE-16438_1.patch, > HBASE-16438_3_ChunkCreatorwrappingChunkPool.patch, > HBASE-16438_4_ChunkCreatorwrappingChunkPool.patch, > HBASE-16438_8_ChunkCreatorwrappingChunkPool_withchunkRef.patch, > HBASE-16438_9_ChunkCreatorwrappingChunkPool_withchunkRef.patch, > HBASE-16438.patch, MemstoreChunkCell_memstoreChunkCreator_oldversion.patch, > MemstoreChunkCell_trunk.patch > > > For CellChunkMap we may need a cell such that the chunk out of which it was > created, the id of the chunk be embedded in it so that when doing flattening > we can use the chunk id as a meta data. More details will follow once the > initial tasks are completed. > Why we need to embed the chunkid in the Cell is described by [~anastas] in > this remark over in parent issue > https://issues.apache.org/jira/browse/HBASE-14921?focusedCommentId=15244119&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15244119 -- This message was sent by Atlassian JIRA (v6.3.15#6346)