add

Friday 4 May 2018

Tools for Administering the Data Warehouse in Oracle 11g

Tools for Data Warehouse in Oracle 11g or 10g

 To enable, to quickly and efficiently create and administer an Oracle data warehouse. The following are some of the products, tools, and utilities you can use to achieve your goals with your data warehouse:
 Oracle Universal Installer:
Oracle Universal Installer installs your Oracle software and options. It can automatically start the Database Configuration Assistant (DBCA) to install a database.
 Oracle Enterprise Manager:
The primary tool for managing your database is Oracle Enterprise Manager, a Web-based interface. After you have installed the Oracle software, created or upgraded a database, and configured the network, you can use Oracle Enterprise
Manager for managing your database. In addition, Oracle Enterprise Manager also provides an interface for performance advisors and for Oracle utilities such as
SQL*Loader and Recovery Manager.
Oracle Warehouse Builder:
The primary product for populating and maintaining a data warehouse, Oracle
Warehouse Builder provides ETL, data quality management, and metadata management functionality in a single product.
Warehouse Builder includes a unified repository hosted on an Oracle Database. Warehouse Builder leverages Oracle Database functionality to generate code optimized for loading into and maintaining Oracle Database targets.
 Database Tuning Pack:
Oracle Database Tuning Pack offers a set of new technologies that automate the entire database tuning process, which significantly lowers database management costs and enhances performance and reliability. The key features of Oracle Database Tuning Pack that will be used in this guide are the SQL Access and SQL Tuning Advisors.
Analytic Workspace Manager Application Plug-ins:
This release of Analytic Workspace Manager includes two application plug-ins:
1.       The Oracle Business Intelligence Enterprise Edition (OBIEE) Plug-in for Analytic Workspace Manager (obieeplugin.jar) lets you quickly create an OBIEE 10g or 11g repository that enables the OBIEE Server (and therefore any OBIEE client, including Dashboards, Answers, Delivers, and the MS Office Plug-in) to query Oracle Database 11g OLAP cubes.
2.       The Data Validation Plug-in for Analytic Workspace Manager (datavplugin.jar) provides tests to quickly find conditions in dimension table data that might cause errors when maintaining an OLAP dimension or cause problems when querying a cube using business intelligence tools. The data validation plug-in also includes methods that can quickly fix many different types of data errors in dimension tables. Please refer to the Review Guide for Data Validation Plug-in.pdf for a tutorial on the use of the Data Validation Plug-in.
Oracle Application Express:
Oracle Application Express (Oracle APEX), is the low code web application development tool for the Oracle database. Application Express enables you to design, develop and deploy beautiful, responsive, database-driven applications, either on-premises or in the cloud. Using only a web browser and limited programming experience, you can rapidly develop and deploy professional applications that are both fast and secure for any device from desktop to mobile. Oracle Application Express combines the qualities of a low code tool such as productivity, ease of use, and flexibility, with the qualities of an enterprise development tool such as security, integrity, availability, availability and built for the web. See how you can take advantage of this fully-supported, no-cost feature of the Oracle Database by signing up for an account at apex.oracle.com.

Wednesday 11 April 2018

how to convert characters into Stars Using FOR Loop in C

Saturday 6 May 2017

EF Code 12 Rules for RDBMS

EF Code 12 Rules for  RDBMS

Edger Frank “Ted ” code(august 1923-18 April 2003) was an English computer scientist who, while working for IBM, invented the relational model for database management, the theoretical basis for relational database Code proposed thirteen rules, numbered 0 to 12.

 According to him if a database meets these rules, it can be called relational database management system.  The system must qualify as relational as a database and as a management system. For a system to qualify as a relational database management system, that system must use its relational facilities to manage database.
The other 12 rules derive this rule.
All information (including metadata) is stored to be represented as stored data in cells of table. The rows and columns have to be strictly unordered Each unique piece of data (atomic value) should be accessible by Table Name + Primary key (row) + Attribute (column)NULL has several meanings, it can mean missing data, not applicable or no value. It should be handled consistently. Primary key must not be NULL. Expression on NULL must give NULL. Database dictionary must have description of Database. Catalogue to be governed by same rule as rest of the database. The same query language to be used on catalogue as on applicable database. One well defined language must be there to provide all manners of access to data Eg SQL
All view that are theoretically updatable should be updatable by the system View is a virtual table There must be Insert, Delete, Update operations at each level of relations. Set operation like Union, Intersection and minus should also be supported. The physical storage of data should not matter to the system. If say some file supporting table were renamed or moved from one disk to another, it’s should not affect the application. If there is change in the logical structure (table structure) of the database the user view of data should not change. Say, if a table is split into two tables, a new view should give result as the join of the two tables. This rule is most difficult to satisfy. The database should be able to conforce its own integrity rather than using other programs. Key and check constraints. Trigger etc should be stored in data Dictionary. This also make RDBMS impendent of front end. A database should work property regardless of its distribution across a network. This lays foundation of distributed database. If low level Access is allowed to a system it should not be able to subvert or by pass integrity rule to change data. This can be achieved by some sort of looking or encryption


Monday 13 March 2017

namespace c++ explanation with examples



C++ Standard Library:

In the C++ programming language, the C++ Standard Library is a collection of classes and functions, which are written in the core language and part of the C++ ISO Standard itself.The C++ Standard Library provides several generic containers, functions to utilize and manipulate these containers, function objects, generic strings and streams (including interactive and file I/O), support for some language features, and functions for everyday tasks such as finding the square root of a number. The C++ Standard Library also incorporates 18 headers of the ISO C90 C standard library ending with ".h", but their use is deprecated. No other headers in the C++ Standard Library end in ".h". Features of the C++ Standard Library are declared within the std namespace.

The C++ Standard Library is based upon conventions introduced by the Standard Template Library (STL), and has been influenced by research in generic programming and developers of the STL such as Alexander Stepanov and Meng Lee. Although the C++ Standard Library and the STL share many features, neither is a strict superset of the other.
A noteworthy feature of the C++ Standard Library is that it not only specifies the syntax and semantics of generic algorithms, but also places requirements on their performance. These performance requirements often correspond to a well-known algorithm, which is expected but not required to be used. In most cases this requires linear time O(n) or linearithmic time O(n log n), but in some cases higher bounds are 

allowed, such as quasilinear time O(n log2 n) for stable sort (to allow in-place merge sort). Previously sorting was only required to take O(n log n) on average, allowing the use of quicksort, which is fast in practice but has poor worst-case performance, but introsort was introduced to allow both fast average performance and optimal worst-case complexity, and as of C++11, sorting is guaranteed to be at worst linearithmic. In other cases requirements remain laxer, such as selection, which is only required to be linear on average (as in quick select), not requiring worst-case linear as in introselect.
The C++ Standard Library underwent ISO standardization as part of the C++ ISO Standardization effort, and is undergoing further work regarding standardization of expanded functionality.

std::list:

 

std::list is a container that supports constant time insertion and removal of elements from anywhere in the container. Fast random access is not supported. It is usually implemented as a doubly-linked list. Compared to std::forward_list this container provides bidirectional iteration capability while being less space efficient.
Addition, removal and moving the elements within the list or across several lists does not invalidate the iterators or references. An iterator is invalidated only when the corresponding element is deleted. 

std::list meets the requirements of Container, Al locator Aware Container, Sequence Container and Reversible Container.

Template parameters


-
The type of the elements.
T must meet the requirements of Copy Assignable and Copy Constructible.
The requirements that are imposed on the elements depend on the actual operations performed on the container. Generally, it is required that element type is a complete type and meets the requirements of Erasable, but many member functions impose stricter requirements.
The requirements that are imposed on the elements depend on the actual operations performed on the container. Generally, it is required that element type meets the requirements of Erasable, but many member functions impose stricter requirements. This container (but not its members) can be instantiated with an incomplete element type if the allocator satisfies the allocator completeness requirements.
Allocator
-
An allocator that is used to acquire/release memory and to construct/destroy the elements in that memory. The type must meet the requirements of Allocator. The behavior is undefined if Allocator::value_type is not the same as T.

Member types

Member type
Definition
value_type
T
allocator_type
Allocator
size_type
Unsigned integer type (usually std::size_t)
difference_type
Signed integer type (usually std::ptrdiff_t)
reference
Allocator::reference
value_type&

const_reference
Allocator::const_reference

const value_type&
pointer
Allocator::pointer
std::allocator_traits<Allocator>::pointer
const_pointer
Allocator::const_pointer
std::allocator_traits<Allocator>::const_pointer
iterator
BidirectionalIterator
const_iterator
Constant bidirectional iterator
reverse_iterator
std::reverse_iterator<iterator>
const_reverse_iterator
std::reverse_iterator<const_iterator>

Member functions

(constructor)
constructs the list
(public member function)
(destructor)
destructs the list
(public member function)
operator=
assigns values to the container
(public member function)
assign
assigns values to the container
(public member function)
get_allocator
returns the associated allocator
(public member function)
Element access
front
access the first element
(public member function)
back
access the last element
(public member function)
Iterators
begin cbegin
returns an iterator to the beginning
(public member function)
end cend
returns an iterator to the end
(public member function)
rbegin crbegin
returns a reverse iterator to the beginning
(public member function)
rend crend
returns a reverse iterator to the end
(public member function)
Capacity
empty
checks whether the container is empty
(public member function)
size
returns the number of elements
(public member function)
max_size
returns the maximum possible number of elements
(public member function)
Modifiers
clear
clears the contents
(public member function)
insert
inserts elements
(public member function)
emplace

constructs element in-place
(public member function)
erase
erases elements
(public member function)
push_back
adds an element to the end
(public member function)
emplace_back
constructs an element in-place at the end
(public member function)
pop_back
removes the last element
(public member function)
push_front
inserts an element to the beginning
(public member function)
emplace_front
constructs an element in-place at the beginning
(public member function)
pop_front
removes the first element
(public member function)
resize
changes the number of elements stored
(public member function)
swap
swaps the contents
(public member function)
Operations
merge
merges two sorted lists
(public member function)
splice
moves elements from another list
(public member function)
removeremove_if
removes elements satisfying specific criteria
(public member function)
reverse
reverses the order of the elements
(public member function)
unique
removes consecutive duplicate elements
(public member function)
sort
sorts the elements
(public member function)
Non-member functions
operator==operator!=operator<operator<=operator>operator>=
lexicographically compares the values in the list
(function template)
std::swap(std::list)
specializes the std::swap algorithm
(function template)
Example
Run this code
#include <algorithm>
#include <iostream>
#include <list>

int main()
{
    // Create a list containing integers

    std::list<int> l = { 7, 5, 16, 8 };

    // Add an integer to the front of the list

    l.push_front(25);
    // Add an integer to the back of the list

    l.push_back(13);

    // Insert an integer before 16 by searching

    auto it = std::find(l.begin(), l.end(), 16);
    if (it != l.end()) {
        l.insert(it, 42);
    }

    // Iterate and print values of the list

    for (int n : l) {
        std::cout << n << '\n';
    }
}
Output:
25
7
5
42
16
8
13