Wednesday, July 30, 2008

.NET Framework

The .NET Framework provides a run-time that is used to interpret intermediate code, code that is compiled from a development environment such as Microsoft’s Visual Studio when the language is C# or Visual Basic.NET. The code requires the run-time in order to execute. The code is referred to as “intermediate” because the result of the compilation is not a result that could be run at the machine level, or in other words to run without the aid of the run-time. The run-time is a service process that provides the framework for the execution of the intermediate code. The run-time acts as an interpreter of the intermediate code and then provides the structure for it to run on the operating system. Lower level capabilities it provides includes memory management, process management, and I/O management. In many cases the run-time is simply providing an abstraction level to the Windows API opening up nearly all of its capabilities to the programmer

The purpose of a run-time is to support the use rapid application development languages, such as C# and Visual Basic.NET. Highly capable run-times, such as the .NET Framework offer significant capabilities and access to the operating system and I/O. This allows a developer to create a powerful application very quickly.

Run-times are not necessarily striving for cross platform compatibility, while run-times such as Sun’s Java might.

Scripting (meta) language interpreters act similar to a run-time, although the code for many scripting languages is not pre-compiled as they are in .NET languages. Pre-compiling speeds up the act of loading the application into memory and also ensures a more compact executable file.

Wednesday, July 23, 2008

Information ecology

In the context of an evolving information society, the term information ecology was coined by various persons in the 1980s and 1990s. It marks a connection between ecological ideas with the dynamics and properties of the increasingly dense, complex and important digital informational environment and has been gaining progressively wider acceptance in a growing number of disciplines. "Information ecology" often is used as metaphor, viewing the informational space as an ecosystem.

Wednesday, July 16, 2008

Data profiling

Data profiling is the process of examining the data available in an existing data source (e.g. a database or a file) and collecting statistics and information about that data. The purpose of these statistics may be to:

1. find out whether existing data can easily be used for other purposes
2. give metrics on data quality including whether the data conforms to company standards
3. assess the risk involved in integrating data for new applications, including the challenges of joins
4. track data quality
5. assess whether metadata accurately describes the actual values in the source database
6. understanding data challenges early in any data intensive project, so that late project surprises are avoided. Finding data problems late in the project can incur time delays and project cost overruns.
7. have an enterprise view of all data, for uses such as Master Data Management where key data is needed, or Data governance for improving data quality

Thursday, July 10, 2008

Multidimensional database

Multidimensional databases are variously (depending on the context) data aggregators which combine data from a multitude of data sources; databases which offer networks, hierarchies, arrays and other data formats difficult to model in SQL; or databases which give a high degree of flexibility in the definition of dimensions, units, and unit relationships, regardless of data format.

Multi-dimensional databases are especially useful in sales and marketing applications that involve time series. Large volumes of sales and inventory data can be stored to ultimately be used for logistics and executive planning. For example, data can be more readily segregated by sales region, product, or time period.

While many of the major database vendors have recognized and implemented at least a partial solution, most frequently they rely upon a Star schema database design. However, the star design for relational databases can result in "sparse data," or sets of ordered data with large gaps between data entries. While modern database engines use strategies to limit the impact of sparse data sets on query performance, such as compressing large blocks of empty data elements for quicker access, star databases can still present worse performance than other alternatives.

Wednesday, July 02, 2008

Theft of service

Spammers frequently seek out and make use of vulnerable third-party systems such as open mail relays and open proxy servers. SMTP forwards mail from one server to another—mail servers that ISPs run commonly require some form of authentication to ensure that the user is a customer of that ISP. Open relays, however, do not properly check who is using the mail server and pass all mail to the destination address, making it harder to track down spammers.

Increasingly, spammers use networks of malware-infected PCs (zombies) to send their spam. Zombie networks are also known as Botnets (such zombifying malware is known as a bot, short for robot). In June 2006, an estimated 80% of e-mail spam was sent by zombie PCs, an increase of 30% from the prior year. An estimated 55 billion e-mail spam were sent each day in June 2006, an increase of 25 billion per day from June 2005.