License calculation at 7.0 version later

Hi, everyone.

I know that memsql license is calculated to bigger one either vCPU 8 cores(available regardless of hyper-threading on or not) or RAM 32GB as 1unit on host at on-premise environment.

I have two questions.

  1. Does memsql licensing include offline vCPU cores when calculating from vCPU? It’s confusing. Because “lscpu”, which is a kind of OS command to check CPU state, shows all of vCPU(online + offline). Does it be adjusted to memsql license?

  2. Before 7.0 version, i deployed leaf nodes with assigning maximum_memory size. So calculating license from memory is shown to total amount of maximum_memory from leaf nodes. But now, it seems to be calculated from physical memory regardless of total amount of them.
    Is it right?

I don’t know clearly those. could you give me a clear answer?

Thank you for reading this.

Hi there - thanks for your questions around MemSQL’s licensing! Happy to help. Please see the below feedback in relation to your quesitons:

  1. MemSQL uses only the online processors for calculating the license. You can check using the following command: sysconf(_SC_NPROCESSORS_ONLN);

  2. You are correct. With the current unit-based licensing model, we will license based on the physical memory and vCPU of the leaf nodes.

If you need further assistance on licensing for your MemSQL deployment, feel free to reach out directly to our team at through the “Contact Us” form and we’d be happy to help!

Thanks again for your question.

Thank you for your reply!
I have extra questions.

  1. I want to know your team would like to reflect again something like previous license calculation? Actually, Before 7.0 version I could allocate amount of resource what i want to give to leaf nodes and calculate it. It was reasonable!
  2. If I’m going to calculate license from RAM-based, which situation is right case?
    ( Each 10 leaf node,which is a host, has vCPU 4 cores and RAM 40GB.)
  (1) (40GB / 32) X 10 = (2 units) X 10 = 20 units
  (2) (40GB X 10) / 32 = 12.5 -> 13 units

Thank you!

(1) is how we calculate today (we round up on each host). The idea is your licensing each host to run MemSQL.

This was mostly done to better align our pricing with industry standards (typically per-core pricing or a unit based model similar to ours). To my knowledge, MemSQL was unique in charging based on the memory available to the cluster before we made the switch. For the most part, this didn’t change the license costs for most of our enterprise customers, and we did our best to make things right when there was an unexpected increase in license cost.

We are looking at making some changes to licencing in newer version of MemSQL if your running in containers of k8s we will license based on the containers hard resource limits (not the host its running on).