Data Management Technology(1) -- Introduction
1.Database concepts
(1)Data & Information
Information
- Is any kind of event that affects the state of a dynamic system
- Is the message (utterance or expression) being conveyed
- Is an ordered sequence of symbols that can be interpreted as a message
As sensory input: Often be viewed as a type of input to an organism or system
Can be recorded and transmitted
Data
Definition
- values of a qualitative or quantitative variables, belonging to a set of items
- Used to record information
- Is the carrier of Information
Data type and Data value
- Data Type: the way values of the data can be stored in computer system
- Data Value: records the meaning of information
Data & Information
Data on its own carries no meaning
Data must be interpreted to take on a meaning, so that the information can be revealed
Data is the lower level of abstraction; is the carrier of information
Information is the interpretation of data
(2)Data Processing VS Data Management
Main categories of Data Manipulation
Data Management: Database
Data Processing: Computer program
Data Transmission: Computer Network
Tasks of Data Management
Data Storage: Organize the data and store them into the storage device such as hard disk;
Data Maintenance: Insert new value, delete invalid data or modify old data;
Data Query & Data statistic: Retrieve information from the data storage
Application Requirements
store the data for a long period of time
- large amounts (100s of GB)
- protect against crashes
- protect against unauthorized use
allow users to query/update:
allow several (100s, 1000s) users to access the data simultaneously
allow administrators to change the schema
Trying Without a DBMS
Storing data: file system is limited
- size less than 4 GB (on 32 bits machines)
- when system crashes we may loose data
- password-based authorization insufficient
Query/update:
- need to write a new C++/Java program for every new query
- need to worry about performance
Concurrency: limited protection
- need to worry about interfering with other users
- need to offer different views to different users (e.g. registrar, students, professors)
Schema change:
- entails changing file formats
- need to rewrite virtually all applications
Schema Versus Data
schema: describes how data is to be structured
defined at set-up time
rarely changes
also called “meta data”
data is actual “instance” of database, changes rapidly
vs. types and variables in programming languages
DBMS
Data Definition Language – DDL
- Easy to define schema
Data Manipulation Language - DML
- query language
Storage management
- Retrieve data from disk automatically for you
Transaction Management
- concurrency control
- recovery
Automate a lot of boring/mundane operations on data
- so that we don’t have to program over and over
- so that we can write complex data manipulations in just a few lines, so that we can concentrate on app logics
Make execution very fast
- so that it scales up to very large data sets
Make concurrent access/modification possible
- so that many users can use the data at the same time
Building an Application with a DBMS
Requirements modeling (conceptual, pictures)
- Decide what entities should be part of the application and how they should be linked.
Schema design and implementation
- Decide on a set of tables, attributes.
- Define the tables in the database system.
- Populate database (insert tuples).
Write application programs using the DBMS
- way easier now that the data management is taken care of.
Querying a Database(查询数据库)
Database Technology
Started from 1960’s
Is an important branch of CS
- Programming language
- OS
- DB
- Network
Is the main component of computer infrastructure
Main Functions of DBMS
Data Definition数据定义
- Provides Data Definition Language to define schema of database
Data Manipulation数据操作
- Provides Data Manipulation Language to manipulate data in database: RETRIEVE, INSERT, DELETE, MODIFY
Database operation
- Security
- Integrity
- Concurrency
- recovery
Toolsets
- Data loader
- Monitor
- Performance tuning tools
(3)Database
- Efficient, convenient, and safe multi-user storage of massive amounts of well organized persistent data
(4)Database Management System
- A Software System that manages database
- Buy, install, set up for particular application
(5)Database System
DBS, information systems that based on database
Consists of database, DBMS, application, and users
硬件<OS<DBMS<App development tools<Database system
2.Development of DB tech
Stages
(1)Manual processing
- Data stored in punched-cards
- Data managed by hand
- No data sharing
(2)File system
- Data stored in files
- Use OS IO interface to access data
- Measures taken to accelerate the data access
- Primary data-program independence
Drawbacks of file systems
Program-Data Dependence
- All programs maintain metadata for each file they use
Data Redundancy (Duplication of data)
- Different systems/programs have separate copies of the same data
- Multiple file formats, duplication of information in different files
- Requires space, effort and result in loss of data & metadata integrity
Limited Data Sharing
- No centralized control of data
- Each application has its own private files & users has little chance to share data outside their own applications
Lengthy Development Times
- For each new application programmers must design their own file formats & descriptions from scratch
Excessive Program Maintenance
- 80% of information systems budget
Difficulty in accessing data
- Need to write a new program to carry out each new task
Integrity problems
- Integrity constraints
- Hard to add new constraints or change existing ones
(3)Database
Main advantages compared to file systems:
data sharing
Less data redundancy
Data- program Independence
Convenient program interface
Efficient data access
Data integrity and data security
Concurrency management
…
Database advantages
Structured data storage
- Organize the data and link them together by their inner relations
- Automatically manage the data relationship
Data sharing
- One copy of data for many applications
- Allow many users to access data simultaneously
Less data redundancy
- 共享数据(对应关系变成表格关系)
Data integrity
- Automatically check the input value of certain data items, according to the data integrity rules
Concurrency并发性
- Isolate the concurrent accesses
- Prevent the dirty use of data
- The modification that may jeopardize the integrity of data
3.Database Architecture
(1)Database Architecture (physical architecture)
The architecture of a database systems is greatly influenced by the underlying computer system on which the database is running:
- Centralized集中的
- Client-server客户端-服务器
- Parallel (multi-processor)并行(多处理器)
- Distributed分布式
(2)Database Users
Users are differentiated by the way they expect to interact with the system
- Application programmers – interact with system through DML calls
- Sophisticated users – form requests in a database query language
- Specialized users – write specialized database applications that do not fit into the traditional data processing framework
- Naive users – invoke one of the permanent application programs that have been written previously. Examples, people accessing database over the web, bank tellers, clerical staff
(3)Database Administrator
Coordinates all the activities of the database system; the database administrator has a good understanding of the enterprise’s information resources and needs.
Database administrator’s duties include:
- Schema definition
- Storage structure and access method definition
- Schema and physical organization modification
- Granting user authority to access the database
- Specifying integrity constraints
- Acting as liaison with users
- Monitoring performance and responding to changes in requirements
Data Management Technology(1) -- Introduction的更多相关文章
- Data Management Technology(5) -- Recovery
Recovery Types of Failures Wrong data entry Prevent by having constraints in the database Fix with d ...
- Data Management Technology(3) -- SQL
SQL is a very-high-level language, in which the programmer is able to avoid specifying a lot of data ...
- Data Management Technology(2) -- Data Model
1.Data Model Model Is the abstraction of real world Reveal the essence of objects, help people to lo ...
- Data Management Technology(4) -- 关系数据库理论
规范化问题的提出 在规范化理论出现以前,层次和网状数据库的设计只是遵循其模型本身固有的原则,而无具体的理论依据可言,因而带有盲目性,可能在以后的运行和使用中发生许多预想不到的问题. 在关系数据库系统中 ...
- Building Applications with Force.com and VisualForce(Dev401)(十六):Data Management: Introduction to Upsert
Dev401-017:Data Management: Introduction to Upsert Module Objectives1.Define upsert.2.Define externa ...
- MySQL vs. MongoDB: Choosing a Data Management Solution
原文地址:http://www.javacodegeeks.com/2015/07/mysql-vs-mongodb.html 1. Introduction It would be fair to ...
- [Windows Azure] Data Management and Business Analytics
http://www.windowsazure.com/en-us/develop/net/fundamentals/cloud-storage/ Managing and analyzing dat ...
- Intel Active Management Technology
http://en.wikipedia.org/wiki/Intel_Active_Management_Technology Intel Active Management Technology F ...
- Data Management and Data Management Tools
Data Management ObjectivesBy the end o this module, you should understand the fundamentals of data m ...
随机推荐
- 获取开发版sha1和开发版sha1
注:前提是你已经安装好jdk和android-sdk,并且将两者的环境变量已经设置完毕,我这里是jdk8 获取开发版sha1(也称作测试版) 1.打开命令行 cd .android 2.输入keyto ...
- Ubuntu18.04搭建测试环境
前言 说一下我的情况,之前由于我的云服务器数据库的root账号密码123456太简单,而在之前的博客中也泄露出了我的云服务器的IP地址,导致有人远程连接我的数据库,删除了项目数据库里的数据只剩下WAR ...
- 微信小程序之启动页的重要性
启动页在APP中是个很常见的需求,为什么对于小程序来说也非常重要呢?首先我描述一下我在开发过程中遇到的一些问题以及解决的步骤,到最后为什么要加启动页,看完你就明白了. 小程序的首页需要展示用户关注的小 ...
- LINUX OS 正常关机失败
描述:LINUX OS运行命令shutdown now显示:Telling INIT to go to single user mode.... 解决方法:运行命令exit重新登录,再运行 hal ...
- java基础|自定义java线程池
线程池创建的参数 在创建线程的各种方式中我们有讲到过通过创建线程池来完成异步操作,但实际上jdk提供的Executors来创建线程池都还有些缺陷,线程池有以下几个参数: 代码节选自源码ThreadPo ...
- weed3-1.hello world
Weed3 一个微型ORM框架(只有0.1Mb哦) 源码:https://github.com/noear/weed3 源码:https://gitee.com/noear/weed3 05年的时候开 ...
- 使用函数计算三步实现深度学习 AI 推理在线服务
目前深度学习应用广发, 其中 AI 推理的在线服务是其中一个重要的可落地的应用场景.本文将为大家介绍使用函数计算部署深度学习 AI 推理的最佳实践, 其中包括使用 FUN 工具一键部署安装第三方依赖 ...
- tomcat的jsp页面超过65535,导致500报错
错误信息 org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: ...
- (八十)c#Winform自定义控件-分割线标签-HZHControls
官网 http://www.hzhcontrols.com 前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. GitHub:https://github.com/kww ...
- C# 委托汇总
委托汇总以及遗留问题: using System; using System.Collections.Generic; using System.Linq; using System.Text; us ...