0% found this document useful (0 votes)
51 views11 pages

Database

Download as docx, pdf, or txt
0% found this document useful (0 votes)
51 views11 pages

Database

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1/ 11

Database

You can think of a traditional database as an electronic filing system, organized by fields, records,
and files. A field is a single piece of information; a record is one complete set of fields; and a file
is a collection of records. For example, a telephone book is analogous to a file. It contains a list of
records, each of which consists of three fields: name, address, and telephone number.
An alternative concept in database design is known as Hypertext. In a Hypertext database, any
object, whether it be a piece of text, a picture, or a film, can be linked to any other object. Hypertext
databases are particularly useful for organizing large amounts of disparate information, but they
are not designed for numerical analysis.
Database, also called electronic database, any collection of data, or information, which is specially
organized for rapid search and retrieval by a computer. Databases are structured to facilitate the
storage, retrieval, modification, and deletion of data in conjunction with various data-processing
operations. A database management system (DBMS) extracts information from the database in
response to queries.

How database stores


A database is stored as a file or a set of files on magnetic disk or tape, optical disk, or some other
secondary storage device. The information in these files may be broken down into records, each
of which consists of one or more fields. Fields are the basic units of data storage, and each field
typically contains information pertaining to one aspect or attribute of the entity described by the
database. Records are also organized into tables that include information about relationships
between its various fields. Although database is applied loosely to any collection of information
in computer files, a database in the strict sense provides cross-referencing capabilities. Using
keywords and various sorting commands, users can rapidly search, rearrange, group, and select the
fields in many records to retrieve or create reports on particular aggregates of data.

Database Components
Data is organized into rows, columns and tables, and it is indexed to make it easier to find relevant
information. Data gets updated, expanded and deleted as new information is added. Databases
process workloads to create and update themselves, querying the data they contain and running
applications against it. Computer databases typically contain aggregations of data records or files,
such as sales transactions, product catalogs and inventories, and customer profiles.
Typically, a database manager provides users with the ability to control read/write access, specify
report generation and analyze usage. Some databases offer ACID (atomicity, consistency, isolation
and durability) compliance to guarantee that data is consistent and that transactions are complete.
A database is made up of several main components.

Schema - A database contains one or more schemas, which is basically a collection of one or
more tables of data.
Table - Each table contains multiple columns, which are similar to columns in a spreadsheet. A
table can have as little as two columns and as many as one hundred or more columns, depending
on the type of data being stored in the table.

Column - Each column contains one of several types of data or values, like dates, numeric or
integer values, and alphanumeric values (also known as varchar).

Row - Data in a table is listed in rows, which are like rows of data in a spreadsheet. Often there
are hundreds or thousands of rows of data in a table.

Accessing the database: DBMS and RDBMS


A database management system (DBMS) is a type of software that allows you to define,
manipulate, retrieve and manage data stored within a database.
A relational database management system (RDBMS) is a type of database management software
that was developed in the 1970s, based on the relational model, and is still the most popular way
to manage a database. Microsoft SQL Server, Oracle Database, IBM DB2 and MySQL are the top
RDBMS products available for enterprise users. DBMS technologies began in the 1960s to support
hierarchical databases, and they include IBM's Information Management System and CA's
Integrated Database Management System.
Although DBMS and RDBMS both are used to store information in physical database but there
are some remarkable differences between them.
The main differences between DBMS and RDBMS are given below:
After observing the differences between DBMS and RDBMS, you can say that RDBMS is an
extension of DBMS. There are many software products in the market today who are compatible
for both DBMS and RDBMS. Means today a RDBMS application is DBMS application and vice-
versa.

Types of database:
What is a relational database?
A relational database is based on the model invented by IBM’s E.F. Codd in the 1970s. Relational
databases, use Structured Querying Language (SQL) and can manage a variety of transaction-
oriented applications. They present data in tabular form (i.e. as a collection of tables with each
table consisting of a set of columns and rows) and provide relational operators to manipulate data
in tabular form.
Today, many enterprise database management systems employ relational databases, but they can
handle a minimal amount of data types, and are more difficult to scale.
Centralised database
Users from different locations can access this database from a remote location at the central
database, that store entire information and application programs at a central computing facility for
processing. The application programs pick up the appropriate data from the database based on the
transactions sent by the communications controller for processing the transaction.
Data validation and verification is carried out by the application programs at the central computer
centre, and a registration number is allotted by the application programs located at the central
facility. The local area office keeps on recording it and hardly does any processing.

Operational database
This is more of a basic form of data that contain information relating to the operations of an
enterprise. Generally, such databases are organised on functional lines such as marketing,
production, employees, etc.

End user database


End user is the user of a software, application or a product. This is a shared database which is
shared by users and is meant for use by the end users, just like managers at different levels. They
may not be concerned about the individual transactions as found in operational databases. This
database is more about the summary of the information.

Commercial database
This is a database that contains information which external users may require. However, they will
not be able to afford maintaining such huge database by themselves. It’s a paid service to the user
as the databases are subject specific. The access to commercial database can be given through
commercial links.

What is a non-relational database?


A non-relational database is modeled by means other than the tabular system used in the relational
database. A major advantage of the non-relational database is that it can easily incorporate and
store all kinds of Big Data, including unstructured and semi-structured data. Design is generally
simpler and allows users to perform operations faster. As a community grows, non-relational
databases can scale automatically. They are becoming increasingly popular for use with real-time
web applications.

What is a desktop database?


Before complex data warehousing and before the cloud, there was the desktop database designed
to run on a single machine. These solutions are simple and inexpensive, but also fairly limited in
terms of data availability, storage, and functionality.
What is a web-enabled database?
The web-enabled database provides everything a standard database does, but all functionality can
be utilized online, and all data can be accessed remotely and interactively. Common components
of a web-enabled database system are permanent online access, a web server and firewall, and
application delivery via online database software and a website. The web-enabled database system
is often coupled with a desktop platform.

Personal database
The personal databases are maintained, generally, on personal computers. They contain
information that is meant for use only among a limited number of users, generally working in the
same department.

Distributed database
These databases have contributions from the common databases as well as the data captured from
the local operations. The data remains distributed at various sites in the organization. As the sites
are linked to each other with the help of communication links, the entire collection of data at all
the sites constitutes the logical database of the organization.

What is a server database?


Server databases are typically used to manage massive data stores, allowing multiple users to
simultaneously access, modify, and update data and ensuring that data is reliable and consistent.
While server databases are more expensive than other solutions, they are also more flexible,
scalable, and powerful.

What are examples of database software programs?


Some of the most well-known database software programs include:
 ADABAS
 IBM DB2
 Microsoft Access
 Microsoft Excel
 Microsoft SQL Server
 MySQL
 Oracle RDBMS
 QuickBase
 SAP Sybase ASE
 Teradata
What is database software used for?
Mainly, database software exists to protect the information in the database and ensure that it’s both
accurate and consistent. Database software functions include:
 Data storage
 Data backup and recovery
 Data presentation
 Multi-user access control
 Data security management
 Database communication

What are the types of database software?


Database software is generally classified into six subtypes: analytical database software, data
warehouse database software, distributed database software, end user database software, external
database software, and operational database software.
Analytical database software allows the user to pull data from a variety of databases and examine
them for the purpose of quantitatively assessing performance (business, departmental, employee,
etc.).
Data warehouse software allows the user to pull key data from a variety of databases and store it
in a central location for the purpose of deriving critical insights and reporting those insights. Data
warehousing helps to ensure data integrity by readily identifying inconsistencies.
Distributed database software involves a centralized database management system that controls
information stored in a variety of locations (including the cloud, a company LAN or a network
server). The distributed model is often considered the safest because of its natural data redundancy.
End user database software stores information that is used primarily by one person (Microsoft
Excel and its spreadsheets are an example).
External database software compiles information that must be accessed by a variety of users,
often via the Internet.
Operational database software allows the user to modify data in real-time (for purposes such as
financial and customer relationship management).

What can online database software do?


Online database software allows users to develop customized web-based applications without
coding experience. It often includes editing and collaboration functionality so that team members
can discuss projects and share files. Depending on the program, the user may also be able to build
forms that can be housed on a website and can deliver data directly to a database. Most online
database software programs also have advanced reporting capabilities.

What is the difference between on premise and hosted database


software?
The answer is similar to what we discussed in our application software tutorial. On premise
database software is implemented at an organization’s physical location, leveraging the hardware,
IT infrastructure, and support of that organization. The company’s IT department typically
maintains and solves problems related to the software.
Hosted database software, also called software-as-a-service, is software that is owned, delivered,
and managed remotely via the cloud by a provider separate from the purchasing organization.
Many organizations license these programs at the same time, and organizations typically pay per
user or via a subscription. One advantage of on premise software is that it can be customized to
the individual company’s needs more easily. However, hosted database software programs
generally allow users to scale up more quickly.

How do I choose the right database software?


There are several requirements you should consider before selecting a database management
solution. As we’ve covered above, architecture is critical. Depending on what kind of data you
have, a relational database may or may not be appropriate. Your administration needs also play a
major role. Do you, for instance, need change management capabilities? What about backup and
recovery? Do you need these functions built-in, or can you add on products later?
Everyone agrees that data stores just keep getting larger, so scalability is also a factor that should
affect your decision. When looking at database software, you should understand how growth can
be managed and how the system can adapt to upgrades throughout your IT infrastructure.
Database in Biometrics:
Storing finger print on database
You can scan and save the images in any preferred format like .Gif,.Jpg etc. While storing in the
DB you can store them as blob or clob objects as bytes. Many real world banking applications
store it as blob objects and I have personally stored and retrieved such images using blob columns
in relational DB. Fingerprints are usually encoded into special files, called fingerprint templates,
in order to be stored into a database.

Raw fingerprint images should not be stored for a number of


drawbacks
A fingerprint image takes about 250 KB of space, whereas a template takes about 500 bytes.
Storing raw fingerprint images is unsafe since it may lead to information leak once compromised.
Different algorithms may generate different templates for the same fingerprint, hence you must
use the same algorithm when comparing fingerprints. Now, when it comes to choosing the best
data type for storing the template file, it depends on the file format. If you really don’t want to
bother about the file format at all, use binary/varbinary.

Arguments
Binary [ ( n ) ] Fixed-length binary data with a length of n bytes, where n is a value from 1 through
8,000. The storage size is n bytes.
Varbinary [ ( n | max) ] Variable-length binary data. n can be a value from 1 through 8,000. max
indicates that the maximum storage size is 2^31-1 bytes. The storage size is the actual length of
the data entered + 2 bytes. The data that is entered can be 0 bytes in length. The ANSI SQL
synonym for varbinary is binary varying.

Remarks
When n is not specified in a data definition or variable declaration statement, the default length is
1. When n is not specified with the CAST function, the default length is 30.

Data type Use when ...

Binary the sizes of the column data entries are consistent.

Varbinary the sizes of the column data entries vary considerably.

varbinary(max) the column data entries exceed 8,000 bytes.

Converting binary and varbinary data


When data is converted from a string datatype
(char, varchar, nchar, nvarchar, binary, varbinary, text, ntext, or image) to
a binary or varbinary data type of unequal length, SQL Server pads or truncates the data on the
right. When other data types are converted to binary or varbinary, the data is padded or truncated
on the left. Padding is achieved by using hexadecimal zeros.
Converting data to the binary and varbinary data types is useful if binary data is the easiest way
to move around data. Converting any value of any type to a binary value of large enough size and
then back to the type, always results in the same value if both conversions are taking place on the
same version of SQL Server. The binary representation of a value might change from version to
version of SQL Server.

Problems
• Maintaining a huge Biometric database may cause scalability problems
• Matching time increases with the increase in database sizes
• Biometric data has no natural ordering
• Matching should be fast for a real-time system

Need for a RDBMS in Biometrics


Every large scale Biometrics Solution requires a RDBMS for efficient storage and access of data
Examples:
 AIFS – contains 400 million fingerprints
 Point-of-sale Biometric identification system (100 million entries)

Using the RDBMS


Loose Integration
 Use the RDBMS only for storage of templates
 Match performed against in-memory structures created from the stored templates
 Users use Biometric vendor-specific API or BioAPI

Tight Integration
 Use the RDBMS for storage of templates as well as for performing the match
 Users use SQL queries directly against database tables

Loose Integration
Biometric data is loaded from a database table into memory
Matching done on custom-built memory-based structures
 Results in fast matching
 The solution is memory-bound
Further scalability, achieved by using Server Farms
 Vendor-centric solution
 Cannot be easily extended to support multi-model systems

Tight Integration
Template matching is implemented within the RDBMS and performed using SQL.
Allows Biometric Vendor to exploit full capabilities of RDBMS including:
 Security
 Scalability and availability
 Parallelism

You might also like