| 1. |
When Does Impala Hold On To Or Return Memory? |
|
Answer» Impala allocates memory using tcmalloc, a memory allocator that is optimized for high concurrency. Once Impala allocates memory, it keeps that memory reserved to use for future QUERIES. Thus, it is normal for Impala to show high memory usage when idle. If Impala detects that it is about to exceed its memory LIMIT (defined by the -mem_limit startup option or the MEM_LIMIT query option), it deallocates memory not needed by the current queries. When issuing queries through the JDBC or ODBC interfaces, MAKE sure to call the appropriate CLOSE method afterwards. Otherwise, some memory associated with the query is not freed. Impala allocates memory using tcmalloc, a memory allocator that is optimized for high concurrency. Once Impala allocates memory, it keeps that memory reserved to use for future queries. Thus, it is normal for Impala to show high memory usage when idle. If Impala detects that it is about to exceed its memory limit (defined by the -mem_limit startup option or the MEM_LIMIT query option), it deallocates memory not needed by the current queries. When issuing queries through the JDBC or ODBC interfaces, make sure to call the appropriate close method afterwards. Otherwise, some memory associated with the query is not freed. |
|