sys.dm_os_memory_objects (Transact-SQL)sys.dm_os_memory_objects (Transact-SQL)

APLICA-SE A: simSQL Server simBanco de Dados SQL do Azure simAzure Synapse Analytics (SQL DW) simParallel Data Warehouse APPLIES TO: yesSQL Server yesAzure SQL Database yesAzure Synapse Analytics (SQL DW) yesParallel Data Warehouse

Retorna objetos da memória que estão alocados no momento pelo SQL ServerSQL Server.Returns memory objects that are currently allocated by SQL ServerSQL Server. Você pode usar Sys. dm_os_memory_objects para analisar o uso de memória e identificar possíveis vazamentos de memória.You can use sys.dm_os_memory_objects to analyze memory use and to identify possible memory leaks.

Nome da colunaColumn name Tipo de dadosData type DESCRIÇÃODescription
memory_object_addressmemory_object_address varbinary (8)varbinary(8) Endereço do objeto de memória.Address of the memory object. Não permite valor nulo.Is not nullable.
parent_addressparent_address varbinary (8)varbinary(8) Endereço do objeto de memória pai.Address of the parent memory object. Permite valor nulo.Is nullable.
pages_allocated_countpages_allocated_count intint Aplica-se a: do SQL Server 2008SQL Server 2008 ao SQL Server 2008 R2SQL Server 2008 R2.Applies to: SQL Server 2008SQL Server 2008 through SQL Server 2008 R2SQL Server 2008 R2.

Número de páginas que são alocadas por esse objeto.Number of pages that are allocated by this object. Não permite valor nulo.Is not nullable.
pages_in_bytespages_in_bytes bigintbigint Aplica-se a: SQL Server 2012 (11.x)SQL Server 2012 (11.x) e posterior.Applies to: SQL Server 2012 (11.x)SQL Server 2012 (11.x) and later.

Quantidade de memória em bytes alocada por essa instância do objeto de memória.Amount of memory in bytes that is allocated by this instance of the memory object. Não permite valor nulo.Is not nullable.
creation_optionscreation_options intint Somente para uso interno.Internal use only. Permite valor nulo.Is nullable.
bytes_usedbytes_used bigintbigint Somente para uso interno.Internal use only. Permite valor nulo.Is nullable.
tipotype nvarchar (60)nvarchar(60) Tipo de objeto de memória.Type of memory object.

Isso indica algum componente ao qual este objeto de memória pertence ou a função do objeto de memória.This indicates some component that this memory object belongs to, or the function of the memory object. Permite valor nulo.Is nullable.
namename varchar (128)varchar(128) Somente para uso interno.Internal use only. Anulável.Nullable.
memory_node_idmemory_node_id smallintsmallint ID de um nó de memória que está sendo usado por esse objeto de memória.ID of a memory node that is being used by this memory object. Não permite valor nulo.Is not nullable.
creation_timecreation_time datetimedatetime Somente para uso interno.Internal use only. Permite valor nulo.Is nullable.
max_pages_allocated_countmax_pages_allocated_count intint Aplica-se a: do SQL Server 2008SQL Server 2008 ao SQL Server 2008 R2SQL Server 2008 R2.Applies to: SQL Server 2008SQL Server 2008 through SQL Server 2008 R2SQL Server 2008 R2.

Número máximo de páginas alocadas por esse objeto de memória.Maximum number of pages allocated by this memory object. Não permite valor nulo.Is not nullable.
page_size_in_bytespage_size_in_bytes intint Aplica-se a: SQL Server 2012 (11.x)SQL Server 2012 (11.x) e posterior.Applies to: SQL Server 2012 (11.x)SQL Server 2012 (11.x) and later.

Tamanho das páginas em bytes alocadas por esse objeto.Size of pages in bytes allocated by this object. Não permite valor nulo.Is not nullable.
max_pages_in_bytesmax_pages_in_bytes bigintbigint Quantidade máxima de memória sempre usada por esse objeto de memória.Maximum amount of memory ever used by this memory object. Não permite valor nulo.Is not nullable.
page_allocator_addresspage_allocator_address varbinary (8)varbinary(8) Endereço de memória do alocador de página.Memory address of page allocator. Não permite valor nulo.Is not nullable. Para obter mais informações, consulte Sys. dm_os_memory_clerks (Transact-SQL).For more information, see sys.dm_os_memory_clerks (Transact-SQL).
creation_stack_addresscreation_stack_address varbinary (8)varbinary(8) Somente para uso interno.Internal use only. Permite valor nulo.Is nullable.
sequence_numsequence_num intint Somente para uso interno.Internal use only. Permite valor nulo.Is nullable.
partition_typepartition_type intint O tipo de partição:The type of partition:

0-objeto de memória não particionável0 - Non-partitionable memory object

1-objeto de memória particionável, atualmente não particionado1 - Partitionable memory object, currently not partitioned

2-objeto de memória particionável, particionado por nó NUMA.2 - Partitionable memory object, partitioned by NUMA node. Em um ambiente com um único nó NUMA, isso é equivalente a 1.In an environment with a single NUMA node this is equivalent to 1.

3-objeto de memória particionável, particionado por CPU.3 - Partitionable memory object, partitioned by CPU.
contention_factorcontention_factor realreal Um valor que especifica a contenção nesse objeto de memória, com 0 significando que não há contenção.A value specifying contention on this memory object, with 0 meaning no contention. O valor é atualizado sempre que um número especificado de alocações de memória foi feito refletindo a contenção durante esse período.The value is updated whenever a specified number of memory allocations were made reflecting contention during that period. Aplica-se somente a objetos de memória thread-safe.Applies only to thread-safe memory objects.
waiting_tasks_countwaiting_tasks_count bigintbigint Número de esperas neste objeto de memória.Number of waits on this memory object. Esse contador é incrementado sempre que a memória é alocada a partir deste objeto de memória.This counter is incremented whenever memory is allocated from this memory object. O incremento é o número de tarefas que estão aguardando acesso a esse objeto de memória no momento.The increment is the number of tasks currently waiting for access to this memory object. Aplica-se somente a objetos de memória thread-safe.Applies only to thread-safe memory objects. Esse é um valor de melhor esforço sem uma garantia de exatidão.This is a best effort value without a correctness guarantee.
exclusive_access_countexclusive_access_count bigintbigint Especifica com que frequência este objeto de memória foi acessado exclusivamente.Specifies how often this memory object was accessed exclusively. Aplica-se somente a objetos de memória thread-safe.Applies only to thread-safe memory objects. Esse é um valor de melhor esforço sem uma garantia de exatidão.This is a best effort value without a correctness guarantee.
pdw_node_idpdw_node_id intint Aplica-se a: Azure Synapse Analytics (SQL DW)Azure Synapse Analytics (SQL DW),Parallel Data WarehouseParallel Data WarehouseApplies to: Azure Synapse Analytics (SQL DW)Azure Synapse Analytics (SQL DW), Parallel Data WarehouseParallel Data Warehouse

O identificador do nó em que essa distribuição está.The identifier for the node that this distribution is on.

partition_type, contention_factor, waiting_tasks_counte exclusive_access_count ainda não foram implementadas no Banco de Dados SQLSQL Database.partition_type, contention_factor, waiting_tasks_count, and exclusive_access_count are not yet implemented in Banco de Dados SQLSQL Database.

PermissõesPermissions

Ativado SQL ServerSQL Server, requer VIEW SERVER STATE permissão.On SQL ServerSQL Server, requires VIEW SERVER STATE permission.
Nas Banco de Dados SQLSQL Database camadas Premium, o requer a VIEW DATABASE STATE permissão no banco de dados.On Banco de Dados SQLSQL Database Premium Tiers, requires the VIEW DATABASE STATE permission in the database. Nas Banco de Dados SQLSQL Database camadas Standard e Basic, o requer o administrador do servidor ou uma conta de administrador do Azure Active Directory .On Banco de Dados SQLSQL Database Standard and Basic Tiers, requires the Server admin or an Azure Active Directory admin account.

ComentáriosRemarks

Os objetos de memória são heaps.Memory objects are heaps. Eles fornecem alocações que possuem uma granularidade maior do que a fornecida pelos administradores de memória.They provide allocations that have a finer granularity than those provided by memory clerks. Os componentes do SQL ServerSQL Server usam objetos de memória, em vez de administradores de memória.SQL ServerSQL Server components use memory objects instead of memory clerks. Os objetos de memória usam a interface do alocador de página do administrador de memória para alocar páginas.Memory objects use the page allocator interface of the memory clerk to allocate pages. Eles não usam interfaces de memória virtuais ou compartilhadas.Memory objects do not use virtual or shared memory interfaces. Dependendo dos padrões de alocação, os componentes podem criar tipos diferentes de objetos de memória para alocar regiões de tamanho arbitrário.Depending on the allocation patterns, components can create different types of memory objects to allocate regions of arbitrary size.

O tamanho de página típico para um objeto de memória é de 8 KB.The typical page size for a memory object is 8 KB. Entretanto, objetos de memória incrementais podem ter tamanhos de página que variam de 512 bytes a 8 KB.However, incremental memory objects can have page sizes that range from 512 bytes to 8 KB.

Observação

O tamanho de página não é uma alocação máxima.Page size is not a maximum allocation. Na verdade, o tamanho de página é a granularidade de alocação com suporte oferecida por um alocador de página e é implementado por um administrador de memória.Instead, page size is allocation granularity that is supported by a page allocator and that is implemented by a memory clerk. Você pode solicitar alocações com mais de 8 KB de objetos de memória.You can request allocations greater than 8 KB from memory objects.

ExemplosExamples

O exemplo a seguir retorna a quantidade de memória alocada em cada tipo de objeto de memória.The following example returns the amount of memory allocated by each memory object type.

SELECT SUM (pages_in_bytes) as 'Bytes Used', type   
FROM sys.dm_os_memory_objects  
GROUP BY type   
ORDER BY 'Bytes Used' DESC;  
GO  

Consulte TambémSee Also

SQL Server exibições de gerenciamento dinâmico relacionadas ao sistema operacional ()Transact-SQL SQL Server Operating System Related Dynamic Management Views (Transact-SQL)
sys. dm_os_memory_clerks (Transact-SQL)sys.dm_os_memory_clerks (Transact-SQL)