ECP

Syndicate content 7 

Suppose we need to store millions of values temporarily, that means, we don't care about them if we lose them but our application use them to get realtime information. Should I use Cachetemp or whatever other DB without journaling enabled? If answer is Cachetemp, shouldn't be a problem if we decide to scale using App Server + ECP? I'm not sure what would happen with the app logic in such architecture as I guess I couldn't map and share cachetemp...

Any idea/suggestion?

Last answer 13 February 2019 Last comment 13 February 2019
0   0 3
111

views

0

rating

Hello!

I'm interested to hear if folks have experience using Docker containers with Caché instances using ECP. Wondering if there are any special considerations when setting up a distributed application with multiple containers communicating with ECP. Any input is appreciated!

Last answer 24 August 2018 Last comment 24 August 2018
0   0 4
229

views

0

rating

Last week, we announced the InterSystems IRIS Data Platform, our new and comprehensive platform for all your data endeavours, whether transactional, analytics or both. We've included many of the features our customers know and loved from Caché and Ensemble, but in this article we'll shed a little more light on one of the new capabilities of the platform: SQL Sharding, a powerful new feature in our scalability story.

Last comment 31 January 2018
+ 12   0 8
875

views

+ 12

rating

Hi all,

I have a database with 140 million records containing financial transactions. When I do a query to calculate the sum of those records spanning a number of months it takes around 4 seconds on my database server which seems reasonable. However if I run the same query on an application server it takes around 40 seconds to do the same query.

In just this instance I would like to run that piece of code on the database server instead of the application server. It's a query that is only run a few times a day so I would prefer to have a fast result and don't mind putting a bit more stress on my database server for that.

Last answer 15 December 2017 Last comment 18 December 2017
0   0 1
311

views

0

rating

Hello,

 

I have a DB server (ser-app-db) where cache is installed as server.

I have a Web server (ser-app-w) where cache is installed as web server and configured as CSP gateway.

I followed the configuration guide (https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY...) and ser-app-w perfectly display the CSP and CLS pages.

 

But that's not working for my REST service, for exemple with the REST sample:

http://ser-app-db/csp/samples/docserver/request(GET): work and show the request

http://ser-app-w/csp/samples/docserver/request(GET): return a 404.

 

Can someone help me ?

 

Thanks

 

Sébastien

Last answer 11 August 2017 Last comment 14 August 2017
0   0 2
537

views

0

rating

Hello,

 

I try to create an ECP between to CACHE server.

 

The ECP is working, the remote DB is created and the namespace is created and linked on the remote DB.

 

The table appears on the server but when I try to access I get this message:

ERREUR #5540: SQLCODE : Message 400 : Process 4076 failed to compile Cached Query Class %sqlcq.###.cls6 with these errors: ERREUR #5002: Erreur Cache: <COLLATION NOT SUPPORTED>getdependencyclasses+54^%occDepend SQLTEXT: SELECT ...

My servers have different cache version: 2016.2 and 2015.2, perhaps that's my problem ?

 

Thanks in advance

 

Sébastien

Last answer 25 July 2017 Last comment 25 July 2017
0   0 1
297

views

0

rating

One of the great availability and scaling features of Caché is Enterprise Cache Protocol (ECP). With consideration during application development distributed processing using ECP allows a scale out architecture for Caché applications. Application processing can scale to very high rates from a single application server to the processing power of up to 255 application servers with no application changes.

ECP was used widely for many years in TrakCare deployments I was involved in. A decade ago a 'big' x86 server from one of the major vendors might only have a total of eight cores. For larger deployments ECP was a way to scale out processing on commodity servers rather than a single large and expensive big iron enterprise server. Even the high core count enterprise servers had limits so ECP was also used to scale deployments on them as well

Last comment 8 December 2016
+ 8   0 6
1251

views

+ 8

rating

The technology of load balancing between several servers with relatively low capacity has been a standard feature of Caché for quite a while. It is based on the distributed cache technology called ECP (Enterprise Cache Protocol). ECP provides a host of possibilities for horizontal scaling of an application, and yet keeping the project budget fairly low. Another apparent advantage of ECP network is the possibility to conceal its architecture in the depths of Caché configuration so that applications developed for the traditional (vertical) architecture can be fairly easily migrated to a horizontal ECP environment. The ease of this process is so mesmerizing, that you start wishing it was always this way. For instance, everybody is used to having a possibility to control Caché processes: the $Job system variable and associated classes/functions work magic in skilful hands. Stop, but now processes can end up being on different Caché servers…

This article is about how to gain as much transparency in controlling processes in ECP environment as in traditional (non ECP) one.

Last comment 18 November 2016
+ 4   0 5
810

views

+ 4

rating

Hey guys

We have a need to mount remote databases using ECP, but with the Application servers mounting some of the remote databases as Read Only.  The Data servers will keep them R+W as normal.

From what I can gather this isn't possible using a "Mount Read Only" option, it looks like ECP just inherits the Database servers settings.  My reading seems to require roles/access/permissions to enforce Read Only on these remote mounts.  Does anyone have an easy guide/cheat sheet to set up read only ECP Application server read-only mounting using roles/permissions?  Or an alternative method to achieve the same goal (using ECP, we've ruled out shadowing/mirroring for this specific task)

Cheers

- Dave

Last answer 2 November 2016
0   0 2
0

comments

249

views

0

rating

I saw someone recently refer to ECP as magic. It certainly seems so, and there is a lot of very clever engineering to make it work. But the following sequence of diagrams is a simple view of how data is retrieved and used across a distributed architecture.

For more more on ECP including capacity planning follow this link: Data Platforms and Performance - Part 7 ECP for performance, scalability and availability

To start

  • There are three globals on disk ^A, ^B and ^C.
  • Global ^B equals "B"
  • There is one Data server and two or more Application servers.
  • The diagrams show the cache (global buffers) on each server.

+ 8   0 4
0

comments

485

views

+ 8

rating

Let assume you have a infinitely scaling algorithm implemented in your application, using replication, ECP, or any other means of horizontal scaling, and let assume you know how to run your system under any volume of requests, the trick is to deploy required number of computing nodes in the cluster. If we are talking about cluster of 2-4 nodes your administrator (or as they call it today "devops engineer") will install anything manually. Probably he will easily handle 5 nodes configuration in the cluster. But what if you need to deploy 10, 100, or 200 properly configured, interconnected nodes?

Devops are lazy, if there is some easy way to automate task then they will automate, even if there is need to use newer and fancy tool. [Though requirement here, this new and fancy tool shold be easy to learn: they could spend a couple of hours reading StackOverflow or vendor forums, but certainly have no times for several days. Thus simpler way usually wins

Last answer 18 June 2016 Last comment 17 June 2016
+ 2   0 4
350

views

+ 2

rating