ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » ESQL to Java conversion

Post new topic  Reply to topic Goto page Previous  1, 2, 3, 4, 5, 6  Next
 ESQL to Java conversion « View previous topic :: View next topic » 
Author Message
joebuckeye
PostPosted: Fri Feb 24, 2012 6:45 am    Post subject: Reply with quote

Partisan

Joined: 24 Aug 2007
Posts: 364
Location: Columbus, OH

lancelotlinc wrote:
There was a time in recent history that freshers were responsible to train themselves in a career of their choosing. Some people borrow money on student loans to gain a career. Other people join the military to get essential training.

Why do you say it is not the fresher's responsibility to train themselves?


I'm not familiar with the term 'fresher' but it sounds like some who just left school and is entering the workforce.

So 'freshers' should go to IBM training and pay for it on their own? Ridiculous.

If your employer hired you based on your current skill set why should they expect you to do something outside that skill set without them preparing you for it?
Back to top
View user's profile Send private message
mqjeff
PostPosted: Fri Feb 24, 2012 6:46 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

joebuckeye wrote:
If your employer hired you based on your current skill set why should they expect you to do something outside that skill set without them preparing you for it?

Because it's cheaper to make up for failure than prepare for success.
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Fri Feb 24, 2012 6:51 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

joebuckeye wrote:
lancelotlinc wrote:
There was a time in recent history that freshers were responsible to train themselves in a career of their choosing. Some people borrow money on student loans to gain a career. Other people join the military to get essential training.

Why do you say it is not the fresher's responsibility to train themselves?


I'm not familiar with the term 'fresher' but it sounds like some who just left school and is entering the workforce.

So 'freshers' should go to IBM training and pay for it on their own? Ridiculous.

If your employer hired you based on your current skill set why should they expect you to do something outside that skill set without them preparing you for it?


Freshers should start with a beginner skillset. Java, Basic, C, C++, Cobol, RPG, PHP. After some time, they could learn more complex skillsets like WAS, WMB, WPS, SOA.

What kind of tabackee you got there, Joe?
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
joebuckeye
PostPosted: Fri Feb 24, 2012 6:58 am    Post subject: Reply with quote

Partisan

Joined: 24 Aug 2007
Posts: 364
Location: Columbus, OH

lancelotlinc wrote:
What kind of tabackee you got there, Joe?


It's a buckeye leaf.

The Ohio State University (my alma mater) is known as the Buckeyes (from a tree that grows in the state).

A sticker of the leaf is given to football players for good plays and they put them on their helmets. Good players can almost cover their helmets in the stickers.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Fri Feb 24, 2012 7:00 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

joebuckeye wrote:
lancelotlinc wrote:
What kind of tabackee you got there, Joe?


It's a buckeye leaf.

I like the chocolate buckeyes better.
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Fri Feb 24, 2012 7:04 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

In the 1970s, my cousins lived in Coshocton, OH. I would spend the summers with them. Roscoe Village always had "Centennial" days. The movie "Centennial" was also filmed there. Lots of BBQ Sweet corn, yummy. And girls dressed in 1700s attire also yummy!

http://www.imdb.com/title/tt0076993/locations
http://blogs.dixcdn.com/woolgathering/?p=1366
http://blogs.dixcdn.com/woolgathering/?p=1255

We always heard a saying there that related to a small technical school: "Tindale Tech Turtles, slow and confused."
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
fjb_saper
PostPosted: Sat Feb 25, 2012 4:52 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20696
Location: LI,NY

And you mean to say you did not add a link to a picture of those girls dressed in 1700's attire ???
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
rekarm01
PostPosted: Sun Feb 26, 2012 2:40 pm    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 1415

rekarm01 wrote:
Code:
CREATE FUNCTION median(IN REFERENCE sortedData) RETURNS INTEGER
BEGIN
    DECLARE N INTEGER CARDINALITY(sortedData.value[]);
    RETURN sortedData.value[N/2];
END;

mqsiuser wrote:
Probably in another place you go through this list anyway... put in the extraction of the median there ("between the lines")... ugly code, but better performance.

Thought when I look twice... thats awkward what you do there, why would you need that? The right answer to you particular questions is: This is a pathological example (an example that does not (or only rarly) apply).

This was just a counter-example. The broader question is what to do when a compute node doesn't need to "go through this list anyway". If it only needs to count the elements in an array, or access a single element, then there's no performance gain from using references/MOVE() instead of CARDINALITY()/index.

mqsiuser wrote:
Exceptions/Exemptions always also apply... I should have stated that !!! To all your/my examples !!!

I might also be totally wrong. Then just disprove and we all know better !!!

It's not that the given rules were totally wrong, but that they seemed to be missing a followup explanation as to why developers should bother to follow them, or what exceptions/exemptions might apply.
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Mon Feb 27, 2012 5:30 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

fjb_saper wrote:
And you mean to say you did not add a link to a picture of those girls dressed in 1700's attire ???


I was just getting to that when Sir Vitor chastised me for being too verbose with my answers. Merry maids has nothing on those girls.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
Vitor
PostPosted: Mon Feb 27, 2012 5:33 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

mqsiuser wrote:
Vitor wrote:
Before anyone rebutts with "but look at the money they're wasting on a WMB license if they don't exploit it", remember the project teams doing the development typically do not pay for that license and hence are not wasting a cent. They're saving money by not paying for training which would come out of a project's budget.

I was assuming different (see one of my posts earlier).


Case in point referenced here
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
mqsiuser
PostPosted: Mon Feb 27, 2012 6:39 am    Post subject: Reply with quote

Yatiri

Joined: 15 Apr 2008
Posts: 637
Location: Germany

Thanks for clarifying rekarm01 and for helping me out on your "counter"-example (it's been a miracle to me ).

rekarm01 wrote:
The broader question is what to do when a compute node doesn't need to "go through this list anyway". If it only needs to count the elements in an array, or access a single element, then there's no performance gain from using references/MOVE() instead of CARDINALITY()/index.


So, it's just that CARDINALITY and index (myList.element[8]) is probably more like "provided for convenience-use" (within Broker). I'd even say: If they'd be missing you could write your own ESQL-Snippets (using ESQL and references) and be happy (likely even equalling the performance of native CARDINALITY()/indexing). Performance-wise my impression was/is that CARDINALITY&index are implemented that way .

CARDINALITY and indexing should not be the standard use (in your code)... though... I guess it often happens that beginners and (Java-)people code with them and screw the performance. Very sad for the fact that Broker is expensive and the money was spent for him to perform incredibly fast.

And ofc. people might even compare other technology based on not well written ESQL.

Also: the Broker-Java must have a lot in common with ESQL. Probably a slight up-tick to code in a familiar language (Java) but there is a need to apply different thought !

And probably be careful with using the xPath that is provided within Broker-Java. It's been just an unlucky coincidence that xPath came up and that Java was put into Broker during the same time-area (I'd wish someone could correct me here, but I fear NO). Taken from Java v.s. ESQL:

mqjeff wrote:
side from that, a bad XPATH expression will ruin performance and potentially hog memory much faster and much worse than a bad ESQL expression.


I need to say it: xPath considered harmful (for performance).... Probably only use a subset of it and indicate your intension(s) to the parser: "myelement[1]" (note: that is not indexing, that is "first child"). Also see XPath expressions impact on WMB message flows performance.
_________________
Just use REFERENCEs
Back to top
View user's profile Send private message
rekarm01
PostPosted: Tue Feb 28, 2012 3:29 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 1415

mqsiuser wrote:
If they'd be missing you could write your own ESQL-Snippets (using ESQL and references) and be happy (likely even equalling the performance of native CARDINALITY()/indexing).

It's likely that the native C++ CARDINALITY()/indexing will still marginally outperform any equivalent ESQL snippets. It's also less prone to errors.

mqsiuser wrote:
CARDINALITY and indexing should not be the standard use (in your code).

... at least not for large arrays.

mqsiuser wrote:
I need to say it: xPath considered harmful (for performance)

That remains to be seen.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Tue Feb 28, 2012 7:02 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

rekarm01 wrote:
mqsiuser wrote:
I need to say it: xPath considered harmful (for performance)

That remains to be seen.


It is much easier to write a badly performant XPath expression than it is to write a badly performant ESQL expression.

And it's relatively easy to write a badly performant ESQL expression - just use [index].
Back to top
View user's profile Send private message
Senthamizh
PostPosted: Tue Feb 28, 2012 9:27 pm    Post subject: Reply with quote

Apprentice

Joined: 21 Dec 2009
Posts: 47

Quote:
mqsiuser wrote:
It does't make sense to change ESQL code to Java.

It does if you are migrating to Broker v8 Express Edition.


I am reading through the new updates in Broker v8, but so far i could not correlate how it makes sense to change the ESQL to Java in Broker v8 Express Edition

Could you provide some light on the same
Back to top
View user's profile Send private message
Esa
PostPosted: Tue Feb 28, 2012 11:38 pm    Post subject: Reply with quote

Grand Master

Joined: 22 May 2008
Posts: 1387
Location: Finland

Express Edition does not have Compute, Filter or Database nodes. This means that you cannot run ESQL on Express Edition. But you have JavaCompute nodes. The same applies to Remote Adapter Deployment mode.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Goto page Previous  1, 2, 3, 4, 5, 6  Next Page 4 of 6

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » ESQL to Java conversion
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.