VM환경에 Hadoop을 설치하고,
간단한 테스트를 하기 위해서 데이터를 25만건 정도 테이블에 넣다가, 이러한 에러가 발생했다.
ExecQueryFlnstances rpc query_id failed. Memory limit exceeded Query could not start because the backend Impala daemon is over its memory limit Error occurred on backend quickstart cloudera:22000 Memory left in process limit: -171.87 MB..
메모리 관련해서 에러가 발생하였는데, 어떠한 쿼리를 써도 저러한 에러가 동일하게 발생했다.
해결하는 방법은 cloudera MANAGER에 들어가서 해당 메모리를 늘려주면 해결이 되었다.
자세한 방법은 밑을 보면 알 수있다.
1. cloudera MANAGER에 들어간다.
2. Clusters에 들어가준다.
3. Configuration에 들어간다.
4. 여기서 여러 설정을 할 수 있는데, 원하는 설정은 Impala Daemon Memory Limit 이기 때문에 limit를 검색해준다.
5. 검색 후 밑으로 내리면 Impala Daemon Memory Limit가 있는 것을 볼 수 있다.
해당 설정의 메모리를 높이면 된다. 저는 1024로 높였습니다.
(검색을 해보니 클러스터의 메모리에 맞게 설정해주면 된다고 한다.)
6. Impala에 돌아와서 쿼리를 다시 돌려보면 에러가 안나오는 것을 볼 수 있다.