Skip to Content

Another half year passed and another SAP HANA SP has just been released.

SAP HANA 1.0 SPS 7 is out in the wild as revision 70.00 (double zero revision, yes Moneypenny πŸ˜‰ ) and a lot of things had been changed, added and (hopefully) improved.

http://upload.wikimedia.org/wikipedia/en/9/9b/Miss_Moneypenny_by_Lois_Maxwell.jpg
(linked from here)

Don’t get me wrong, this is by no means a comprehensive “What’s new” report (for that, make sure to check the SPS 7 documentation as soon as it is out as well https://help.sap.com/hana_platform).
While the documentation is not yet completely available on help.sap.com make sure to check the built in online help in SAP HANA studio (reference guides).

Also, check out SAP note 1944771 for release information.

ATTENTION: one of the major changes is that from now on, there exist maintenance revisions that are developed besides the SP revisions.

The maintenance revisions shall only contain bug fixes and keep functionality stable.

As a consequence of that, the upgrade paths between maintenance and SP revisions must be obeyed.

Read SAP note 1948334: SAP HANA Database Update Paths for Maintenance Revisions for the details.

Finally, don’t miss out on the WEBCAST series “SAP HANA SPS7 – Overview, Features, Details

So this is what Ravi asked for – just quick glimpses

PlanViz changes

  • GUI improved

03-12-2013 23-53-01.png

There’s even the option to execute a query and displaying the result set.

  • aborted plans still visible

failed plan.png

That’s right, even though the query aborts with an error, you can review the PlanViz trace up until the POP that failed and analyze what was going on.

  • inverted index usage information (visible in the hover over details of POPs)

Thanks to my co-author, program lead and fellow Wuppertaler Richard from whom I stole this example…


Name: Basic predicate

ID: cs_plan13688_ld9506_30103_tableSearch1_pop1

Summary: MANDT = ‘800’

Execution Time (Self): 0 ms

Execution Time (Inclusive): 0 ms

Execution Start Time: 162,707 ms

Execution End Time: 162,707 ms

Estimated result size: 51

Estimation time: 0.067 ms

Inverted Index: not used

  • applied column filters (WHERE condition and analytic privileges) shown at the object where it is applied

search on table.png

Unfortunately there’s no time for now to do more tests – but I’m quite happy to see that so many improvement requests have been fulfilled (thanks for all the due follow up Mr. K!).

Session grouping, filtering and aggregation features

session filters.png

session  aggregates.png

Fancy graphical display of memory and resource allocation/usage

memory overview.png

Mhmm… I like pie…

resource overview.png

Impressive how these lines have different colors and go upwards…

Statisticsserver process now included in indexserver process

Yep, it’s not a separate process any longer, doesn’t have it’s own persistence any more and is much better configurable (that’s what I heard).

Details are to be found in SAP note 1917938.

As it’s not a very visual feature, here some trace file output line from the migration πŸ™‚ …


 i STATS_CTRL       NameServerControllerThread.cpp(00203) : installing...
 i STATS_CTRL       NameServerControllerThread.cpp(00299) : old StatisticsServer: ld9506:34205, volume: 2
 i STATS_CTRL       NameServerControllerThread.cpp(00355) : waiting for start of old StatisticsServer ld9506:34205, volume: 2...
 i STATS_CTRL       NameServerControllerThread.cpp(00371) : waiting for old StatisticsServer ld9506:34205, volume: 2 to stop all operations...
 i STATS_CTRL       NameServerControllerThread.cpp(00373) : old StatisticsServer ld9506:34205, volume: 2 has stopped all operations
 i STATS_CTRL       NameServerControllerThread.cpp(00376) : old StatisticsServer is ready. starting...
 i STATS_CTRL       CallInterfaceProxy.cpp(00035) : sending install request
 i FileIO           FileStatistics.cpp(00287) : FileFactoryConfiguration::initial(path="/usr/sap/WUP/HDB42/backup/log/", AsyncWriteSubmitActive=auto,AsyncWriteSubmitBlocks=new,AsynReadSubmit=off,#SubmitQueues=1,#CompletionQueues=1)
 i STATS_CTRL       CallInterfaceProxy.cpp(00039) : response to install request: OK
 i STATS_CTRL       NameServerControllerThread.cpp(00299) : old StatisticsServer: ld9506:34205, volume: 2
 i STATS_CTRL       NameServerControllerThread.cpp(00422) : found old StatisticsServer: ld9506:34205, volume: 2, will remove it
 i STATS_CTRL       NameServerControllerThread.cpp(00425) : forcing log backup...
 i FileIO           FileStatistics.cpp(00287) : FileFactoryConfiguration::initial(path="/usr/sap/WUP/HDB42/backup/log/", AsyncWriteSubmitActive=auto,AsyncWriteSubmitBlocks=new,AsynReadSubmit=off,#SubmitQueues=1,#CompletionQueues=1)
 i STATS_CTRL       NameServerControllerThread.cpp(00430) : log backup done. Reply: [OK]
--
[OK]
--
 i STATS_CTRL       NameServerControllerThread.cpp(00433) : stopping hdbstatisticsserver...
 i STATS_CTRL       NameServerControllerThread.cpp(00458) : waiting 5 seconds for stop...
 i Service_Shutdown TREXNameServer.cpp(03734) : setStopping(statisticsserver@ld9506:34205)
 i STATS_CTRL       NameServerControllerThread.cpp(00463) : hdbstatisticsserver stopped
 i STATS_CTRL       NameServerControllerThread.cpp(00466) : remove service from topology...
 i STATS_CTRL       NameServerControllerThread.cpp(00470) : service removed from topology
 i STATS_CTRL       NameServerControllerThread.cpp(00472) : remove volume 2 from topology...
 i STATS_CTRL       NameServerControllerThread.cpp(00476) : volume removed from topology
 i STATS_CTRL       NameServerControllerThread.cpp(00478) : mark volume 2 as forbidden...
 i STATS_CTRL       NameServerControllerThread.cpp(00480) : volume marked as forbidden
 i STATS_CTRL       NameServerControllerThread.cpp(00482) : old StatisticsServer successfully removed
 i STATS_CTRL       NameServerControllerThread.cpp(00405) : removing old section from statisticsserver.ini: statisticsserver_array_BACKUP_LAST_DATA
[...]
 i STATS_CTRL       NameServerControllerThread.cpp(00405) : removing old section from statisticsserver.ini: statisticsserver_view_VOLUMES_OUT_OF_ORDER
 i STATS_CTRL       NameServerControllerThread.cpp(00409) : making sure old StatisticsServer is inactive statisticsserver.ini: statisticsserver_general, active=false
 i STATS_CTRL       NameServerControllerThread.cpp(00222) : installation done

New SQL functions

HASH_SHA256 –  “Returns a 32 byte VARBINARY hash value of the concatenated arguments. The hash is calculated using a SHA256 algorithm.

I guess that Jon and In-Sung Lee will like that

Alright, admit it: you also have to blink to believe that all that made it into SPS 7, right?

It’s nearly as if Xmas was coming up… wait a minute…

Cheers and a great holiday season everybody!

Lars

To report this post you need to login first.

25 Comments

You must be Logged on to comment or reply to a post.

  1. Vivek Singh Bhoj

    Hi Lars,

    Its HANA 007 πŸ˜‰

    Thanks for sharing another great document.

    New features in Plan Viz are welcome esp inverted index usage

    Very colorful display of Memory usage – Lumira Pies

    Regards,

    Vivek

    (0) 
    1. Lars Breddemann Post author

      Hi Kumar,

      thanks and yep – just saw the document…

      What can I say… I’m not impressed 😏 .

      Well, seems there’s still demand for some more explanation around this topic.

      Cheers, Lars

      (0) 
        1. Lars Breddemann Post author

          Hehehe… let’s see about it.

          Currently writing on something much bigger, so first things first!

          Maybe 2014 will see me writing even more. Who knows πŸ˜€ .

          (0) 
    2. Kumar Mayuresh

      Hi Lars

      Awaiting for the bigger update, and at-least there is a document on performance analysis πŸ˜‰ .

      I agree with you – over the content in the document.

      Regards

      Kumar πŸ™‚

      (0) 
    1. Lars Breddemann Post author

      Awesome, up to now the comment section has an average of (2+2+1/3 =) 1,667 smileys which I consider pretty good for such a dry nerdy topic.

      If everybody is happy, how could I complain? πŸ˜€

      Cheers, Lars

      (0) 
  2. Raj K

    Hi Lars,

    Thanks for SPS Bond updates. The term is nicely coined.

    Hope in couple of weeks in the discussion threads the person might mention “I am using Bond version” πŸ™‚

    Regards

    Raj

    (0) 
      1. Gregory Misiorek

        i had an impression that one of the graphics is showing a system with 1 033 961 MB physical memory, which if google calculates it correctly, comes down to 1 009.7 GB.

        that’s almost 30 times more than we, mortals, can rent on aws.

        (0) 
  3. Ingo Peter

    Hi Lars,

    Resource Utilization and Memory Overview seem to be rather secret features: I could never launch them – even not as system user in a freshly installed system:

    1.PNG

    Which privilege do I actually need?

    Regards,

    Ingo

    (0) 
  4. srikanth mandalapu

    Hi Lars,

    Regarding:

    Statisticsserver process now included in indexserver process

    What was the stat server + index server peak memory utilization?

    what was the retention period set?

    Did you observed any OOM/Unloads on the master node after migration?

    We are having a big time issues with 72.

    (0) 
    1. Lars Breddemann Post author

      Hi Srikanth

      After the migration there is no way to distinguish memory requirement of the statistics service from the other sessions running in the indexserver process.

      There is no separate statistics server process after the migration anymore.

      If you face issues due to this – actually the statistics service integration should help _reducing_ resource usage – please have support look into it.

      Besides that, rev 72 should be upgraded to the current maintenance revision for SPS 7: 74.02.

      – Lars

      (0) 
    2. John Appleby

      What we found matches what Lars says: integrated statistics server reduces memory consumption by 2-3GB.

      Also Rev.72, 73 were problematic – update to 74.2/80 which are better in many ways!

      If you get OOM are you sure you are not just low on memory?

      (0) 
      1. srikanth mandalapu

        2-3 Gig not gonna help, we have implemented retention procedure and set it to 7 days but we see a Stats process resident size of 90 to 120 gig.
        Hopefully after migrating to 80, we might see some improvement.

        (0) 
        1. John Appleby

          Sounds like you have a problem, best to take this up with OSS. It’s tough to troubleshoot this sort of thing in a public forum!

          (0) 
        2. Lars Breddemann Post author

          As long as you see a statistics server process you *don’t* use the integrated statistics service.

          Not sure where this went wrong, but there really is no additional process left after the migration.

          (0) 

Leave a Reply