数据库的设计与建模
- 格式:doc
- 大小:29.50 KB
- 文档页数:4
数据库设计中的维度建模与事实建模在数据库设计中,维度建模和事实建模是两种重要的建模方法。
维度建模和事实建模针对不同的数据类型和数据关系进行建模,在构建数据仓库或者业务智能系统时起到关键的作用。
本文将介绍维度建模和事实建模的概念、原则以及应用场景。
一、维度建模维度建模是指以维度为中心进行数据建模的方法。
维度是一种反映业务面向用户部门的数据元素,是衡量和分析业务过程的关键属性,如时间、地点、产品、客户等。
维度建模的核心概念是"星型模型",其中一个中心表(事实表)与多个维度表相连。
1. 基本原则(1)维度应该具有唯一性和确定性。
(2)维度应该是可测量的属性,并且应该为业务过程的关键属性。
(3)维度之间应该具有层次关系。
2. 维度建模的步骤(1)识别关键业务过程和需求。
(2)识别和定义需要使用的维度。
(3)确定维度之间的层次关系。
(4)设计事实表,并且确定与维度表之间的关系。
(5)设计维度表。
(6)定义维度表之间的关系。
3. 应用场景维度建模适用于需要对业务过程进行度量和分析的场景,如经营决策、市场分析、销售分析等。
维度建模能够提供简洁、易于理解的数据模型,使得用户能够直观地分析和进行决策。
二、事实建模事实建模是指以事实为中心进行数据建模的方法。
事实是与业务过程中的事件和活动相关的数据集合,如销售金额、订单数量等。
事实建模的核心概念是"雪花模型",其中一个中心表(事实表)与多个维度表相连,并且维度表之间可以进一步展开。
1. 基本原则(1)事实应该与业务过程息息相关。
(2)事实应该是可计量和可观察的。
(3)事实应该能够满足系统设计的需求。
2. 事实建模的步骤(1)识别需要度量和分析的业务过程。
(2)确定需要度量的事实,并进行定义和测量。
(3)确定需要使用的维度,并与事实表建立关系。
(4)确定维度之间的关系,并进行细化。
3. 应用场景事实建模适用于需要对业务过程中的事件和活动进行度量和分析的场景,如销售分析、客户行为分析、物流分析等。
数据仓库设计与建模的增量抽取与全量加载的实现方法随着信息技术的迅猛发展,企业对数据的需求越来越大。
数据仓库的设计与建模成为了一种重要的数据管理方法。
在数据仓库的建设过程中,数据的抽取与加载是非常重要的环节。
本文将从增量抽取和全量加载两个方面介绍数据仓库的设计与建模的实现方法。
一、增量抽取的实现方法增量抽取是指在每次数据更新过程中,只抽取最新的增量数据,并将其加载到数据仓库中。
增量抽取的实现方法有以下几种:1. 时间戳增量抽取:在源数据中新增一个时间戳列,用来记录每条数据的更新时间。
在增量抽取过程中,只需查询源数据中大于上次抽取时间的数据,即可获取最新的增量数据。
2. 日志增量抽取:对于一些支持事务的数据库系统,可以通过监控数据库的事务日志来实现增量抽取。
当有新的事务发生时,将其对应的数据抽取并加载到数据仓库中。
3. 主键增量抽取:若源数据表存在主键列,可通过记录上次抽取的最大主键值,然后查询大于该值的新数据,进行增量抽取。
二、全量加载的实现方法全量加载是指将所有源数据都加载到数据仓库中。
全量加载的实现方法有以下几种:1. 全部刷新:每次进行全量加载时,先清空数据仓库中的数据,然后将所有源数据重新加载。
2. 增量刷新:部分全量加载的同时进行,即将新增的数据进行全量加载,而对于已存在的数据,只进行更新操作。
3. 分片加载:将整个数据集划分成多个小的数据片段,每次只加载其中一个数据片段,以避免单次加载过多数据。
三、增量抽取与全量加载的结合应用在实际的数据仓库设计与建模过程中,常常需要结合增量抽取与全量加载来实现数据更新。
通过增量抽取可以减少数据抽取的时间和成本,而全量加载可以保证数据的完整性和一致性。
1. 增量抽取 + 全部刷新:在每次增量抽取后,先清空数据仓库中的数据,然后将增量数据重新加载。
这种方法适用于源数据更新频率较低的情况。
2. 增量抽取 + 增量刷新:在每次增量抽取后,将增量数据进行增量加载,而对于已存在的数据,只进行更新操作。
简述数据库设计的三个步骤
数据库设计的三个步骤是:
1. 需求分析:在这个步骤中,数据库设计师首先要了解用户的需求和数据库应用的目标。
通过与用户进行沟通和讨论,收集和整理用户的需求,包括需要存储的数据类型、数据的关系和约束、数据的操作方式以及用户对数据的查询需求等。
在需求分析阶段,数据库设计师需要对用户的需求进行详细的分析和理解,以确保最终设计的数据库能够满足用户的需求。
2. 概念设计:在概念设计阶段,数据库设计师将用户的需求转化为数据库的概念模型。
概念模型是一个高级抽象的模型,用于描述数据之间的关系和约束。
常用的概念模型包括实体-关系模型(ER模型)和面向对象数据模型(OOD模型)。
在概念设计阶段,数据库设计师需要对用户的需求进行抽象和建模,识别出数据之间的实体、关系和属性,以及实体之间的联系和约束。
概念设计阶段的输出是一个概念模型,用于表示数据库的结构和内容。
3. 逻辑设计:在逻辑设计阶段,数据库设计师将概念模型转化为数据库的逻辑模型。
逻辑模型是一个具体的模型,用于描述数据库的结构和内容。
常用的逻辑模型包括关系模型和层次模型。
在逻辑设计阶段,数据库设计师需要将概念模型转化为逻辑模型的数据模式,包括定义实体、关系和属性的结构和约束。
逻辑设计阶段的输出是一个逻辑模型,用于表示数据库的结构和内容,并且可以用于实现具体的数据库系统。
总结起来,数据库设计的三个步骤是需求分析、概念设计和逻辑设计。
通过这三个步骤,数据库设计师可以根据用户的需求和应用的目标,设计出满足用户需求的数据库结构和内容。
如何设计和实现一个简单的数据库系统设计和实现一个简单的数据库系统是一个复杂而又具有挑战性的任务。
这个数据库系统需要能够存储和管理大量的数据,并且能够支持对数据的快速和高效的访问。
在这篇文章中,我将详细介绍如何设计和实现一个简单的数据库系统,包括数据库的结构、数据存储方式、数据访问方式等方面。
1.数据库系统的结构设计首先,我们需要设计数据库系统的结构。
一个简单的数据库系统通常包括一个或多个数据表,每个数据表包含若干个字段,每个字段包含不同类型的数据。
在设计数据库系统的结构时,我们需要考虑到数据的组织方式、数据之间的关系以及数据访问的需求。
在设计数据库系统的结构时,我们可以采用实体-关系模型(Entity-Relationship Model,简称ER模型)进行建模。
ER模型是一种常用的数据库建模方式,用于描述数据之间的实体实例和实体之间的关系。
通过ER模型,我们可以清晰地描述数据之间的关系,从而更好地组织和管理数据。
在设计数据库系统的结构时,我们还需要考虑到数据的一致性和完整性。
数据一致性是指数据在不同场景下的统一性,数据完整性是指数据的有效性和正确性。
在设计数据库系统的结构时,我们需要考虑到如何确保数据的一致性和完整性,以及如何预防和处理数据的异常情况。
2.数据库系统的数据存储方式设计数据库系统的数据存储方式是数据库系统设计的一个重要方面。
不同的数据存储方式会影响数据库系统的性能和可扩展性。
常见的数据存储方式包括关系型数据库、非关系型数据库、内存数据库等。
关系型数据库是一种经典的数据库存储方式,它将数据存储在表格中,并使用结构化查询语言(SQL)进行数据查询和操作。
关系型数据库通常具有较好的数据一致性和完整性,并且支持复杂的数据查询和事务处理。
然而,关系型数据库在处理大规模数据时通常性能较低,并且难以进行水平扩展。
非关系型数据库是一种近年来兴起的数据库存储方式,它以文档、键值对等非结构化的数据形式进行存储,并且通常采用分布式存储方式进行数据存储和管理。
数据库设计与开发数据库在现代信息化时代发挥着重要的作用,它是组织和管理数据的核心工具。
数据库设计与开发是建立高效、可靠的数据库系统的关键步骤。
合理的数据库设计和灵活的开发方法将有助于提高系统的性能和可维护性。
一、数据库设计数据库设计是指根据需求和目标,将现实世界中的数据组织成数据库系统的过程。
它包括数据建模、规范化、数据库对象的定义等环节。
1. 数据建模数据建模是数据库设计的基础,它通过实体关系图(ER图)来描述现实世界中的实体、属性和它们之间的关系。
在数据建模过程中,需要确定实体的属性、实体间的关系以及实体的主键和外键等信息。
2. 规范化规范化是数据库设计的重要步骤,它通过消除数据冗余和提高数据一致性来提高数据库的性能和可维护性。
常用的规范化方法包括第一范式、第二范式和第三范式等。
3. 数据库对象的定义数据库对象的定义是指根据实体关系图设计和创建数据库中的表、视图、索引、存储过程等对象。
在定义数据库对象时,需要考虑到数据的完整性约束、数据类型、索引优化等因素。
二、数据库开发数据库开发是指根据需求和设计方案,实现数据库系统的过程。
它包括数据库的创建、数据迁移、编写SQL语句以及性能调优等环节。
1. 数据库的创建数据库的创建是通过数据库管理系统(DBMS)提供的工具或命令来完成的。
在创建数据库时,需要指定数据库的名称、字符集、校对集等参数,并设置好权限和安全策略。
2. 数据迁移数据迁移是将现有数据从旧系统或其他数据源导入到新的数据库系统中的过程。
在数据迁移过程中,需要保证数据的完整性和一致性,同时考虑到数据量的大小和性能的要求。
3. 编写SQL语句编写SQL语句是数据库开发的核心内容,它包括数据查询、数据插入、数据更新、数据删除等操作。
编写高效的SQL语句可以提高数据库的响应速度和性能。
4. 性能调优性能调优是数据库开发中重要的一环,它通过对数据库的索引、查询语句、表结构等进行调整和优化,提高数据库的响应速度和并发能力。
数据库的数据模型与建模数据库是用来存储和管理数据的工具,而数据模型是描述数据间关系的一种方式。
在数据库设计过程中,数据模型起着至关重要的作用。
本文将探讨数据库的数据模型与建模,旨在帮助读者更好地理解和应用数据库。
一、数据模型的概念和分类数据模型是用来描述现实世界中实体、属性和关系的方式。
根据不同的需求和目标,数据模型可以分为以下几种常见类型:1. 层次模型层次模型采用树状结构来组织数据,数据之间通过层次关系连接。
它适用于处理具有明显层次结构的数据,例如组织结构、文件系统等。
2. 网状模型网状模型使用图形结构来表示数据间的关系,数据之间可以有多个连接。
这种模型适用于处理复杂的多对多关系,但难以维护。
3. 关系模型关系模型是目前最常用的数据模型,它使用表格和关系来组织数据。
每个表格代表一个实体,而表格内的行则代表实体的每个实例。
关系模型具有良好的可读性和可维护性,常用的SQL语言也是基于关系模型的。
4. 对象模型对象模型将数据和行为封装到一个对象中,通过对象的属性和方法来描述数据。
对象模型适用于处理复杂的应用场景,例如面向对象的编程语言中使用的数据模型。
二、关系模型的建模过程关系模型是数据库设计中常用的数据模型,下面将介绍关系模型的建模过程。
1. 确定实体首先,需要确定数据库中的实体,即要存储的信息对象。
每个实体对应一个表格,表格中的每一列代表实体的一个属性。
2. 确定属性确定实体后,需要确定每个实体的属性。
属性描述了实体的特征或者特性,每个属性对应表格中的一列。
3. 确定实体间的关系接下来,需要确定实体之间的关系。
关系可以是一对一、一对多或多对多关系。
可以使用外键来表示关系,外键将一个表格与另一个表格关联起来。
4. 规范化规范化是对数据库的设计进行优化,以提高数据的存储效率和减少冗余。
规范化的过程包括将表格拆分为更小的表格,消除重复数据等。
5. 设计表格间的连接最后,需要设计表格间的连接方式。
可以使用主键和外键来连接表格,关系型数据库通过这种方式实现表格之间的关联。
学习使用SQL进行数据库设计和建模第一章:介绍数据库设计和建模的基本概念数据库设计是指根据实际需求和业务逻辑,设计出能够满足数据存储和处理需求的数据库结构和模型。
数据库建模是指将现实世界中的事物和关系映射为数据库中的表和关系。
SQL (Structured Query Language)是一种用于管理和操作关系型数据库的标准语言。
第二章:了解SQL的基本语法和特性SQL语言由DDL(数据定义语言)、DML(数据操作语言)、DQL(数据查询语言)和DCL(数据控制语言)四个部分组成。
DDL用于创建和修改数据库和表的结构,DML用于插入、更新和删除数据,DQL用于查询和检索数据,DCL用于设置和管理数据库的访问权限和安全性。
第三章:数据库设计准则和规范在进行数据库设计时,需要遵循一些准则和规范,以确保数据库结构的合理性和可维护性。
例如,要采用适当的数据类型和字段长度,避免冗余数据和数据不一致,设计合适的主键和外键,确保数据完整性和关系的正确性等。
第四章:数据库建模方法和技术数据库建模是将现实世界中的实体、属性和关系映射为数据库中的表和关系的过程。
常用的数据库建模方法包括实体-关系模型(ER模型)、关系模型(RM模型)和规范化等。
在建模过程中,需要确定实体、属性和关系之间的联系,并进行适当的规范化设计,以优化数据库结构和性能。
第五章:使用SQL创建和管理数据库使用SQL语句可以轻松地创建数据库和表,设置表之间的关系和约束。
例如,可以使用CREATE DATABASE语句创建数据库,使用CREATE TABLE语句创建表,使用ALTER TABLE语句修改表结构,使用ADD CONSTRAINT语句添加约束等。
通过使用约束和索引,可以提高查询和操作的效率。
第六章:使用SQL插入、更新和删除数据使用SQL语句可以方便地进行数据的插入、更新和删除操作。
通过使用INSERT INTO语句可以插入新的数据行,使用UPDATE 语句可以更新现有的数据,使用DELETE FROM语句可以删除数据行。
数据库系统的基础知识和设计数据库系统是现代信息管理的重要工具,它以数据为核心,通过建立、维护和利用数据库来解决数据管理和信息处理的需求。
本文将介绍数据库系统的基础知识和设计原则,以帮助读者全面了解和掌握数据库系统。
一、数据库系统的基础知识1. 数据库概述数据库是一个有组织的、可共享的数据集合,它以一定的数据模型组织数据,并提供了数据的存储、管理和访问功能。
常见的数据库系统有关系型数据库、面向对象数据库和NoSQL数据库等。
2. 数据模型与关系模型数据模型是对现实世界的抽象表示,关系模型是其中最常用的一种数据模型。
关系模型使用二维表格的形式表示数据,并通过关系代数和关系演算来进行数据操作。
3. 数据库管理系统数据库管理系统(DBMS)是管理数据库的软件系统,它负责数据的存储、安全性、完整性、并发控制和恢复等方面的管理工作。
常见的DBMS有Oracle、MySQL、SQL Server等。
4. 数据库设计数据库设计是建立数据库系统的过程,它包括概念设计、逻辑设计和物理设计三个阶段。
概念设计阶段定义了数据库的整体结构,逻辑设计阶段将概念模型转换为关系模型,物理设计阶段确定了数据的存储方式和索引策略。
二、数据库设计原则1. 数据库范式数据库范式是数据设计时需要满足的一些规范,它可以提高数据的一致性、减少冗余和提高查询效率。
常见的范式有第一范式(1NF)、第二范式(2NF)和第三范式(3NF)等。
2. 主键与外键主键是用来唯一标识一条记录的属性或属性组合,它具有唯一性和非空性。
外键是关系模型中一个表中的字段,它引用另一个表中的主键,用于建立表之间的关系。
3. 索引设计索引是数据库中用于快速查找数据的结构,它可以提高查询效率。
在设计索引时,需要考虑选择合适的字段作为索引字段、确定索引类型和设置适当的索引顺序等。
4. 视图设计视图是虚拟的表,它是由基本表中的数据计算、检索或汇总得到的。
视图可以简化数据访问、保护数据安全和提高数据的独立性。
数据库设计中的维度建模与关系模型在数据库设计中,维度建模和关系模型是两种重要的方法。
它们分别在不同的场景下发挥着重要的作用。
本文将对这两种方法进行详细的介绍和比较分析。
1. 维度建模维度建模是一种面向主题的数据库设计方法,它的核心思想是将数据按照不同的主题进行分类,并建立一个具有层次结构的数据模型。
在维度建模中,通常采用星型模型(Star Schema)或雪花模型(Snowflake Schema)来表示数据之间的关系。
星型模型是维度建模中最简单的模型之一,它由一个事实表(Fact Table)和多个维度表(Dimension Table)组成。
事实表存储了与某个特定的业务主题相关的事实数据,而维度表用于描述事实表中的数据。
维度表是一个包含了该维度的所有属性(如地理位置、时间、产品等)的表格,而事实表中的数据与维度表中的数据通过外键关联起来。
雪花模型基于星型模型,通过进一步拆分维度表,将一些维度表的属性再次细分成更小的维度表。
这样可以使得数据模型更加灵活,但同时也增加了数据冗余的可能性。
维度建模的优点在于:a. 易于理解和使用。
维度建模采用简单的模型结构来表示数据之间的关系,使得用户可以快速理解数据模型并进行查询和分析。
b. 高效的查询性能。
维度建模中的星型模型适用于大多数查询场景,可以通过索引的方式快速检索数据。
2. 关系模型关系模型是一种广泛应用的数据模型,它用关系(表)来表示数据之间的关系,并利用关系之间的连接来实现数据查询和处理。
关系模型使用结构化查询语言(SQL)进行数据操作。
在关系模型中,数据被组织成多个表,每个表都有列(属性)和行(记录)。
表与表之间通过外键关系进行连接。
关系模型使用范式(Normalization)来规范化数据,以减少数据冗余和提高数据的一致性。
关系模型的优点在于:a. 灵活性和扩展性。
关系模型可以根据具体需求进行灵活的数据模型设计,支持数据结构的变化和扩展。
b. 数据完整性和一致性。
数据库建模与实现过程随着信息技术的不断发展,数据的处理和管理已经成为现代社会中不可或缺的一部分。
而数据库作为一种高效的数据管理工具,已经被广泛应用于各个领域。
数据库的建模与实现过程是数据库开发的关键环节,本文将对此进行详细介绍。
一、数据库建模数据库建模是指根据实际需求,将数据转化为逻辑模型的过程。
数据库建模主要包括以下几个步骤:1.需求分析需求分析是数据库建模的第一步,它是确定数据库范围、功能和性能的重要环节。
在需求分析中,需要考虑以下几个方面:(1)数据来源:确定数据库中所需的数据,包括数据的类型、数量和格式等。
(2)数据存储:确定数据存储的方式,包括数据的存储位置、存储方式、存储容量等。
(3)数据访问:确定数据的访问方式,包括数据的查询、修改、删除等。
(4)数据安全:确定数据的安全性要求,包括数据的备份、恢复、加密等。
2.概念设计概念设计是根据需求分析结果,将数据转化为概念模型的过程。
概念设计主要包括以下几个步骤:(1)实体识别:识别数据中的实体,即数据中具有独立存在意义的对象。
(2)属性识别:确定实体的属性,即实体具有的特征。
(3)关系建立:确定实体之间的关系,包括一对一、一对多、多对多等关系。
(4)概念模型:将实体、属性和关系等元素组合成概念模型,以图形方式表示。
3.逻辑设计逻辑设计是在概念模型基础上,将概念模型转化为逻辑模型的过程。
逻辑设计主要包括以下几个步骤:(1)关系模式:将概念模型中的实体、属性和关系映射为关系模式,即数据表。
(2)主键和外键:确定每个数据表的主键和外键。
(3)规范化:对数据表进行规范化,以消除冗余数据和数据依赖等问题。
(4)逻辑模型:将关系模式、主键和外键等元素组合成逻辑模型,以图形方式表示。
二、数据库实现数据库实现是指根据逻辑模型,将数据库建立起来的过程。
数据库实现主要包括以下几个步骤:1.数据库管理系统选择数据库管理系统是实现数据库的关键工具,根据实际需求选择合适的数据库管理系统非常重要。
基于PowerDesigner合同管理系统的数据库设计与建模摘要:本文以某企业的合同管理系统为例,着重介绍了基于powerdesigner进行数据库设计与建模。
从用户数据库的设计阶段到用户基于powerdesigner的建模阶段,最后在sql server2005中执行脚本,形成数据库中的数据表。
关键词:数据流图概念模型物理模型合同管理系统
一、系统需求分析
合同管理软件一般包括合同起草、合同审批、文本管理、履约监督、结算安排、智能提醒合同收付款、项目管理、合同结款情况统计分析、报表输出和决策支持等功能模块。
针对某企业对合同管理的具体需求,将本系统的主要功能归纳如下:
1.基础设置模块:包括合同类型、合同性质、合同分组的设置、审批流的设置和用户管理等几部分,实现对合同文件的基础信息的设置和管理。
2.管理模块:包括对待审批的合同的添加和已审批的合同的归档管理。
3.审批模块:实现对合同的审批操作。
4.查询模块:实现对合同的审批情况和归档情况以及付款、实施情况进行综合查询。
5.审核模块:实现部门负责人对合同进行审核。
二、数据库设计
1.数据流图。
数据流图主要是用来说明数据流的一个流向,是数据在系统内的传输途径,数据流图从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的变换过程。
数据流图的基本元素包括数据流、加工、数据存取文件、输入数据的源点和输出数据的汇点4类。
根据系统初步需求,管理人员、经办人、部门负责人、财务部、主管领导等都会产生数据,通过使用本系统得到所需的查询统计结果。
因此管理人员、经办人、部门负责人、财务部、主管领导等是数据输入的源点和数据输出的汇点。
系统中需要存储各类用户信息、合同基本信息等,因此用户信息、合同基本信息等是数据存储文件,根据以上分析结果,合同管理系统的数据流图如图1。
2.数据字典。
三、基于powerdesigner 得出物理数据模型
powerdesigner是sybase公司著名的产品,是dba和软件架构师设计的利器,它提供了一个完整的建模解决方案。
用powerdesigner 数据建模是一种很好的软件工程实践,它能够帮助设计人员在正式编写程序代码之前规划数据需求,不仅加速了开发的过程,也向最终用户提供了管理和访问项目信息的一个有效结构。
cdm(conceptualdatamodel)概念数据模型是传统数据库分析工具e-r图的取代建模工具,广泛应用于企业级开发中。
物理数据模型pdm(physical data model)是根据以上概念数据模型生成的,它指定了具体dbms的实现方式,通过它构建的数据库能充分发挥每种dbms自身的特性。
这里将指定ms sql server 2005为目标数据库。
在powerdesigner中,根据概念模型cdm生成物理模型pdm。
在菜单栏中“工具—创建物理数据模型”,dbms更改为:microsoft sql 2005。
得到pdm如图2所示:
四、生成数据库中的数据表
powerdesigner可根据所选的数据库模型生成sql命令或直接修改数据库模式,它适合于多种不同的数据库类型,例如mysql 、oracle 、 db2 、 sqlserver 、 sybase等。
运用powerdesigner 可以直接在数据库中建立数据表、触发器、规则等,还可以利用建模工具通过odbc直接完成对数据库的建立与修改,数据库改动还允许以增量方式进行(例如,alter命令或创建命令,以及对特定表的更新命令),这对建立数据库及维护数据库都带来了极大的方便。
1.基于powerdesigner得出测试数据生成脚本。
根据物理模型pdm 生成脚本,在菜单栏“数据库—生成数据库”,即可得到所需的.sql
文件。
2.在sql server2005中执行脚本形成数据库中的数据表。
在sql server2005中导入脚本文件生成数据表中的数据。
五、结束语
使用powerdesigner这个数据库建模软件,学习简单、使用方便、设计过程思路清晰、准确率高。
这种从用户的需求分析到数据库中生成数据表,可利用现在流行的开发软件进行编写系统,是一个很科学和简单的过程,从而使编写的系统更加符合科学的理念和用户的需求。
参考文献:
[1]黄俊南,李小丽,蒋绵绵.运用建模技术对制造业售后管理信息系统架构的设计与实现.计算机与现代化,2012
[2]刘涛,周晓锋.基于powerdesigner高校进修人员系统的建模研究.计算机技术与发展,2009
[3]吴嵘.基于powerdesigner的数据库设计与建模.电脑知识与技术,2009。