Presenter: Paul Dayan
Task: Upgrade with minimal downtime
Approach: Provide examples of planning minimal-downtime upgrades from a variety of starting scenarios

 

When upgrading Caché, Ensemble or your application on your business-critical system, you want zero or minimum downtime. This session explores the problems and options when upgrading, and how mirroring can reduce or eliminate business disruption, with practical steps and a demonstration.

 

Content related to this session, including slides, video and additional learning content can be found here.

0 0
0 141

Presenter: Mark Bolinsky
Task: Decide whether a converged infrastructure is ideal for your enterprise applications
Approach: Discuss best practices and provide guidance on the right questions to ask
 

The traditional use of “SAN storage” is no longer the only choice for deploying enterprise application. Software defined data centers are making inroads into enterprise data centers, and there is good reason for it. There is the potential for significant infrastructure cost savings, architecture simplification, reduced administration costs, and depending on the configuration - even better performance. This session will discuss some best practices and outline decision guidance to help you ask the right questions when considering hyper-converged architectures.

 

Content related to this session, including slides, video and additional learning content can be found here.

0 0
0 241

Presenter: Murray Oldfield
Task: Avoid bottlenecks caused by scaling up, before they become a problem
Approach: Discuss what operating system and InterSystems metrics you should look at and how to interpret them
 

Systems behave differently when database activity scales up. In the worst case, bottlenecks appear and users are impacted. This session shows you which operating system and InterSystems metrics you should be looking at and how to interpret them so you can head off bottlenecks before they impact users. This sessions also shows strategies for planning infrastructure taking into consideration InterSystems' data platforms requirements.

 

Content related to this session, including slides, video and additional learning content can be found here.

0 0
0 311

Presenter: Murray Oldfield
Task: Deploy applications based on InterSystems’ technology using VMware.
Approach: Provide a checklist of factors to consider, particularly when deploying a production database application that requires high availability
 

Are you ready to deploy your applications on a virtualized architecture? This talk will highlight what you need to plan and do when deploying applications built on ISC data platforms using VMware. Special focus on what you need to know when planning for highly available (HA) production database applications.

 

Content related to this session, including slides, video and additional learning content can be found here.

0 0
0 295

Presenter: Stefan Wittmann
Task: Take advantage of the NoSQL paradigm without adding another tool
Approach: Provide sample use cases that are an excellent fit for InterSystems’ new document data model
 

Description: Designing applications always requires you to make assumptions about your data model. Come to this session to learn how you can effectively handle the cases where you have to rapidly evolve your model. We will also discuss other use cases that are an awesome fit for the flexible document data model.

Problem: I’ve observed the NoSQL landscape and like the direction, but I have no use-case that fits and I do not want to add yet another tool.

Solution: InterSystems now has support for a well integrated document data model that brings the NoSQL paradigm to the enterprise within your current stack.

 

Content related to this session, including slides, video and additional learning content can be found here.

0 0
0 230
Article
Steve Brunner · Apr 4, 2016 1m read
2015.2.3 Maintenance Release

I am pleased to announce that Caché and Ensemble 2015.2.3 are now available as maintenance releases.
For a complete list of the corrections in 2015.2.3, please review the release notes.

Caché and Ensemble 2015.2.3 are available now for the same platforms as 2015.2.2

The complete set of supported platforms, including specific point releases and/or patches, is detailed in the Supported Platforms document.

2 0
0 457


Hello!

This article is a small overview of a tool that helps to understand classes and their structure inside the InterSystems products: from IRIS to Caché, Ensemble, HealthShare.

In short, it visualizes a class or an entire package, shows the relations between classes and provides all the possible information to developers and team leads without making them go to Studio and examine the code there.

If you are learning InterSystems products, reviewing projects a lot or just interested in something new in InterSystems Technology solutions — you are more than welcome to read the overview of ObjectScript Class Explorer!

19 35
2 4,787

A short post for now to answer a question that came up. In post two of this series I included graphs of performance data extracted from pButtons. I was asked off-line if there is a quicker way than cut/paste to extract metrics for mgstat etc from a pButtons .html file for easy charting in Excel.

See: - Part 2 - Looking at the metrics we collected

7 2
0 1,258

If you are waiting for the Kindle Edition of Caché and MUMPS – Part II, I must apologize. I believed what others told me that once I have a book manuscript, the Kindle manuscript will be easy. Being a programmer I should have remembered: "never assume anything." The conversion to Kindle is proving a much bigger task than I thought. But don't lose heart, I am working full time on it. I have as my goal before May 1st. But, then again, you know what they say about goals. ;) - - Paul Mike Kadow

1 0
0 279

This week I am going to look at CPU, one of the primary hardware food groups :) A customer asked me to advise on the following scenario; Their production servers are approaching end of life and its time for a hardware refresh. They are also thinking of consolidating servers by virtualising and want to right-size capacity either bare-metal or virtualized. Today we will look at CPU, in later posts I will explain the approach for right-sizing other key food groups - memory and IO.

So the questions are:

14 10
2 4,102
Article
Ron Sweeney · Mar 24, 2016 3m read
HealthShare 2 Slack Business Operation

This will be a stretch to be useful, but it was sorta fun.  If you just so happen to have a use case to make your HealthShare productions talk to a Slack channel, this is the Business Operation for you.

In Slack, it is a dead simple process to enable an incoming web hook:

  • Name It
  • Give it an Icon or Emoji
  • Declare a Channel to Interact With

One you supplies those, it spits out a URL that you can go to town posting to your channel using that endpoint.

8 3
0 538

++ Update: August 1, 2018

The use of the InterSystems Virtual IP (VIP) address built-in to Caché database mirroring has certain limitations. In particular, it can only be used when mirror members reside the same network subnet. When multiple data centers are used, network subnets are not often “stretched” beyond the physical data center due to added network complexity (more detailed discussion here). For similar reasons, Virtual IP is often not usable when the database is hosted in the cloud.

Network traffic management appliances such as load balancers (physical or virtual) can be used to achieve the same level of transparency, presenting a single address to the client applications or devices. The network traffic manager automatically redirects clients to the current mirror primary’s real IP address. The automation is intended to meet the needs of both HA failover and DR promotion following a disaster. 

13 12
2 4,429

Prompted by the words Rick didn't actually say to his pianist in Casablanca, I want to draw attention to the the "Resend" button at the top of the Ensemble Message Viewer.

It's pretty easy to use. Find the message or messages you want to resend, set the associated selection checkbox(es), then click the button.

3 3
0 644
Article
John Murray · Mar 15, 2016 1m read
Code metrics over time

Among the outputs of our Yuzinji tool are two code metrics that it can be interesting to track over time as a development project proceeds. These are Size and XS. The first is fairly straightforward. As you write more code the size of your codebase increases. The XS metric (pronounced "excess") aims to quantify excessive structural complexity.

1 3
0 229

The DeepSee Shell Best Practices Series - Example of using the MDX subquery flag in the DeepSee Shell

We have different flags for DeepSee advisors to look into the execution details and the methods DeepSee is using to do calculations.

flag [flagname] [on|off] – Turn a diagnostic on or off.

flag cmbr on|off – Show current member processing.

flag compound on|off – Show rewrite of compound queries.

2 0
0 383

The DeepSee Shell best Practices Series - Execute an MDX query in the DeepSee Shell with/without  results cache

This cache is different from cache reset. Cache reset clears everything in the namespace but “cache off” only clears the cache in ^DeepSee.Cache.Results and ^DeepSee.Cache.Axis global node for the corresponding cube. The difference is quite smaller in the case as below, but in some cases it can be a big difference.

2 0
0 276
Article
John Murray · Mar 14, 2016 3m read
Source control and the production class

When you create an Ensemble production your namespace acquires a new class definition. For example here is what the class that defines the Demo.Loan.BankUSProduction production in the ENSDEMO namespace looks like when opened in Studio:

2 3
0 541

If I have defined a class query in one of my classes and I want to use that query from a method of another class, what are the pros and cons of using the %SQL.Statement interface versus the %Library.ResultSet interface?

I believe %SQL.Statement is the newer interface.

So if the old way is:

USER>s rs=##class(%Library.ResultSet).%New("%Library.File:FileSet")
 
USER>s sc=rs.Execute("c:\s\","*.txt")
 
USER>w sc
1
USER>while rs.%Next() {w !,rs.Data("Name")}

...

then the new way is:

2 12
0 1,348

In this posting I want to raise the profile of a feature that arrived in 2009.1 but is perhaps not very well known.

It is sometimes useful to make certain packages, globals or routines available to all of your namespaces. Of course you can add the necessary mappings whenever you create a new namespace, but here's a simpler way.

6 6
0 1,057