Looking for more info on CONCAT_ATTRIBUTE
I'm looking at the SQL behind some of our larger tables replicated from SAP and see some have extra concatenated attributes similar to this;
ALTER TABLE "OURSCHEMA"."MSEG" WITH PARAMETERS ('CONCAT_ATTRIBUTE'=('$LGORT$MATNR$WERKS$',
Does anybody have any further documentation about this, why it exists exactly and what the benefits are? At first I thought it was simply a concatenation of KEY fields (and most indeed are) but some of the fields being concatenated are not KEYS. Some of these concatenated attributes seem like common ways I might want to join to other tables so I wonder why they wouldn't just all be KEY fields to begin with as well. So I'm wondering the logic behind this and if SAP has pre-chosen all of these combinations. The other reason I'm asking is I was told by SAP in the past, when looking into huge memory consumption issues for BSEG for example - ie: noticed in some cases record count growth did not directly tie to memory consumption growth) that some additional memory is required for concatenated attributes. So I just want to understand this better and can not find any documentation anywhere on this. I noticed some very old SQL Script guides (HANA SPS 01!) had very vague examples of CONCAT_ATTRIBUTE but it was removed in later documentation.
Thanks for any information you may have on this subject,
Ravindra Channe replied
I will try to mention as much as I know, but would be more keen on getting the reply from @Lars Breddemann, "The Great".
- First thing, you can find some details on these columns in m_cs_all_columns.
- These columns are generated whenever you define them as KEY columns OR you have a join on the table using a set of columns.
- So if you join a table with a set of column combinations, a new column which concatenates these columns will be created.
I'll try to put a working example here in some time.