Two questions about InMemory OLTP

  • 1. How to estimate how many free RAM I need.

    If I plan to create five 2 Gb memory optimized tables

    10 Gb RAM for data and how many additional memory?

    2. How to prevent memory overflow if there will be too much data in those tables?

    I dont want that my server down entirely

  • suvorav (4/20/2015)


    1. How to estimate how many free RAM I need.

    https://msdn.microsoft.com/en-us/library/dn282389.aspx

    2. How to prevent memory overflow if there will be too much data in those tables?

    SQL won't allow 'memory overflow'. If there's no more memory, all inserts and updates against in-memory tables will fail and deletes may fail too. If you get into that state, you'll have to drop the table, so you need to monitor table sizes and make absolutely sure that you can't run out of memory.

    In-memory OLTP is not something you want to put in without a LOT of testing and planning.

    Gail Shaw
    Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
    SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

    We walk in the dark places no others will enter
    We stand on the bridge and no one may pass
  • Thank you for your answer

  • I would absolutely advocate for using the mathematical calculations supplied by Microsoft in the link above. But, for a ballpark guess when doing initial evaluations, 3-5 times the data is generally a safe bet.

    Don't overflow the data. Bad stuff happens. It can take a server offline. I've seen it happen in testing.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

Viewing 4 posts - 1 through 3 (of 3 total)

You must be logged in to reply to this topic. Login to reply