Which version of Ignite do you use? On Mon, Sep 19, 2022 at 11:38 AM 38797715 <[email protected]> wrote:
> for example: > > start a node by ignite.sh. > > then: > > CREATE TABLE City ( > ID INT, > Name VARCHAR, > CountryCode CHAR(3), > District VARCHAR, > Population INT, > PRIMARY KEY (ID, CountryCode) > ) WITH "template=partitioned, backups=1, affinityKey=CountryCode, > CACHE_NAME=City, KEY_TYPE=demo.model.CityKey, VALUE_TYPE=demo.model.City"; > > > INSERT INTO City(ID, Name, CountryCode, District, Population) VALUES > (1,'Kabul','AFG','Kabol',1780000); > INSERT INTO City(ID, Name, CountryCode, District, Population) VALUES > (2,'Qandahar','AFG','Qandahar',237500); > INSERT INTO City(ID, Name, CountryCode, District, Population) VALUES > (3,'Herat','AFG','Herat',186800); > INSERT INTO City(ID, Name, CountryCode, District, Population) VALUES > (4,'Mazar-e-Sharif','AFG','Balkh',127800); > INSERT INTO City(ID, Name, CountryCode, District, Population) VALUES > (5,'Amsterdam','NLD','Noord-Holland',731200); > INSERT INTO City(ID, Name, CountryCode, District, Population) VALUES > (6,'Rotterdam','NLD','Zuid-Holland',593321); > INSERT INTO City(ID, Name, CountryCode, District, Population) VALUES > (7,'Haag','NLD','Zuid-Holland',440900); > INSERT INTO City(ID, Name, CountryCode, District, Population) VALUES > (8,'Utrecht','NLD','Utrecht',234323); > INSERT INTO City(ID, Name, CountryCode, District, Population) VALUES > (9,'Eindhoven','NLD','Noord-Brabant',201843); > INSERT INTO City(ID, Name, CountryCode, District, Population) VALUES > (10,'Tilburg','NLD','Noord-Brabant',193238); > INSERT INTO City(ID, Name, CountryCode, District, Population) VALUES > (11,'Groningen','NLD','Groningen',172701); > > SELECT * FROM sys.metrics WHERE name LIKE 'io.dataregion.default%'; > > io.dataregion.default.OffHeapSize 104857600 > io.dataregion.default.PhysicalMemoryPages 2066 > io.dataregion.default.EmptyDataPages 0 > io.dataregion.default.UsedCheckpointBufferSize 0 > io.dataregion.default.TotalThrottlingTime 0 > io.dataregion.default.PagesReplaced 0 > io.dataregion.default.EvictionRate 0 > io.dataregion.default.InitialSize 104857600 > io.dataregion.default.DirtyPages 0 > io.dataregion.default.MaxSize 8589934592 > io.dataregion.default.PagesWritten 0 > io.dataregion.default.PagesReplaceRate 0 > io.dataregion.default.PagesRead 0 > io.dataregion.default.PagesFillFactor 0.9997031688690186 > io.dataregion.default.TotalAllocatedPages 2066 > io.dataregion.default.PhysicalMemorySize 8511920 > io.dataregion.default.PagesReplaceAge 0 > io.dataregion.default.AllocationRate 2066 > io.dataregion.default.OffheapUsedSize 8511920 > io.dataregion.default.LargeEntriesPagesCount 0 > io.dataregion.default.TotalAllocatedSize 8511920 > io.dataregion.default.CheckpointBufferSize 0 > > TotalUsedSize - (TotalAllocatedSize - PagesFillFactor * TotalAllocatedSize) > > = 8511920 - (8511920 - 0.9997031688690186 * 8511920) = 8509392 > > > delete from city; > > SELECT * FROM sys.metrics WHERE name LIKE 'io.dataregion.default%'; > > io.dataregion.default.OffHeapSize 104857600 > io.dataregion.default.PhysicalMemoryPages 2075 > io.dataregion.default.EmptyDataPages 0 > io.dataregion.default.UsedCheckpointBufferSize 0 > io.dataregion.default.TotalThrottlingTime 0 > io.dataregion.default.PagesReplaced 0 > io.dataregion.default.EvictionRate 0 > io.dataregion.default.InitialSize 104857600 > io.dataregion.default.DirtyPages 0 > io.dataregion.default.MaxSize 8589934592 > io.dataregion.default.PagesWritten 0 > io.dataregion.default.PagesReplaceRate 0 > io.dataregion.default.PagesRead 0 > io.dataregion.default.PagesFillFactor 1.0 > io.dataregion.default.TotalAllocatedPages 2075 > io.dataregion.default.PhysicalMemorySize 8549000 > io.dataregion.default.PagesReplaceAge 0 > io.dataregion.default.AllocationRate 9 > io.dataregion.default.OffheapUsedSize 8549000 > io.dataregion.default.LargeEntriesPagesCount 0 > io.dataregion.default.TotalAllocatedSize 8549000 > io.dataregion.default.CheckpointBufferSize 0 > > > TotalUsedSize - (TotalAllocatedSize - PagesFillFactor * TotalAllocatedSize) > > =8549000 - (8549000 - 1.0 * 8549000) = 8549000 > > Instead, the value becomes larger? > > > 在 2022/9/19 15:13, Alexander Polovtcev 写道: > > Sorry, I messed up the metric names a little bit, we should use the size > metrics, not the page metrics. So the correct formula would be: > `TotalUsedSize - (TotalAllocatedSize - PagesFillFactor * > TotalAllocatedSize)` > > On Sun, Sep 18, 2022 at 4:29 PM 38797715 <[email protected]> wrote: > >> I've checked TotalUsedPages in ignite.dataRegionMetrics(), it is found >> that the logic of this metric is consistent with OffheapUsedSize, that is, >> the value will not be updated after data deletion. >> 在 2022/9/18 19:42, Alexander Polovtcev 写道: >> >> Hello, you can check out "TotalUsedPages" and "TotalUsedSize" metrics >> that can be found in the Data Region metrics. However, please keep in mind >> that this does not take page fragmentation into account. >> >> On Sat, Sep 17, 2022 at 2:35 PM 38797715 <[email protected]> wrote: >> >>> Hi team, >>> >>> We found that if the delete operation is executed, the memory space >>> corresponding to the data will not be released, and this space will be >>> reused later. >>> >>> Therefore, metrics such as OffheapUsedSize will become inaccurate. >>> >>> So, how to calculate the exact amount of memory occupied by data in a >>> cache or a dataregion? >>> >> >> >> -- >> With regards, >> Aleksandr Polovtcev >> >> > > -- > With regards, > Aleksandr Polovtcev > > -- With regards, Aleksandr Polovtcev
