Resource allocation between ingress-controller and proxy containers in kong

What should be the ideal memory and cpu resource allocation between ingress-controller and proxy containers in kong pod?
We have allocated 2 cpu cores and 4GB memory for kong deployment. But while assigning resources for containers, we were not able to find as to what should be the resource distribution between two control plane and data plane containers.
Initially we assigned resource in equal parts between ingress-controller and proxy as
Resources:
Limits:
cpu: “1”
memory: 2Gi
Requests:
cpu: “1”
memory: 2Gi
But when number of entities grew, ingress-controller container was not able to start with this memory allocation. and we had to increase memory allocation to 3Gi and reduce memory allocation for proxy to 1Gi. What should be the ideal distribution of resource?

Also why does ingress-controller container memory usage increase linearly with entity creation. Does this container also has in-memory caching? it has huge memory consumption during startup. Is this due to loading of data from db to cache? I am confused if cache resides in CP container / DP container.
Note: we are using kong in db mode with Postgres

@hbagdi
Our memory usage pattern for both containers