Thursday 23 April 2015

Why LDAP?Why not Database?

I liked the below explanation which I read on why to choose LDAP ..Read and enjoy the concept..

The use model is similar like how people use library cards or phonebooks. When you have a task that requires “write/update once, read/query many times”, you might consider using LDAP. LDAP is designed to provide extremely fast read/query performance for a large scale of dataset. Typically you want to store only a small piece of information for each entry. The add/delete/update performance is relatively slower compared with read/query because the assumption is that you don’t do “update” that often.

Imagine you have a website that has a million registered users with thousands of page requests per second. Without LDAP, every time users click a page, even for static page viewing, you will probably need to interact with your database to validate the user ID and its digital signature for this login session. Obviously, the query to your database for user-validation will become your bottleneck. By using LDAP, you can easily offload the user validation and gain significant performance improvement. Essentially, in this example, LDAP is another optimization layer outside your database to enhance performance, not replacing any database functions.

LDAP is not just for user validation, any task that has the following properties might be a good use case for LDAP:

1) You need to locate ONE piece of data many times and you want it fast

2) You don’t care about the logic and relations between different data

3) You don’t update, add, or delete the data very often

4) The size of each data entry is small

5) You don’t mind having all these small pieces of data at a centralized place
========================================================================
Some Q&A

First Question: Why do we have to use LDAP instead of Database?
LDAP is more of hierarchical and database is relational.
Faster Reads in LDAP and Faster writes in Database.Database can be used to implement the same functionality, only not with the same performance (i.e. not read-optimized).

Second Question: What factors determine to use LDAP over DB and DB over LDAP?
If your application does mostly reads on the information being stored into LDAP/DB and performance is a priority, then LDAP could be considered for its better performance.
On the other hand, if you're out of budget, you may not be able to get the "extra" LDAP server but are forced to stick with the database.

Friday 10 April 2015

Comparison of WMB 5,6,1,7,8,and IIB v9 -quick notes

I have gathered information about the new features introduced in various versions of WMB v5,6,7,8 and IIB9 from various links.Hope this would be useful as quick notes to compare the features between versions of WMB and IIBv9.

Differences between WMB 5 and 6.1 –Particularly talks about whats new  in WMBv6.1

1)                  Reducing the time to get started with Message Broker
2)                  Debugger is attached with the Toolkit. Removal of RAC prerequisite in WMB5.Native debug is introduced.
3)                  Supporting WS-Security and WS-Addressing in Webservices
4)                  Integration with WSRR-Nodes introduced for WSRR are RegistryLookup and EndpointLookup
5)                  Built-in nodes for EIS access: SAP, Siebel and PeopleSoft.JCA based Websphere Adapters introduced.
6)                  Native support for very large file processing, including FTP.In WMB v5,for FTP,plugins have to be installed.In 6.1, it is native.FileInput node ,FileOutput node introduced.
7)                  MB Explorer Eclipse administration have been introduced. Performance Monitor – Easily view CPU, IO and other metrics in Eclipse
8)                  WSDL Drag Drop – Quickly create Web Services solutions
9)                  Discovery wizards for SAP, SEBL, PeopleSoft
10)               High Performance XML Parsing using IBM Research Technology
11)               EmailOutput node have been introduced
12)               TCPIP nodes introduced
13)               Collector node which collects messages from multiple,disjoint sources under multiple input conditions is introduced
14)               Configurable Services -Modify operational parameters without redeploy. Email and FTP node server addresses, LDAP configuration parameters

Differences between WMB  6.1 and 7 –Particularly talks about whats new  in WMBv7

1)              Runtime now consists of a single component (the broker) .In any system, fewer interacting components means fewer opportunities for failure. Tools now connect directly to the broker, and do not use a configuration manager. 
2)             The broker's persistent configuration is now stored exclusively on the file system, which means that you no longer need to create and maintain a system database, and no database product is required unless you want to access user databases.
3)             Message Broker V7 needs only a broker and a queue manager for a working configuration
4)             All pub/sub administrative concepts now form part of the queue manager's configuration and are no longer exposed or managed using Message Broker tools. As a result, Message Broker no longer has, or exposes the concepts of, a User Name Server, topology, collectives, topics hierarchy, or subscriptions. The broker's Publication node now uses the MQ pub/sub engine.
5)             You can deploy message flows directly onto execution groups without having to build BAR files or change perspectives, and deployment results are displayed synchronously in a new Deployment log, which lets you quickly ensure that message flows are deployed and working as expected.
6)             Historically, Message Broker development has been a "bottom-up" process, with low-level components such as nodes joined together to gradually create a complete application connectivity solution. Pattern-based development is a "top-down" methodology, in which high-level application parameters such as queue names or WSDL documents are described to the broker as pattern parameters to form the solution. The Message Broker V7 Toolkit contains a Patterns Explorer, which lets you browse available patterns for ones that might be applicable to the current problem. By applying a set of pattern parameters to a pattern instance, you can quickly generate a set of Message Broker artifacts, with common algorithms for aspects such as logging and error handling. You can then customize and deploy these artifacts in the usual way.
7)              SCA nodes have been introduced for integrating with Websphere Process Server
8)             PHPCompute node -  apply general-purpose message transformation logic using the PHP language, and complements the JavaCompute, Compute, XSLTransform, and Mapping nodes
9)             Sequence and Resequence node - These new nodes in Message Broker V7 help ensure the correct processing of messages in scenarios where ordering is critical. The Sequence node causes the broker to apply a sequence number to messages. The Resequence node lets messages arrive in any order, but will only propagate messages in the correct order (which can be determined by any source, including the Sequence node). The node includes comprehensive detection and processing in the event of missing or duplicate messages.
10)          Audit and monitoring can be done with more enhanced features such as,
·                     Extraction of business-relevant information from messages, and the collation and reporting of this information in a product such as WebSphere Business Monitor
·                     Extraction of fields from messages for input into products designed to detect patterns in messages (for example, for fraud detection), using a product such as WebSphere Business Events
·                     Recording of each message's payload for auditing purposes, with the ability to modify, resend, or replay sequences of messages
11)           Resource statistics has been introduced which can capture resources such as  JVM,Network Sockets  etc,.
12)          WebSphere MQ V7.0.1 introduced the concept of multi-instance queue managers.Concept is storing QM configuration in a shared network storage, and if the active queue manager fails, a second instance automatically becomes active by assuming the stopped queue manager's configuration. Message Broker V7 builds on this feature to add the concept of multi-instance brokers. It works in exactly the same way -- hosting the broker's configuration on network storage -- and makes your brokers highly available in the same way as your queue managers are. If you only wish to make your brokers or queue managers highly available, multi-instances can save the administration overhead of a third-party high-availability solution such as HACMP. However, the multi-instance brokers feature does not make any connected resources (such as databases) highly available, so in these scenarios another product that provides high availability is still required.
13)          Existing message flows and related files can be imported into and used by a Message Broker V7 Toolkit workspace. Files saved in the V7 tools can only be deployed to V7 brokers, while files saved in the V6 tools can be deployed only to brokers of that version. However, unchanged V6 BAR files can be deployed into a V7 broker.

Differences between WMB  7 and 8 –Particularly talks about whats new  in WMBv8


1)                  Apps & Libs for streamlined development, packaging, deployment & management.Applications and Libraries are introduced for Development .Group of messageflows and messagesets can be deployed together,started/stopped together which is called as Application.Message flow/Message set which is in subflow can be reused wherever needed and is dynamically linked which is called as library.
·                     Encourages designing for reuse
·                     Simplifies deployment & management
2)                  Simple & high performing data modelling with DFDL
·                     New standard for binary, text & industry data formats
3)                  Healthcare Connectivity Pack
 • healthcare patterns -Range of integration patterns to quickly address common scenarios : HL7 to HL7, HL7 to Reports
·                     MB now has the ability to read data from a range of medical devices
- e.g. heart rate monitors, infusion pumps – Supports a wide set of device manufacturers
- GE, Philips, Cardinal Health  and more
4)                  Web 2.0 browser console with REST management API for ubiquitous access
·                     Focus on non-admins to understand broker resources
·                     Designed as a complement to MBExplorer; MB Administrators can continue to use MB Explorer
·                     Web UI features based on role • e.g. Power users can start message flows • e.g. End users can view only

5)                  Record & Replay to capture, view, edit & replay in-flight messages
6)                  Message flow activity trace for rapid flow analysis by end-users
·                     ActivityLog is a great tool for providing a general overview of the health of each flow, it is possible for example to see at a glance if a flow is processing message and if these are reaching the expected output nodes
7)                  Mobile Services support with IBM Worklight and MB Toolkit integration
8)                  Built-in WebSphere Extreme Scale global cache for highly available and scalable data sharing
·                     New Built-in facility to share data between multiple brokers –
·                     Global cache shared between flows, execution groups & brokers
·                      Seamless access to global cache using from all message broker flows and nodes –Typical scenarios include multi-broker request-reply and multi-broker aggregation
·                     Full resource manager statistics shows cache interactions and other relevant statistics – Activity log shows cache agent operations for write and read
9)                  Support for MQ 7.1 and 7.5
10)               Mqsipackagebar
WebSphere Message Broker (WMB) version 8 has seen several new features arrive in its first fixpack, 8.0.0.1. One of these is the ability to create deployable BAR files in your runtime environment.

Previously, a WMB Toolkit installation was needed to create BAR files through either the GUI or the 'mqsicreatebar' command. This command would compile all of your runtime resources (message flows, message sets, Java™ projects, etc) and place them in a single deployable file, that would then be interpreted by either the Configuration Manager (in older versions), or the Broker itself.

WMB 8.0.0.1 introduces the ability to deploy message flows without needing to compile them into *.cmf files. As a result, the 'mqsipackagebar' command was created. This command is shipped with the WMB runtime, not the Toolkit. This means you do not need the Toolkit installed to create a bar file. With the proper configuration, you can even run this command on machines that do not have a WMB runtime installed.

However, 'mqsipackagebar' isn't as powerful as its older brother: you will still need to compile your message sets and Java projects prior to using this command. The 'mqsipackagebar' command can be used to add these pre-compiled resources to a BAR file, but it cannot actually compile them. For the same reason, when you add a message flow or ESQL to a BAR file with 'mqsipackagebar', it will not be compiled into a .cmf, but will appear as a *.msgflow or *.esql file.

Differences between WMBv8 and IIBv9 –Particularly talks about whats new  in IIBv9

1)                  MQ service and DatabaseService discovery  to facilitate sharing of service definitions
Service definitions allow you to make best use of available resources – Facilitates sharing of service information between users and systems – Allows users to understand interfaces (e.g. CustomerAddress.Update operation) – Provides a connector with which to exchange technical configuration (e.g. hostname)
2)                  WESB Conversion: Import and conversion of mediation flows
Along with the IBM Integration Bus release, IBM consolidated ESB product offerings and that meant discontinuing WebSphere ESB. WESB will be fully supported for at least another 5 years, but there will not be any new major releases. To ease with migration, IBM will provide 'transfer' licenses to IBM Integration Bus. IBM will also provide WESB Conversion Tools on a phased approach.
3)                  Migration from WMB V6.1, V7 and V8
4)                  New Decision Service node
- The embedded rules engine is provided for high performance and it replaces the IAM9 Support Pac.
-There is a new Decision Service node which can invoke a new built-in rules engine or a third party rules engine.
-Identifies inputs to business rules from in-flight data
• e.g. the customers order from whole request • e.g. the item price from key fields…
 – Invokes the built-in rule engine to perform business logic
- Open interfaces for 3rd party and user engines(Optional governance of rules through remote ODM Decision Center)
      5)     Create rules directly inside Integration Bus toolkit
      6)    Improved performance in DFDL
      7) Integration with IBM MessageSight(Appliance based messaging)
      8) Single installation package contains ALL required software • MQ 7.5, Integration Bus (Runtime, Toolkit, Explorer) • Available on Windows and Linux platforms
  9) Sub-second timeout on Aggregation nodes – More granular timeout values (ms) can now be specified on the aggregation nodes – Allows for quicker timeouts when aggregating data from usually fast responding systems
 10) Developer Edition-There is now a free edition of Integration Bus for use for development and testing. It is fully functional with the only limitation being a throughput rate of 1 transaction per second per integration flow. The installation package includes all of the required software: runtime, toolkit and MQ 7.5. This is a great and exciting offering to make it easier for customers and developers to learn and try out Integration Bus.