Wednesday, March 28, 2012

What is Hadoop

Hadoop is a free, Java-based programming framework that supports the processing of large data sets in a distributed computing environment. It is part of the Apache project sponsored by the Apache Software Foundation

what is MapReduce

MapReduce is a software framework that allows developers to write programs that process massive amounts of unstructured data in parallel across a distributed cluster of processors or stand-alone computers.
It was developed at Google for indexing Web pages

Tuesday, May 31, 2011

WPF Windows Presentation Foundation

Windows Presentation Foundation (WPF) is a next-generation presentation system for building Windows client applications with visually stunning user experiences. With WPF, you can create a wide range of both standalone and browser-hosted applications
The core of WPF is a resolution-independent and vector-based rendering engine that is built to take advantage of modern graphics hardware.

WPF exists as a subset of .NET Framework types that are for the most part located in the System.Windows namespace. If you have previously built applications with .NET Framework using managed technologies like ASP.NET and Windows Forms, the fundamental WPF programming experience should be familiar; you instantiate classes, set properties, call methods, and handle events, all using your favorite .NET Framework programming language, such as C# or Visual Basic.

To support some of the more powerful WPF capabilities and to simplify the programming experience, WPF includes additional programming constructs that enhance properties and events: dependency properties and routed events


Good stuff on WPF is here for beginners : http://www.wpftutorial.net/WPFIntroduction.html

Monday, May 23, 2011

Difference between Cloud Computing and SaaS

Cloud computing :- Cloud Computing is a computing infrastructure that you can rent to deploy your applications without worrying about hardware .


SaaS:- SaaS offerings are complete end user software applications which you can use by paying hourly basis instead of licensing for years.

Monday, April 11, 2011

Improving the ASP.Net application performance

Few points to keep in mind while developing and deploying ASP.Net application.

Create new application pool for your site and ensure that only your application uses this pool.

In machine.config file , set the “retail=true” which will set the debug and tracing options to false . Disabling debug and tracing features for production application will improve the performance.

Implement Ajax wherever possible, this will reduce the full page refresh and increases the application performance by refreshing the parts of the page.

Implement Client side validations instead of using server validation controls. This will decrease the round trips to the server.

Disable the view state for entire page when not needed. Using view state simply will become overhead for webpage and it impacts the page load time.

Don’t store larger amounts of data in sessions . Using sessions will increase the memory consumption at server and brings down the server performance.

Use try/catch/finally blocks only when you are implementing complex functions . Use of exception handling for every simple function will hit the performance.


















Friday, April 8, 2011

Enterprise Library

The Microsoft Enterprise Library is a collection of reusable software components (application blocks) designed to assist software developers with common enterprise development cross-cutting concerns (such as logging, validation, data access, exception handling, and many others).
Software developers can add application blocks to .NET applications quickly and easily. For example, the Data Access Application Block provides access to the most frequently used features of ADO.NET, exposing them through easily used classes


Enterprise Library is a collection of application blocks intended for use by developers who build complex, enterprise-level applications

Advantages :

Consistency. All Enterprise Library application blocks feature consistent design patterns and implementation approaches.



Extensibility. All application blocks include defined extensibility points that allow developers to customize the behavior of the application blocks by adding their own code.



Ease of use. Enterprise Library offers numerous usability improvements, including a graphical configuration tool, a simpler installation procedure, and clearer and more complete documentation and samples.



Integration. Enterprise Library application blocks are designed to work well together or individually.


Microsoft Enterprise Library 5.0 contains the following application blocks:






Caching Application Block. Developers can use this application block to incorporate a cache in their applications. Pluggable cache providers and persistent backing stores are supported.



Cryptography Application Block. Developers can use this application block to incorporate hashing and symmetric encryption in their applications.


Data Access Application Block. Developers can use this application block to incorporate standard database functionality in their applications, including both synchronous and asynchronous data access and returning data in a range of formats.



Exception Handling Application Block. Developers and policy makers can use this application block to create a consistent strategy for processing exceptions that occur throughout the architectural layers of enterprise applications.



Logging Application Block. Developers can use this application block to include logging functionality for a wide range of logging targets in their applications. This release further improves logging performance.



Policy Injection Application Block. Powered by the Interception mechanism built in Unity, this application block can be used to implement interception policies to streamline the implementation of common features, such as logging, caching, exception handling, and validation, across a system.



Security Application Block. Developers can use this application block to incorporate authorization and security caching functionality in their applications.


Unity Application Block. Developers can use this application block as a lightweight and extensible dependency injection container with support for constructor, property, and method call injection, as well as instance and type interception.

Validation Application Block. Developers can use this application block to create validation rules for business objects that can be used across different layers of their applications.



Hands on Labs available at :

http://www.microsoft.com/downloads/en/details.aspx?FamilyID=4f8cd377-5522-4f45-a024-44a6ca5111ec&displaylang=en














Friday, April 1, 2011

Generating metadata from Type Library

COM type definitions usually reside in a type library. In contrast, CLS-compliant compilers produce type metadata in an assembly. The two sources of type information are quite different.


Here is the tutorial that describes techniques on how to generate metadata from a type library. The resulting assembly is called an interop assembly.

http://msdn.microsoft.com/en-us/library/xwzy44e4.aspx

Thursday, January 20, 2011

Windows Server AppFabric

Windows Server AppFabric is a set of integrated technologies that make it easier to build, scale and manage Web and composite applications that run on IIS.

Windows Server AppFabric hosting features enhance the hosting of .NET Framework version 4 Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) services in the Windows Process Activation Service (WAS) by providing the following capabilities:
  • Simplified deployment and management of WCF and WF services hosted in WAS
  • Simplified configuration of persistence for durable workflows
  • Customizable tracking profiles that allow you to capture only the data you need
  • Dedicated, queryable storage for tracked data
  • Windows PowerShell cmdlets that allow you to create custom management scripts
  • Customizable monitoring of hosted services
  • Supports Internet Protocol Version 6 (IPv6) through Windows IPv6 stack
  • Automatically starting applications to minimize service latency

Tuesday, December 14, 2010

Failed to access IIS metabase ASP.NET

Open visual studio command prompt and type this command


aspnet_regiis -ga

or


 aspnet_regiis -i

alternatively  paste this command into windows command prompt


%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i

Monday, September 27, 2010

Biztalk server : Dehydration and Rehydration

Dehydration :-
==========
Dehydration is the process of storing orchestration state in the message box through object form called dehydration.

Rehydration :-
=========
It is the process of restoring the orchestration state back to its original position from object form .

Friday, June 25, 2010

BizTalk Server Knowledge Base Articles

Below link has few knowledge base articles  and hot fixes . These articles would help us when dealing with any performance related or unexpected errors
 

http://msdn.microsoft.com/en-US/library/cc983851(v=BTS.10).aspx

Ordered Message Delivery in BizTalk Server

Microsoft has published an article on ordered message delivery. Good to go through ....

http://msdn.microsoft.com/en-us/library/bb851740.aspx

Saturday, May 15, 2010

ASP.Net : What is webgardening

Web gardening enables multiple worker processes to run at the same time. However, you should note that all processes will have their own copy of application state, in-process session state, ASP.NET cache, static data, and all that is needed to run applications.

When the Web garden mode is enabled, the ASP.NET ISAPI launches as many worker processes as there are CPUs, each a full clone of the next (and each affinitized with the corresponding CPU). To balance the workload, incoming requests are partitioned among running processes in a round-robin manner. Worker processes get recycled as in the single processor case. Note that ASP.NET inherits any CPU usage restriction from the operating system and doesn’t include any custom semantics for doing this.

SQL Query : Getting Nth highest salary from the employee

In any interview these days , everybody would be facing this question some time in their career. Below is the easy way to get the Nth highest salary among the employee salaries


SELECT TOP 1 SALARY FROM (SELECT DISTINCT TOP N SALARY
FROM EMPLOYEE ORDER BY SALARY DESC)SAL
ORDER BY SALARY


Place the value in place of N.

Saturday, May 1, 2010

SQL Server : INTERSECT

-Returns any distinct values that are returned by both the query on the left and right sides of the INTERSECT operand

-It almost works like INNER JOIN

-Difference is INTERSECT treats two NULL values are same whereas INNER JOIN treats two NULL values are different

SQL Server : Number of nesting levels in stored procedures

Stored procedures are nested when one stored procedure calls another or executes managed code by referencing a CLR routine, type, or aggregate. You can nest stored procedures and managed code references up to 32 levels. The nesting level increases by one when the called stored procedure or managed code reference begins execution and decreases by one when the called stored procedure or managed code reference completes execution. Attempting to exceed the maximum of 32 levels of nesting causes the whole calling chain to fail. The current nesting level for the stored procedures in execution is stored in the Any reference to managed code from a Transact-SQL stored procedure counts as one level against the 32-levelnesting limit. Methods invoked from within managed code do not count against this limit.

When a stored procedure executes managed code by referencing a CLR routine, type, or aggregate, this reference also counts as one level of nesting. Methods invoked from within managed code do not count against this limit. The current nesting level is returned by the @@NESTLEVEL function. When a CLR stored procedure performs data access operations through the Microsoft SQL Server managed provider, an additional nesting level is added in the transition from managed code to SQL and this level is reflected in the @@NESTLEVEL function.

An error in a nested stored procedure is not necessarily fatal to the calling stored procedure. When invoking stored procedures within stored procedures, use the Transact-SQL RETURN statement to return a return code and check the return code from the calling stored procedure. In this way, you can specify the behavior of your stored procedures when errors occur. For more information about using return codes, see Returning Data Using a Return Code.

Stored procedures can even do a nested call to themselves, a technique known as recursion.Although the nesting limit is 32 levels, SQL Server has no limit on the number of stored procedures that can be invoked from a given stored procedure, provided that the subordinate stored procedures do not invoke other
subordinate stored procedures and the maximum nesting level is never exceeded.

Sunday, April 25, 2010

fundamental questions

One of my friend had been to one interview in last weekend and the questions he had faced are below.I see that all the questions were asked looks like we use them in our daily programming .But when look at the them first time,It is giving me strange feeling because the technical names of that concepts I have not known.

What is cross page posting in ASP.Net...?

Cross-page posting is desired in a scenario where data is collected on one Web page and processed on another Web page. ASP.NET  2.0 introduces a new property in the Page class called ‘PreviousPage’ which gets the page that posted to the current
page .

ASP.NET by default, submits the form to the same page. Cross page posting is submitting the form to a different page. This is usually required when you are creating a multi page form to collect information from the user on each page. When moving from the source to the target page, the values of controls in the source page can be accessed in the target page.

What is SCOPE_IDENTITY() :-

This function can return the last identity value inserted into an identity column in the same scope e.g. a stored procedure, trigger, function, or batch. .
Here is the example that will tell how to use scope_identity() function

CREATE PROCEDURE Employee(
@EmpName VARCHAR(50),
@EmpEmail VARCHAR(50),
@PhoneNo VARCHAR(50),
@EmpID INT OUTPUT)
AS
BEGIN
INSERT INTO Employee (EmpName, EmpEmail , PhoneNo)
VALUES (@EmpName,@EmpEmail,@PhoneNo)
 
SET @EmpID = CAST(SCOPE_IDENTITY() AS INT)
EN
 
 
What is current Identity : 

Returns the last identity value generated for a specified table or view.
The last identity value generated can be for any session and any scope.

USE AdventureWorks;
GO
SELECT IDENT_CURRENT ('Person.Address') AS Current_Identity;
GO 

Wednesday, April 21, 2010

Biztalk components : BAM Portal

Business end users use the BAM portal to monitor Key Performance Indicators (KPIs), which measure progress toward a business goal, as well as other information about their business process. Business analysts use the BAM portal to oversee the creation of observation models, which are high-level definitions of the visibility requirements within the business process. Administrators use it for a variety of monitoring activities, including monitoring the health of the business process management system.

What is the BAM portal?

The BAM portal in BizTalk Server 2006 provides real-time, end-to-end visibility into a business process. It is a Web-based feature that consists of a collection of ASP.NET 2.0 pages. You can customize BAM to enhance the performance and experience for your users. 

Why use the BAM portal?

The BAM portal allows you to perform searches, aggregate data, and set alerts on a BAM view, which is a perspective on your business data. This visibility can provide the necessary KPI information for your business, or it can be used as proof of concept before you implement another solution such as extending a Microsoft Office Excel 2003 spreadsheet, using SQL Reporting, or building a custom user interface (UI).
BAM portal components

Following is a brief description of the BAM portal components. For a more detailed description, see the topics in See Also.

Activity searches

You use the BAM portal to perform searches against BAM data to find a specific BAM activity. You create queries by adding and removing search clauses that allow you to display those activities that match criteria for which you want to be alerted.
Queries can be saved and reused. They can also be the basis for an alert, such as a notification when a purchase order arrives from a specific customer.

Aggregations

The portal allows you to capture a snapshot of data and display it in the form of a graphical chart and accompanying PivotTable chart. This data gives you visibility into the health of that process or the overall business. For example, a user may wish to see a simple pie chart that shows a breakdown of the 1,000 invoices received in a day in terms of what stage of processing has been reached by each invoice (400 still in "evaluation," 400 rejected, 100 paid, and 100 still in "fund allocation").
The data presented can be the basis for creating an alert, such as "Notify me if there are ever more than 500 invoices in the 'evaluation' stage of the process."

Alert Manager

The portal provides a user interface for the creation of alerts and the editing of existing alerts. Alerts take the conditions that are to be monitored from either the Activity Search or Aggregations page. The Alert Manager is where you fill in the relevant parts of an alert, such as who to notify, how (for example, through e-mail), and whether others can see and subscribe to the alert.

Tuesday, April 20, 2010

Bizalk server application scenarios and patterns

Microsoft has given real time scenarios about where we can use biztalk and how it solves today's business critical problems. These are very good for beginners to understand basic terminology of biztalk.

http://msdn.microsoft.com/en-us/library/aa561965%28v=BTS.20%29.aspx