Академический Документы
Профессиональный Документы
Культура Документы
Client Troubleshooting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
How to: Investigate Performance Issues. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
EPM Add-in for Excel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
MS Excel & Office. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Conclusion: Client Troubleshooting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Infrastructure Troubleshooting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Network Latency. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Internet Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Cloud. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Network Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Conclusion: Infrastructure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Server Troubleshooting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
BPC NW & NW on HANA Versions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Database Considerations for non-HANA Versions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
BPC Microsoft. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Conclusion: Server Troubleshooting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
+1.800.360.7839
info@column5.com
www.column5.com
Overview
EPM software is being adopted more commonly beyond finance to support planning and reporting across a broad
enterprise model. Because EPM and enabling analytics components are increasingly viewed as mission-critical enterprise
solutions, aspects such as system availability, high performance, and smooth operation are mandatory qualities for these
solutions to be effective. The Column5 team has observed an inverse relationship between system response times and
user satisfaction at every level of process sophistication: The more time basic system functions take, the less users will
enjoy working with the solution, and the less likely they are to embrace it.
A common criticism from technical specialists is that users always want systems Poor EPM system
to be faster, no matter how fast response times already are. Despite this irrational performance robs
expectation, it is also fair to note that EPM systems seldom operate anywhere organizations of value
near a state of optimal performance. Column5’s market leading experience
by impeding current
indicates most companies miss EPM system performance benchmarks by wide
margins, yet they may not realize it. Despite being such a lightning rod for processes, and blocking
criticism and a severe stumbling point for many EPM solutions, customers suffer the adoption of future,
from two major blind spots: They often don’t know they have a performance higher value processes.
problem, and they don’t know what to do when they realize there is an issue.
Without an understanding of what the causes and remedies are, organizations
struggle to adopt a plan to address performance challenges. At a minimum, future expansion initiatives are put on hold
until a resolution is achieved; in extreme examples of blaming a perceived inherent defect of the product, the EPM system
is in very real jeopardy of being removed.
The fact is that most EPM solutions will be faced with some sort of performance problem at one or more points during
the solution lifecycle. In a way, performance issues are a bit of a rite of passage, particularly as organizations rely on
their systems in more advanced ways. The trick is to be proactively managing and resolving the issues, so they do not
metastasize in ways that repel users and cost potentially millions in wasted resources.
+1.800.360.7839
info@column5.com
www.column5.com
This eBook seeks to equip customers with critical user communities and assert control of the proper
information for two aspects of the EPM process: 1) environmental variables to make rapid improvement.
how to access and apply benchmarks to identify at the Ideally, the client internal team would be empowered
earliest opportunity when there is room for performance to quickly assess the various components and unique
improvement, and 2) how to adopt a calm and methodical pressures EPM use cases place on system tiers. At
approach to develop a performance mitigation strategy. times, third-party assistance may be preferred or even
required. External consultants come in a wide variety of
The first hurdle to overcome—knowing that a skills and experience. We won’t attempt to tackle that
performance problem exists or is at risk of developing— discussion in this eBook but suffice it to say: caveat
is no easy feat. Based on experience, we know customers emptor is the rule when it comes to procuring any EPM
tolerate bewildering performance scenarios for far too services, and especially when solid performance is a
long simply because they don’t realize the performance critical expectation. Just because someone says they
was well below average. This first point usually comes know what the issue is doesn’t make it true! Our advice
from the fact they have nothing with which to compare is to not be overly patient with performance issues—it is
their performance. Column5 has supplemental tools truly a burning platform your users will not tolerate for
available released in conjunction with this eBook to assist long—especially if you don’t have a credible plan.
customers in rapidly identifying performance issues. This
book will point you in the right direction to demystify the In this book, we’ll discuss some basic strategies to triage
age-old question: “What is normal?” Click here to take common performance challenges with EPM solutions,
our brief performance survey [Make naming consistent] and specifically SAP’s flagship EPM product, BPC.
to rapidly assess how your performance compares to
industry standards. It’s well worth the 5 minutes or less Your friends at Column5 empathize with befuddled users
investment to see if your score looks like it could use in the throes of performance challenges. We know all too
improvement. If that’s what the indicator is, then you well how frustrating that circumstance can be…and we
should continue reading. believe the extreme anxiety EPM system performance
can trigger stems from a lack of understanding about
In addition to this rapid report card, Column5 also collects what is causing the problems and how to address them.
performance data on BPC and periodically reports our The good news is that performance challenges can
findings to the BPC user community. The goal is to often be addressed in short order with proper tuning
assemble a comprehensive dataset and define what and sizing procedures. So, if you are feeling lost, don’t
“average” truly means. This survey is much more involved know where to begin, or wonder if your performance can
and will take 15-30 minutes to complete. We will notify be improved…rest assured, it can! This eBook is a good
all participants on the results of the survey, and offer a place to start.
personalized performance benchmarking, comparing
not just times but factors like solution complexity, user While we are talking about EPM/BPC specifically here,
and data volumes, platform type, server configurations, the principles outlined in the following pages can be
and more. If you would like to participate in our BPC applied broadly, not just SAP BPC. Switching from SAP
Performance Survey – Click here. EPM solutions to Hyperion (for example) isn’t likely to
resolve the issues, since functional and technical design
The second hurdle is to develop a plan to remediate principles are universal across many EPM products. You
performance issues, which is essential to calm anxious simply can’t run from a misguided design.
+1.800.360.7839
info@column5.com
www.column5.com
Given the most common “build from scratch” approach, understanding of your user’s requirements, however
EPM deployments can be very sophisticated or even poorly articulated or documented they were. For every
convoluted in their first iteration. What is really built is a requirement, there were multiple paths to fulfill the
unique, custom developed, version 1.0 software solution envisioned need. Which path, which configuration, in
with many points of potential failure embedded within which order—every decision before, during, and after
the solution. Despite the almost infinite permutations development ultimately carries a performance price tag.
of unique features and code present in any given Some tradeoffs are reasonable and “almost free,” while
customer’s environment, we see several recurring root some will cost an arm and a leg. The key concept you’re
causes leading to performance issues. solving for here is “development elegance.” Was the
configuration work well organized, succinctly executed,
Functional Design and effectively applied? This, too, is more a question of art,
Regardless of the technology than science. While several of our tips and suggestions
stack (e.g., NetWeaver, Microsoft, cover functional topics, this subject will not be addressed
HANA), application and model directly in this eBook.
design has a significant impact
on performance. Combined with a Data Volumes
suboptimal structural design, poorly It may seem like an obvious point,
designed objects accessing that but the amount of data in the
structure like: logic, reports, schedules, and data manager system, on a report, or processed
packages, can tie your hardware and software in knots by a logic statement, will affect
and hinder system performance. The bottom line is that your performance to an often-
functional design of the solution will affect performance linear degree. Like the old children’s joke, “How do you
and throwing hardware resources at a bad design will eat an elephant? One bite at a time,” you should always
not improve the foundational issue. The key question consider breaking down the work into smaller pieces.
here is “Were the software’s features applied correctly in The key question here: Are you asking BPC to do an
pursuit of meeting the requirements?” Troubleshooting appropriate volume of work at the appropriate time
what makes a good design is a nuanced discipline to meet your needs? SAP EPM can handle enormous
requiring experience with myriad design options. This amounts of data, regardless of technology stack, but only
eBook won’t cover the details of design directly, but this when the technical foundation and functional design are
topic is addressed elsewhere in Column5’s blog, and may set up correctly and efficiently. An efficient design and
be the subject of a forthcoming whitepaper. rock solid functional execution can efficiently solve this
challenge, but unfortunately this is rare to experience.
Functional Execution More likely, a shaky foundation, confusing design, and
You may recall unwrapping your sloppy execution is subjected to unusual data volumes
freshly installed BPC solution with very frustrating results.
(ah, remember that new software
smell?), only to find it came to
you completely blank. From that
moment, everything configured
in that solution was done by
someone in pursuit of fulfilling their
+1.800.360.7839
info@column5.com
www.column5.com
A telltale indicator for this risk would be symptoms appearing “randomly” (such as during some sort of peak load from
an unrelated process), or happening at the same time every day or night (when a scheduled process from an unrelated
solution is running concurrently). These symptoms may be inconsistent and seem to disappear without any explanation.
We hear clients refer to this phenomenon as “the ghost in the machine.” If this sounds like you, your mystery can be solved!
+1.800.360.7839
info@column5.com
www.column5.com
When your users are standing outside your office with pitchforks and torches, it’s important
to have the right mindset. Let’s consider some do’s and don’ts:
DON’TS
Don’t panic.
Don’t assume BPC is just supposed to be slow. (In fact, go ahead and fire anyone who told you “slow is normal.”)
Don’t give up, say “Well, we tried everything,” and continue tolerating slow performance.
The second part of the list should not be done without validation:
Don’t scale back functionality.
Don’t buy hardware or new database technologies. (Just moving from one technology stack to another is not an
automatic fix for issues.)
+1.800.360.7839
info@column5.com
www.column5.com
+1.800.360.7839
info@column5.com
www.column5.com
Do evaluate performance from a holistic perspective. The probable The performance your users experience
cause of a performance challenge is going to be the confluence
is not just determined by configurations
of several contributors, not usually fixable with one silver bullet.
on the client side, or by enabling certain
Each of the incremental improvements should have an impact.
checkboxes on the server. Performance is
Individually they may be small, but taken together, the impact may
be significant. It is important to identify all the active issues in your influenced by every level of the technology
deployment, if for no other reason than that you don’t keep making stack taken as a whole. Adding to the
the same mistakes as you write your next report, as you create complexity, SAP EPM BPC comes in quite
another Budget category, write some new logic, etc. a few flavors (e.g., BPC NW on HANA/
S4HANA, BPC NW with SQL or Oracle or
Do react to performance complaints quickly and with an efficient
step-by-step plan. DB2, etc., and BPC MS) but they all have
the same basic technology tiers: Client,
Do be calm and confident. There is always something that can be Application, and Database. In addition to
done to polish your solution and improve performance. If you lose
the products and hardware at each level
hope or appear to be unsure in tension-filled moments, your users
of your environment, another constraint
will turn on you very quickly.
is the infrastructure connections between
Do make sure you get appropriately qualified resources to assist with the different components within a stack.
performance issues. Column5 offers an EPM Assessment, which Multiplying this complexity, depending
is an excellent place to start identifying performance influencing on the way your system is implemented,
factors across your solution.
you could have a “Single” server
(application and database on one server),
“Multi” server (database and application
separated), or “High Availability” (multiple
application and database servers). Don’t
forget the potential permutations on the
client side where all queries start. This
could include laptops, desktops, remote
desktops, virtual desktops, and Citrix. As
you can see, this can quickly get quite
complicated. Knowing how information
flows across an EPM landscape is
essential to credibly diagnose and solve
any performance or stability issues you
may encounter.
+1.800.360.7839
info@column5.com
www.column5.com
The below flowchart isn’t perfect for all situations, but it provides a structured approach to isolating the problem and
forming a strategy to resolve the issue. Use this chart in conjunction with the detail sections that follow to get a handle on
your performance issue before reaching out to a third party for help.
Check Client
Troubleshooting
YES
PERFORMANCE Is It One
PROBLEM Client
REPORTED Machine?
NO
Check Check
Check Server
Infrastructure Contention
Troubleshooting
Troubleshooting Troubleshooting
+1.800.360.7839
info@column5.com
www.column5.com
Overview
When you encounter issues with performance and can isolate them to a single machine or a common configuration
that is consistently slower or more problematic than others, you need to start with gathering information to be able to
identify the precise issue.
First, start by verifying the issue is indeed occurring on a single machine. Try performing the identical activities on a
second client machine to see if there is a significant gap between this machine and another. Could it be the location
on the network? Is it a certain configuration that machine has, either software or hardware? Rarely do we see just one
machine perform poorly, so our challenge is to isolate the set of circumstances that makes this machine (and this user,
frequently) encounter a subpar experience with their EPM solution. If we follow the basic hardware recommendations
(8 GB RAM, 4 CPU cores, solid state drive) we should be OK from a client hardware perspective; at that point, we need
to think about the software versions, starting with Office. Some performance and stability issues occur more frequently
with certain versions of Office and/or Excel.
If a clear correlation with a client configuration detail and the performance issue does not emerge from this quick
analysis, then begin the troubleshooting process by interviewing the user reporting the issue. Do they have certain
windows open when the problem happens? Do they encounter similar problems with other applications? Is there a
similar issue in native Excel without BPC even being active? Does the issue happen at random times, or can they predict
when the issue will appear? If the answer to any or all of those questions is yes, review the section on Contention for
Resources Troubleshooting on page 16.
In versions of Microsoft Excel which can have performance and stability impacts, the presence or lack of service packs can
also influence the same; in addition, 64- vs. 32-bit Office/EPM clients (the SAP BPC client software version you installed)
can also impact performance. On occasion, there may be a software conflict with the combinations of applications and
versions installed on a given client machine. In the case of the latter scenario, this is often hard to detect, since users
are not always aware of what applications are active or even installed. Pay attention to active add-ins in Excel if you
suspect a software conflict exists. You can see what add-ins are active in most recent versions of Excel by accessing
File >> Options >> Add-ins.
+1.800.360.7839
info@column5.com
www.column5.com
The basic strategy to keep in mind is to first understand the issue as best you can, analyze the information, and then
precisely identify the resolution. Too often, clients panic and start changing what amounts to random settings all over
the solution landscape. Without intending to, this flailing approach to troubleshooting injects new variables and new
performance problems into the mix compounding the original problem. Instead of this chaotic approach, take your time
and use all available information sources to be more deliberate before making any adjustments. There are several resources
available to access on the client side to gather information for investigating the source of poor performance.
+1.800.360.7839
info@column5.com
www.column5.com
FLMXLClient.dll-ExcelLogConfig.xml
Fiddler
−−Launch Fiddler2.
−−Close any Internet Explorer sessions.
−−Launch BPC for Excel and re-create the error.
−−Save the trace file as a saz file.
+1.800.360.7839
info@column5.com
www.column5.com
+1.800.360.7839
info@column5.com
www.column5.com
Client Troubleshooting
When troubleshooting the client, it is important to have an overall understanding of the
flow of information from the client, over the network, to the server and back. By gathering
information at key monitoring points to make sure the client can efficiently process tasks
and communication, the system should work well. This is, of course, based on having
the best practices from a functional perspective. If we have an inefficiently built report or
incorrectly written logic that is called during a send, no amount of client resources will “fix”
the issue. When validating that these components are in place, indicators may reveal that
the communication flow is being impeded by one or more misconfigured or unavailable
resources. Armed with the insight into the root cause, an effective remediation strategy
is simple to determine.
+1.800.360.7839
info@column5.com
www.column5.com
Overview
One of the most frustrating scenarios in EPM performance troubleshooting is the inconsistent slowdowns experienced,
seemingly at random and to varying degrees. The Column5 team has heard users say things like, “Sometimes it’s slow,
other times fast” or “Depending on the time of day/week/month, it starts out running well, and seems to fade later in the
day.” This kind of client insight is almost always an indicator of resources that are being used by multiple requests from
different solutions (not necessarily BPC). The perceived symptom is very similar in that there is not a consistent amount
of resources available at specific times. Asking additional questions may point us in the right direction, such as “Does it
always happen during month end or when a lot of users are in the system?” That scenario could point to a convergence of
users spiking to consume unusually high resource levels.
Let’s look at one scenario to further illustrate this condition. If an EPM solution was installed on dedicated hardware with
64GB of physical RAM (where no other process was using that machine), one could reasonably expect the maximum
resources of RAM available at any one time will be 64GB, allocated across solution tiers. However, this is not how servers
are often deployed in the modern landscape.
With virtualized servers, the physical RAM is often much greater than 64GB—perhaps 256GB or more—and this physical
resource pool is allocated across numerous virtual servers. EPM may be just one of several solutions/processes supported
by the physical server. This is where it gets tricky, because the amount of RAM resource allocated via software to the EPM
process is the same 64GB, but there may be 5-10 other servers with dynamic memory allocations that could potentially
claim those same physical resources. If all the processes are busy at the same time, there may be a crunch for available
resources—sometimes without any of the users realizing it.
RAM is only one example. CPUs, storage, network bandwidth, and other key components in the hardware stack have been
virtualized to allow cost pooling and resource sharing. We think this is a fine idea in theory, but when done improperly in
practice, it can inject some risk to consistent performance from less-than-transparent places.
+1.800.360.7839
info@column5.com
www.column5.com
The number of processors and amount of RAM resources made available to different solution tiers can be an obvious
bottleneck. This is seldom a problem with contention from other, unseen competition; this typically comes from competitive
processes running within the same server. The Column5 team has seen some confounding situations where resources
were drained by less-critical activities performed at the worst possible time. Common examples include:
Anti-virus Activity
Running anti-virus scans on inappropriate (too broad)
scope, or too often, or “real-time” scanning are the
culprits here. It’s the 11th hour and hundreds of users
are trying to submit their final budgets. Meanwhile, the
server decides this is a perfect time to run a full scan
of all data and database records to ensure all files are
virus-free. Meanwhile the users are complaining that
performance has just dropped off a cliff.
File Backup
Backups are important; you’ll never have Column5
recommend otherwise. A full backup taken every 5
minutes is unhelpful, however, and the server may be
so busy fulfilling this request that it’s all but unavailable
to service user requests. Backing up is essential for
recovering a system that has gone down, but can
also cause performance issues, especially with virtual
machines. Copying backup files across a network can
cause performance issues on the servers and network,
depending on the size of the files and speed of the
network.
Virus Activity
Not to be confused with anti-virus activity, sometimes
a system can be infected with a virus or be targeted
by a DDOS attack. The result of either is the system’s
resources are being consumed inappropriately and are
unavailable for EPM users.
+1.800.360.7839
info@column5.com
www.column5.com
Poor Housekeeping
When admins and developers get sloppy, they leave
telltale evidence all over the environment. BPC,
databases, operating systems and technical platforms
all contain numerous logging abilities which can be
enabled. They accumulate data while running and this
data can be analyzed to determine root causes for
poor performance. There are times when these utilities
are absolutely required. Sloppy technical workers can
sometimes leave them enabled or leave their log files
lingering on the system, which chews up precious
resources when users may need them. Be very judicious
about turning on logs, and always clean up after yourself.
+1.800.360.7839
info@column5.com
www.column5.com
+1.800.360.7839
info@column5.com
www.column5.com
It’s easy to take bandwidth for granted, and even assume that it is essentially
limitless. Despite increasing ubiquity of storage resources, this resource can also be
a source of contention. Wireless connection to the internet everywhere is driving a
new capability present in almost all products—called Internet of Things (IOT)—that
is creating mountains of data traffic to enable hypothetical analysis. We won’t get
into the validity of the use case for your toaster being connected to WiFi, but there
is application for EPM. This trend can be seen in mobile devices easily connecting to
EPM data, as well as the emergence of cloud and hybrid EPM services supporting
much broader deployments that open up EPM data access to more and more users.
Yet, for critical functions, bandwidth is too often constrained.
On the micro level, impeded bandwidth for communication between a client and the
server can cause major issues. On a macro level, bandwidth for communication from
all clients or from server to server can be an all-too-limited resource at the worst
times.
There are workarounds available to address these challenges. For example, BPC
has features to work in an offline mode, where communications are not constant
as they are in the more typical online mode. Certain report design techniques place
more stress on bandwidth. EvGET, EPM Retrieve functions, and other cell-by-cell
querying are very “chatty” data communication methods that have many more
packets per report of a given size. This mode of reporting is especially vulnerable to
underperforming in high latency networks. Citrix and Remote Desktop solutions can
offset some of these high latency conditions, but should not be used to mask poor
design in the solution or objects. Knowing the tradeoffs for these features requires
a full understanding of available options. It is important to remember that Citrix and
RDP are workarounds for slow network connections, but they also must be sized
appropriately to ensure superior performance.
+1.800.360.7839
info@column5.com
www.column5.com
upon your resources is changing. Such insights will be essential to implement a logical
A seasoned technician must know where to look for indications of the responsible resource fading in and out of availability,
process
and they need to identify
to scour andfor
the metrics prevent an organization
the physical from jumping
resources supporting to conclusions
each resource for whatabout whatbe causing
may really
the suspect performance.
is causing any instabilities.
It may well turn out to be a “once-in-a-lifetime occurrence” when two processes collide on a shared resource, but that’s
rarely the case. If shared resources are overloaded and configurations are not done carefully, performance challenges like
A to
this are likely seasoned technician
recur at the worst time.must
Thinkknow where demand
of processing to lookduring
for indications
the end of a of theyear
fiscal responsible
or month-end close:
Unfortunately, that is the
resource mostinlikely
fading andtime
outforofproblems to arise.
availability, and they need to scour the metrics for the
If a client isphysical
lucky, thisresources supporting
kind of contention each
may not beresource for what
commonplace. may really
Nonetheless, it isbe causingtothe
important suspectit and take
understand
steps to avoid it. At a minimum, you should know where to look to confirm contention; that will allow you to know whether
performance.
an issue has the potential to metastasize or if it simply needs to be waited out. Being able to explain with certainty is a
much better position to be in than saying, “It’s that darn EPM solution slowing down by itself again.” We know you’d prefer
a more intellectually honest explanation than that, and your users will appreciate it, too!
It may well turn out to be a “once-in-a-lifetime occurrence” when two processes collide
on a shared resource, but that’s rarely the case. If shared resources are overloaded and
configurations are not done carefully, performance challenges like this are likely to recur
at the worst time. Think of processing demand during the end of a fiscal year or month-
end close: Unfortunately, that is the most likely time for problems to arise.
Overview
Infrastructure is the technology responsible for the network topology – the switches, routers, firewalls, load balancers,
domain services, SANs, network cabling, WAN and LAN connections, network service software (like QOS, Anti-virus, and
other solutions that manage network activities), and much more. The job of a well functioning network infrastructure is to
connect users to software services and resources in as efficient a manner as possible. Of course, this connection of users
to services also has to be secure, always available, and easy to navigate. That is difficult to manage for companies with
operations distributed around the globe.
Throw BPC into the mix with its usage patterns, sometimes working in read only mode and infrequently, but other times
in highly iterative plan development mode with small data changes sent over a network that are expected to trigger big
data changes and refresh reports in real time. EPM solutions place a unique strain on the network and components when
under high usage cycles like a budgeting process involving 1000’s of users or a month end close where users simply can’t
get access to their updated reports fast enough.
To meet the varying demands of BPC’s use cases, a high performance network infrastructure is required. It is also very
important to understand just how BPC places a load on network resources so you can optimize performance, or take
corrective action in the event of a failure or solution outage.
+1.800.360.7839
info@column5.com
www.column5.com
“
An example of this would be any combination of BPC
functions and Excel functions that look up some data
...as few as 20,000 EPMRetrieve from BPC, then use that data as a variable in the report
build out. This particular problem sentences the report
cells can bring an entire system to a to operate in a serial fashion, with each function going
complete crawl... back and forth to the database to fully resolve. This
type of technique could create a serious problem in a
high latency scenario, and even in systems without high
network latency, it’s inefficient and should be avoided.
+1.800.360.7839
info@column5.com
www.column5.com
BPC can be implemented to allow client connections Column5 has made available many blog posts and
outside the firewall to receive EPM related services. The presentations on the proper consideration for cloud
detailed requirements for which are included in your deployments of EPM. Certainly, cloud products are being
version’s install documentation provided from the vendor. positioned as the panacea to solve all software problems.
If you are connecting from your home, mobile connection, Life is never so simple, and the reality is cloud solutions
or a remote office that relies on an internet connection can be subjected to the very same challenges on premise
to send and receive data from the servers, this situation solutions can. In the context of infrastructure, the cloud
of traversing varying connections, firewalls, and other can subject your EPM experience to other bottlenecks
hurdles is a notorious weak link when communicating not easily detected or controlled by users or your internal
with the solution. If the latency gets to be too extreme, IT team. Be sure to get your cloud connections optimized
consider offline solutions (book publishing or email), in the event you are having any sign of issues.
remote access screen sharing solutions (Remote Desktop/
Citrix), or other workarounds to minimize reliance on a As mentioned in other areas of this document, you may
live connection to the database. notice slow downs at certain popular usage times due
to resource contention originating with other companies
If you connect to BPC using a VPN or other secure mode – not just within your organization. You may have an
of communication from outside a firewall, the security and untrusted security relationship with resources in the
processing of that connection may introduce additional cloud requiring multiple authentications. There may
constraints. Be aware of how your interaction with the be other performance chokepoints introduced when
servers is being treated, and what your data packets may deploying to the cloud, and it is important to consider
be subjected to as part of your network policies. A high these complexities when troubleshooting issues.
security connection isn’t always going to be the fastest!
+1.800.360.7839
info@column5.com
www.column5.com
Clients often seek to balance tight security with usability concerns. On one end of
the spectrum, a single sign on (SSO) environment is the most user friendly, while
a policy requiring unique credentials for each application is the most secure. BPC
can be configured to have unique user IDs or harmonious with SSO environments
with NetWeaver or ActiveDirectory type security. Keep in mind that however a
security scheme is configured, the user authentication has to be done somewhere.
If the authenticating server like a domain controller has a poor connection or is
overloaded, then signing on will carry a performance penalty.
+1.800.360.7839
info@column5.com
www.column5.com
Column5 wants our readers to be assured there is always an explanation as to why there
is slow or inconsistent performance, and when evaluating which factors are causing the
issue, admins are surprised to learn it is not often a failure within BPC itself.
+1.800.360.7839
info@column5.com
www.column5.com
Overview
BPC requires a multi-tier technology stack. Database servers, application servers, and clients work together to deliver the
BPC service you know and love to your clients. In other sections of this eBook, we have discussed challenges with clients,
infrastructure, and contention on servers. Now let’s dig into some server-specific troubleshooting tips.
At the risk of stating the obvious, setting up the server correctly is essential for good performance and routine monitoring
is critical for sustaining good performance over time. Both conditions require a detailed knowledge of how to get and keep
the server for your version of BPC running at peak efficiency. Often, that knowledge is specific to your particular version of
BPC. In addition to version numbers, there are also varying platform versions: BPC Microsoft (Standard), BPC NetWeaver
(Standard), BPC HANA (Standard & Optimized), and then versions in between across those platforms. (Selecting the
right version and platform for your organization is beyond the scope of this book, but we’re happy to opine—just contact
Column5 today!)
+1.800.360.7839
info@column5.com
www.column5.com
Customers on the NW and HANA platforms seek to exploit the benefits of close alignment with SAP Financial Systems.
This is an excellent goal and can be a tremendous source of value when seeking a tightly integrated planning and analytics
platform. However, that vision of a unified platform elevates the importance of performance to even more critical levels. A
unified platform working inefficiently is not much better than third party, non-integrated solutions working side by side.
Because both BPC NW on HANA, and BPC NW require the BW portion, a lot of the performance tuning is very similar
with any configuration of BPC NW with HANA or with any other database. BPC 10.x on HANA now supports MDX, which
has been pushed down to the HANA layer; however, we need to ensure performance is not negatively affected, since it
is still not the best option compared to alternatives such as custom written (and HANA optimized if present) logic, or the
easier to use Darwin DarCE module.
While HANA is going to provide favorable performance Even with this stack setup with the right versions and
across the board with everything else being equal, but sizing, the BPC NW & HANA versions can experience
it still requires prudent management and attention that some performance challenges. Look for the following
can affect performance outcomes. Therefore, we need common approaches, symptoms and considerations to
to: resolve performance problems:
»» Ensure the environment gets off to a good start with
a proper system sizing with a System Landscape Analyze the problem:
Design
Turn on BPC_STATISTICS, and use transaction
»» Make sure you are getting all performance advantages
UJSTAT to gather information about the server
by having a recent SAP HANA patch level in place.
performance. This information will provide insight
(See SAP Note 2115815 for more information
into which process or solution components may be
related to SAP HANA patches and upgrades.)
responsible for poor performance.
+1.800.360.7839
info@column5.com
www.column5.com
+1.800.360.7839
info@column5.com
www.column5.com
+1.800.360.7839
info@column5.com
www.column5.com
HANA is SAP’s powerful in-memory data appliance. Best possible performance for BPC is available on this version
(assuming proper configuration). Even without HANA, there are plenty of performance enhancing steps that can be taken
on the servers to improve performance. Below is a list of beneficial activities for any BPC version to take.
−−Input schedules
−−Reports
−−Journals
−−Data manager packages (process chains)
−−Transformation and conversion files
−−Etc.
+1.800.360.7839
info@column5.com
www.column5.com
SAP HANA (High speed Analytic Appliance) is an in-memory database appliance. As the description implies, a key feature
of HANA is memory (RAM) that features highly scalable IO characteristics that a database server accessing data from
physical hard drives has no chance to match. Because RAM is so important to achieve peak performance from HANA
(there are other aspects too), this resource also needs to be carefully managed.
+1.800.360.7839
info@column5.com
www.column5.com
+1.800.360.7839
info@column5.com
www.column5.com
»» You can find PSA table names by looking into SE11; SIZE)/1048576, 10, 2) “Allocated Size in MB”,TO_DECIMAL(
SUM(FREE_SIZE)/1048576, 10, 2) “Free Size in MB” FROM M_
give table name RSTSODS, executing the table and
RS_MEMORY WHERE ( CATEGORY = ‘TABLE’ OR CATEGORY =
giving the technical name of the PSA.
‘CATALOG’ ) GROUP BY HOST, PORT;
»» To find the size of PSA, execute the function module
DB_GET_TABLE_SIZE and give the input: technical
name of PSA and execute. Larger tables consume
more RAM resources when active. »» Row store reorganization is recommended when
allocated row store size is over 10GB and free page
ratio is over 30%.
»» If the result of “Reorganization Recommended” is
“TRUE,” then row store memory can be reclaimed
after row store reorganization. Execute Online Row
Store Reorganization command: ALTER SYSTEM
RECLAIM DATA SPACE.
+1.800.360.7839
info@column5.com
www.column5.com
https://technet.microsoft.com/en-us/ http://support.sap.com
www.update.microsoft.com
library/ff803383.aspx
Always install service packs and patches in a development or test environment. Verify through testing that the
system works as expected and no new bugs have been added. This includes not just the Server Landscape, but
the client environment. If everything looks good, apply to production and the rest of the client machines.
+1.800.360.7839
info@column5.com
www.column5.com
Data Collector sets are reusable groups of data related to performance that can be scheduled to be gathered and shared
with other computers. This allows for real-time collection, and analysis of data later. Data Collector is an out-of-the-box
tool that is already set up; you just need to make a copy and schedule the process to run. The tool will create a report that
shows any performance issues with RAM, CPU, disk, services, etc., highlighted in red.
Create one from a template for basic monitoring, performance, −−Created out of the box including LAN Diagnostics, System
system diagnostic, or create a custom one with the counters Diagnostics, and System Performance.
you want. −−Will create a report you can open in the interface.
−−Logs information to disk (defined by you).
+1.800.360.7839
info@column5.com
www.column5.com
−−The page file should not reside on the C or program files drive.
If different from C, it should be on its own.
−−You can open task manager and add a few columns to the
Processes tab.
+1.800.360.7839
info@column5.com
www.column5.com
By definition, the database on BPC Microsoft is Microsoft SQL Server. Like all relational databases, indexes on SQL Server
tables can significantly and positively affect performance. BPC has specific indexes built into the product that cannot be
changed except for DimsForFactTblIndex and CustomFactTblIndex. (See details below.) You may add indexes to tables
to make queries more efficient; each time an application or dimension is processed, however, the indexes will be rebuilt
to the default parameters.
The two custom tables that should be adjusted to optimize indexes that are built. DimsForFactTblIndex can be found on
the Web Admin page under the application parameters link. CustomFactTblIndex can be added to the Web Admin page
under application parameters. The Fact and Fac2 tables use a clustered index, while the write-back table uses a composite
index. The default fields and order of the fields for the index are Category, Time, Entity, Account, and RptCurrency. These
should be changed to match the dimensions in the fact tables unique to your solution. We find usually the best index is all
columns, but the order is the most important piece.
With SQL Server’s Database Tuning Advisor, you can run the utility during a send, DTS package, or any other BPC process.
Once the process finishes, you can run a report that will tell you where SQL Server thinks indexes would be best. This can
include temp tables, which may be created during SSIS packages or Logic.
Important: Column5 has seen better performance when creating partitions manually vs. using the wizard. The most
important piece is to create all partitions first before processing the cube/model.
We also need to think about “data density” when talking about partitioning. We have seen the best performance when
the partitions contain a similar number of records in the “Select” statement. In other words, you do not want one partition
to have 20 million records and another to have 5 million.
+1.800.360.7839
info@column5.com
www.column5.com
−−Windows on C:\
−−SQL Programs on D:\
−−Analysis Services Programs on E:\
−−System SQL Database (mdf) on F:\
−−System SQL Logs (ldf) on G:\
Simulated Server Load
−−OLAP Data on H:\
−−Temp DB Database (mdf) on I:\ HP Load Runner is a performance scaling tool that starts
−−Temp DB logs (ldf) on J:\ with a recording of a task (or series of tasks) on the client
−−User SQL Database (mdf) on K:\ side and converts it into a simulated load on various
components that Load Runner can understand. You
−−User SQL Logs (ldf) on L:\
then simulate the effect of many users simultaneously
−−Database Backups on M:\ in the system doing specific processes. At Column5,
our procedure is to look at performance during this
simulation, improve it, then run the simulation again to
It should be noted with the significant proliferation see the gains. This is an iterative process and may need
of VM’s, specifying separate LUNs on a SAN is not to be run 5–10 times to achieve the best performance.
possible. (VMWare only allows one connection to a SAN,
for instance, in some cases.) You should think of VM’s as While this is the most complete way to get the best
writing data to disk in the least efficient way. The use of performance, it is also the most expensive because of the
a product like Condusiv V-Locity or others will improve time involved. Due to Column5’s significant experience
SQL write/read performance by about 50%, based on with Load Runner, we have developed a way to compress
our testing. That may not equate to making the overall the process and reduce the expense as much as possible.
BPC performance 50% faster, because disk IO is only
one part of the equation.
»» Load Runner Free can be used for 50 users or fewer.
»» Note: Column5 has extensive documentation on using
the tool and setup and can assist with load setup and
performance tuning. Contact Column5 for details.
+1.800.360.7839
info@column5.com
www.column5.com
BPC has a reputation for being more complex than other solutions, but this is based
Servers are sophisticated technology that by definition influence every user’s solution experience, thus it is vital to get the
on confusion
server configured aboutefficiency
with as much the configuration
as possible. requirements. In some
BPC has a reputation cases,
for being IT complex
more departments are solutions,
than other
but this is based on confusion about the configuration requirements. In some cases, IT departments are afraid to touch the
afraid to touch the server and once it is working, leave the servers alone. Sometimes we
server and once it is working, leave the servers alone. Sometimes we find clients with servers that have not been updated
at all for several years. with servers that have not been updated at all for several years.
find clients
As should be obvious, servers for BPC are really no different than servers that support other applications. Clients hosting
their own servers on premise
As should should
be obvious, make an
servers forinvestment to getno
BPC are really the right skills
different than and knowledge
servers in house other
that support to support BPC
further. Alternatively, if configuration and maintenance of these vital servers is not a service internal IT groups are willing
to take on, applications. ClientsServices
Hosting and Managed hostingcan
their
be own servers
procured on premise
from qualified thirdshould make
parties like an investment
Column5.
to get the right skills and knowledge in house to support BPC further. Alternatively, if
configuration and maintenance of these vital servers is not a service internal IT groups
are willing to take on, Hosting and Managed Services can be procured from qualified
third parties like Column5.
+1.800.360.7839
info@column5.com
www.column5.com
Driving the best performance from EPM isn’t a one-and-done process. The system itself and the functions used by finance
change all the time, so monitoring and maintenance must be incorporated into a regularly scheduled strategy. For example,
Column5 performs the necessary steps monthly during the busiest system times as part of the contract for our hosting
clients.
There is no one magic bullet when it comes to performance. Every part of the system plays a role, from technical setup/
configuration to functional aspects such as the best use of logic or report/input schedule building. (Stated differently, you
can build out the most efficient technical system on the planet, but if someone creates terrible logic, that system will still
struggle to perform.)
Looking at performance holistically, from a technical and functional perspective as well at the strategic intent of the solution
– across server and client layers - is the most effective way to achieve the speed, stability, and reliability you want from
your EPM solution. Not only will that improve satisfaction and drive adoption at the user level, it will help your organization
derive full value from your system in its current form and create opportunities to leverage it for future processes.
At Column5, we built our business and reputation on success with EPM, and we want to help
your organization adopt a high value EPM capability. For more information on BPC, EPM, and
related topics, connect with us today on Column5.com.
+1.800.360.7839
info@column5.com
www.column5.com