MapForce vs. Talend Open Studio - etl

We have been using Talend 3.1 for a few months now. However, we are looking at possibly switching to the latest MapForce. Simply because it compiles to a .Net solution and we are otherwise a .Net house. That being said Talend is extremely easy to use and extend. The Talend jobs make it very easy for new developers to understand the job and modify existing issues. There does seem to be a general feeling of buggyness with Talend (eg slow responsiveness in the UI and some strange behavior).
If you have worked with one or both can I get your opinion on how they match up?
Thanks

With Talend's acquisition of Sopera, Talend now has a tight integration with an ESB product stack which is very light weight. Among other things, the ESB includes a first class integration based on services implemented with .NET WCF. So if you are looking to integrate data / web services in .NET but enjoy the simplicity of the Talend UI (which can be slow because of Eclipse), then I would try the new product integration with Talend ASF / ESB.
Caveat, I am a Talend employee, but I hope this note is sufficiently objective and factual.

If you intend to use MapForce for integration work you will need the FlowForce server and MapForce server besides MapForce.
Minimally you could use MapForce and the MapForce server. Compile the Mapping to a MapForce Server Execution File and then run it with the tool of your choice.

Related

Can we compare saiku with Pentaho Analyzer?

I'm currently in an internship and i have to create a whole BI application.
I think i'll use pentaho, and I have to use just open source component.
I know that Pentaho Analyzer is not free
My question is: Is saiku an equivalent of analyzer?
If yes, can I use it with pentaho instead of analyzer?
thks
I'm the developer of Pivot4J project and want to share my (subjective) opinion on the subject.
First, as though you righteously assumed Pivot4J to be more of an API than an application, it does not always mean you need to write lot of code to use it.
We also have a Pentaho BI plugin which does not require any coding and has comparable features to Saiku plugin, though it's targeted toward the yet unreleased Pentaho 5.0 platform.
And our sample application provides most of the functionalities that JPivot web application has, even though it lacks a data source configuration feature which will be soon to be fixed.
Compared to Saiku, I think each project has its own advantage in different scenarios.
Saiku has a much lightweight architecture on the client side than our sample application and the plugin, so it can be deployed and embedded virtually anywhere.
While it's not much difficult to create a full REST style analytic application with Pivot4J, our current sample and plugin applications require at least a Servlet container to run and are more difficult to be embeded than Saiku in certain environment.
On the other hand, as Pivot4J is designed to be UI independent API from the start, it could provide more flexibility than Saiku in my opinion to developers when they want to build their own application on top of it, or intend to customize core behaviors of the API.
For example, if you want to use Pivot4J with your own application which is build with ExtJS, DhtmlX, or any other UI toolkits, it'd be much easier to achieve a seamless integration with Pivot4J, as it provides you with convenient abstract extension points to do that.
Finally, if you're familiar with Javascript you might find working with Saiku easier as it delegates most of the UI related works to the client side.
On the other hand, if you're an old school Java developer like me :) you might find our sample application to be easier to understand and work with, as there's virtually no custom script involved and everything is done on the server side with JSF component model.
To conclude, I'd like to say that Pivot4J is not just an API which cannot be used without writing much codes as it already includes quite feature complete Pentaho BI plugin for the upcoming 5.0 release of the platform. And as Pivot4J and Saiku take rather different approach from each other, each has its own strength and advantage which could be leveraged to suit the specific use case.
Yes of course. Both the tools use the same underlying OLAP engine - Mondrian. Saiku is essentially the same as analyzer providing many of the same features - however it has a different architecture which additionally makes it very embeddable and pluggable. Plus Saiku can be used standalone too if you want to.
Check out the demo at dev.analytical-labs.com to see what it can do.
Also for help you wont find many tools with such a great community - hook up with them on Freenode IRC at either ##Pentaho or ##Saiku depending on your questions!
Pentaho is the right choice for OS BI too - Presume you looked at Jaspersoft as well? Worth a look but you'll no doubt realise the features are better in Pentaho.
Have you think about a pure javascript UI to pivot your olap cubes? There is one such component calls WebPivotTable at http://webpivottable.com
Jpivot, saiku and pentaho are all based on olap4j API so that they all need a java server side service. WebPivotTable use AJAX call to xmla service directly so that it can be used to pivot any xmla OLAP server, like mondrian, SSAS, iccube. Since it doesn't tie up with any java back end and also it is pure javascript based, you can easily integrate it into any website or web application.

What features of Rational Application Developer for WebSphere make you the most productive

I am mainly interested in the 'integration features' between the IDE and the application server.
One example would be GUI editors for various server specific deployment descriptors.
Another example, from the NetBeans IDE integration with GlassFish, is the ability to:
edit a java file that is part of a
web application,
save the file and
see the effect of the change that you
just saved in the browser (without a
bunch of reloading).
Please include a link to any reference to the feature in user docs, if you have it at the tips of your fingers.
Over my years using RAD, the feature I'd recommend everybody to use would be its uninstaller...
Seriously though, RAD's advantage used to be IBM's plugins for Web / J2EE development; over the years, though, the Eclipse community has been making great progress with WTP and JST, so for most J2EE development you should do fine using Eclipse+WTP+JST... which are free (comparing RAD with 5-10K USD licensing fees. Per machine, that is).
One person suggested that the 'Web site navigation' tooling was useful.

Where does Oracle ADF 11g stands among Java EE Frameworks?

This is a two part question:
I would like to know where does Oracle ADF 11g stand as a framework to develop / deploy Web / Java EE Applications as compared to other frameworks.
How much is Oracle ADF being used as a framework to Develop Web Applications.
I am asking from a perspective that whether or not there are good job opportunities as an Oracle ADF Developer and what the future looks like for those holding Oracle ADF skills.
Also as Oracle plans to use ADF as core technology for Fusion Applications, Is it good time to build Oracle ADF skills as a siebel developer? As the future Oracle CRM Applications like ERP, SCM will be based on ADF should developers start building ADF skills. Around when will customers start implementing those applications based on ADF. Will these be available On Premise or mostly On Demand in SaaS way.
We have chosen Oracle ADF in our company for one of our projects. Sadly, this proved to be a big mistake. I personally have used Oracle products, in particular their DB, but as far as fusion middleware is concerned, I would advise you to stay away from it. ADF was by far the worst framework I have ever used as an architect. Some of its features I noticed are: very complex, Oracle just "invents" or forces some development approaches that have been proven as a bad practice by the Java community years ago. ADF is very slow compared to other frameworks. With being slow I mean ADF pages run slow. The reason for this is extremely complex generated html and javascript. You can check this by opening up Firebug and inspecting the generated html...it looks like something from the 90s...Terrible. Not to be overly pedantic, but ADF pages have huge amounts of validation errors causing problems in making them run on all browsers. The architecture of ADF is, in my view, messy. Struts2 for example is a much cleaner framework which makes it very easy to integrate it with 3rd party libraries such jQuery, etc. Oracle advocates ADF as an MVC framework but frankly I failed to see the actual MVC architecture there.
ADF uses its own javascript libraries, which are huge, practically impossible to modify, unoptimized and slow in comparison to others such as jQuery or Prototype. The emerging trends in J2EE are lightweight pluggable frameworks that are easily integrated with other tools such a Spring for managing dependencies, jQuery for scripting, CC for continuous integration. ADF is a heavy-weight tightly-integrated framework with other ORacle tools, which makes it very difficult to use it any other way than Oracle devised.
Not to mention the development tools that you are forced to used when developing ADF - the JDeveloper which is very buggy and crashes regularly. Developing in Eclipse is problematic, because ADF has numerous "specific" files which JDeveloper generates automatically.
All in all...ADF was a huge disappointment for us. We spent months messing with it, when finally our client decided the application was too slow and difficult for them to support it and the cancelled it altogether.
Based on my experience i can only say stay away from it. Choose one of the more supported and architecturally clean solutions such as Struts2 or Spring.
I have used JDeveloper 10 and 11, both with ADF, on two enterprise ADF projects for a prominent defense contractor. I agree that ADF is complex, but disagree that JDev crashes frequently, or that the pages are slow to render.
Now... why ADF? Read Oracle's synopsis below, stating that JDeveloper and ADF make Java EE development more accessible to "business" programmers. While this does not guarantee elegant programs, it does almost certainly guarantee that, when these developers get into trouble with ADF, they will probably be utterly lost and will have little idea how to open the hood and reach inside. Conversely, they would be lost even sooner trying to integrate the current J2EE open-source cornucopia.
THE SERMON
Source: ADF Developer's guide (paraphrased)
"Since the early Java days in the late 1990's , the Jave enterprise platform has grown massively and today is used by a large community of developers. However, the developer community is not homogenous and includes developers who are not expert Java programmers, but are business developers who have core competencies in their industries. As the Java EE platform and community grows, the average programmer skill level is declining.
It's hard to imagine that there is a single developer who understands all aspects of the Java EE platform in depth. The problem to address in Java EE is to provide a technology that empowers developers to build cutting edge web and SOA app's without limiting their agility.
Existing Java frameworks such as Struts, Spring, JSF, EJB, GWT, etc are blankets pulled over areas of complexity that expose simpler controls to work with. Using frameworks, developers no longer work with the java core API's but instead interact with interfaces and services exposed by the framework.
Blah, blah, blah...
What seems a small problem for experienced java developers is another hurdle for business developers who are new to java and EE development. This type of developer may turn to a a single dev environment promising integration of all aspects of app development in a single technology chouice. Developers from a 4GL desktop dev background might be attracted by PLSQL, .NET, Adobe Flash.
An experienced Java developer might see this a a big mistake, but how would those developers know, unless Java too provides a single solution for them? The solution is an end-to-end framework which pulls another blanket over the technologies, one that combines different framewokrs and technologies into a single product that exposes visual and declarative development gestures as it's predominant programming methodology... ADF."
I have been working with ADF since last 6 months, and i realise that ADF is made particularly large application with strong database integration. I haven't seen any other Framework which can provide you with so fast and easy development of database rich applications.
Yes i agree that it have some bugs, but still it works well if you know how to work with it.
My perception of and experience with ADF is that it is a very solid and robust framework (unfortunately, the development tools are not.) I'm not sure there's much competition to it, at least, not from a single framework. ADF itself is really several different frameworks combined over the years into a mostly cohesive product. Now that Oracle owns Java, i really expect (hope) parts/much of ADF finds its way into Java EE-proper so we can maybe see alternative implementations and better development tools. If that were to happen, it'd pretty well solidify ADF's future (as long as Oracle doesn't screw the Java community in the meantime and push them to alternative VM platforms).
If you are already familiar with or want to work with Oracle(-related) products, ADF is what you want. Given the market penetration of Oracle, it's probably a reasonable bet that they'll remain dominant and your skills will remain marketable for years to come. Oracle is spending lots of money and acquiring lots of companies to try to own and retain the enterprise.
The SaaS question, to me, is a little harder to answer. While it does seem to be moving in that direction, it's not clear to me if it's mostly marketing's attempt to give it that push or if business-need is driving it. And there are lots of questions i don't really track such as business trust of the cloud for critical data and reliability.
Short answer:
You developing Enterpise solution, your product vendor is Oracle - ADF is a best choice
You indie developer, your solution is not for enterprise, you not going to use other products in the Oracle stack - ADF is not for you, look for another framework.
Long answer:
If you going to Enterprise, if your general product's stack vendor is Oracle. Your best choise is to go along with ADF. ADF becomes better with each major release. I've started using ADF since 11.1.1.2, had a look at 10.x and now using 12.1.3, while still supporting large enterprise applications on 11.1.1.6.
I see a huge improvement and its really hard to find another product that provide better integration and support for whole Oracle stack.
However, if you quite familiar with other framework or/and not going to use other Oracle products and/or your customers can't afford to pay quite a lot for ADF/Weblogic/DB/ECM etc.. - your best choise is to avoid ADF. Its good for large enterprise solutions.
Yes, in fact actually you can develop using free and limited version of ADF - Essentials, use other app server as tomcat or glassfish, but you'll be better off with the other framework. ADF Essentials is only kickstart to large enterprise world, not a solution for small lightweight application.
Development in ADF is a pain in the heart. For a newcomer, the learning curve is too steep. I wish it could be more like learning dot NET.
From my perspective, learning and constructing a functionality in dot NET takes a quarter of the time to do the same in ADF. Of course, it imbalance reduces as a person learns along, but that's pretty much the scenario for beginners. It's frustrating.
I have been working with ADF since last 3 months, and i can tell you that ADF is a really suitable for situations which is essential to provide fast development process for large enterprise applications with strong database integration.
Compairing to other JavaEE framworks like Spring,
It is extremely complex when fixing bugs becasue of the architechtur of the ADF and lack of dev community relative to Spring. Spring has large development community
around the framework.
It is hard to impliment MVC architecture with the ADF inter component integrations.
Spring Developers have much more reputation and demand compared to ADF developers.
ADF is very slow, heavy-weight, tightly-coupled compared to Spring and integrated framework with Oracle tools.
Hope this will help you to solve your problem and gain your knowledge. Happy coding!!!

Application development with Rational ClearQuest

Has anyone had experience with developing web apps using ClearQuest? Looking at the features, it mentions process automation but I'm not sure how large of a process/application it can support. Our group gave up a small section of a larger application to another group that used ClearQuest to web-enabled the process but now the ClearQuest tools are being pushed on us to web-enable the entire application. I have a ASP.NET background but ClearQuest is very wizard like and the only code that I've seen is called "BASIC" and it looks a lot like VBScript.
Clearcase/Clearquest has decent integration with Rational Applicaiton Developer. I am not sure if you arsking about its strenghts or actually exposing ClearQuest to the web. You can do the obligatory and lame activity of writing CGI/PERL scripts to expose some of the features to the web. You can use perl or VBScript to write CC/CQ hooks. It has its own perl build included in the product called ratperl. It has fantastic command line support but it comes at a price of complexity. CC/CQ is very powerful provided you think about the implementation in your organization very carefully. It can support very powerful work flows and is highly customizable.
There are several APIs which allow you to do what you want, write a WebApp.
CQWeb itself is built using the CM API, which allows a Java application (web or non-web) to be build. A tutorial is here:
http://www.ibm.com/support/knowledgecenter/SSSH5A_9.0.0/com.ibm.rational.team_api_cq_tut.doc/topics/teamapi_cq_abstract.htm
You could implement a basic web application using perl-CGI, since CQ has a Perl API.
You can write an ASP/C# web application because ClearQuest has a OLE (Visual Basic) API. The original ClearQuest Web application was built using the Visual Basic API
So the answer is yes, it is possible.
Wouldn't it be nice it supported a JavaScript API? Then we could write nodeJS CQ applications.
Sure it's possible, for a VS style integration I would either wrap the cqole.dll or use the OSLC connectors to get access to the RESTful interface. While the cqole is the C++ API and it is not officially supported this will suite you better than trying to implement this with the VBScript API. If you are more comfortable with just using the web services I would check out jazz.net where the wiki explains the bridge in gory details.
You dont exactly develop webapp with ClearQuest, CQ is only a process automation tool that build on logic and state transitions, and the interactions are scripted in either VBScript or Perl.
However do note that it has always been a pain to manage CQ codes as the "Designer" itself is a completely broken tool. It supports version tracking but doesnt tell u the difference between versions. The built-in code editor doesnt have syntax highligting, and it doesnt support parallel development. I can go on and on.
In the later versions, (version 7 onwards I supposed), CQ comes with eclipse based client AND designer tools, which supposedly enhance the whole experience. But I dont have too much experience with it to comment.
As for the web component, it runs on the websphere layer and simply is a application/presentation layer for users to access CQ through a HTTP protocol. It has 90% of the features of a full CQ client, and is usually easier to maintain and deploy to a wide user group.
Check out http://open-services.net/ for information on development using Open Services for Lifecycle Collaboration.

Excel report framework

Is there any Excel report framework available? We need to export some of the reports into Excel format. Our application is java application hence anything supporting java would be great. I have tried Apache POI API, however that is not good enough. Any framework based on Windows API would be better.
SQL Server Reporting Services has options to export to Excel.
FYI, JasperReports uses POI for Excel-conversion.
Can you elaborate on what you don't like about Apache POI? I've been using POI for years now and haven't found anything that it couldn't do with a tweak here or there or taking an creative approach. IMHO, it's the best open-source (and free) Excel generation/reporting framework out there.
If you are willing to pay money, then Actuate has probably the best solution. Actuate's e.Spreadsheet Engine and the Excel API, you can read, write, modify and generate entire spreadsheets or parts of spreadsheets. I've used it and their API is richer and simpler then POI. POI, while powerful feels like an API that's grown up over time and has many developers involved in creating functionality and patches.
Try xlsgen, supports Java (but can only run under Windows).
Why is poi not good enough for you?
An alternative might be jasper reports. I've used this instead of poi a couple of times and the experience was pleasant.
You can also try jxl, but honestly it's API is more confusing than POI.
Xylophone is LGPL Java library and command line utility that uses Apache POI, but mitigates most of its drawbacks.
It consumes data in XML format, spreadsheet templates in XLS(X) format and makes producing of complex Excel reports more fun. You can read about it in this post. Because of licensing and security issues this must be better choice for Java backend than Windows API.

Resources