对象数据库技术在高能物理中的应用
Download
Report
Transcript 对象数据库技术在高能物理中的应用
数据库技术在高能物理中的应用
马 梅
2001年6月7日
●
●
●
●
基本概念及术语
Objectivity/DB简介
数据库技术在高能物理中的应用
结束语
基本概念及术语
数据库
DB(Data Base)
按一定组织方式存储在一起的相关数据的集合
为各种用户所共享
最小冗余度,
数据间联系密切,
有较高的数据独立性。
数据库系统
DBS(Data Base System)
存储介质处理对象和管理系统的集合体,是实现有组
织地、动态地存储大量相关联数据,方便多用户访问
的计算机软件、硬件资源组成的计算机系统。
广义讲,数据库系统是由数据库、计算机硬件、计算
机软件和数据库管理系统四大部分组成。
狭义讲,数据库系统是由数据库、数据库管理系统和
数据库管理员组成。
数据库管理系统
DBMS(Data Base Management System)
数据库系统的核心部分,管理数据的软件系统。
由三部分功能组成:
数据描述语言及其编译程序;
数据操作语言及其编译程序;
数据库管理实用程序。
完成对数据库的建立、查询、更新及各种数据控制。
基于某种数据模型,又分为层次数据库管理系统、网
状数据库管理系统、关系数据库管理系统和对象数据
库管理系统等。
对象关系数据库
ORDB
对象关系模型是新发展起来的一种数据模型,是关系
模型和对象模型的一种融合。
通过增加面向对象程序设计语言的使用而实现的,很
大程度上会导致与数据库管理系统软件失谐。
失谐原因是由于构建数据的方发与构建数据库方法不
相同,程序员要写大量的程序,将程序中的数据写入
数据库时要进行转换,同样将数据从数据库读出时,
要写出程序所需要的数据形式。
其价值在于用户可以继续使用已有的系统,同时由可
以并行使用面向对象系统。
面向对象模型
object-oriented model
基于对象概念的新型数据库模型,其研究起源于70年
代末80年代初。
目的是克服关系模型对某些数据类型的限制,关系数
据库难于处理大数据量和复杂数据类型问题。
优势在于对系统低层控制的能力,赋予程序员具有控
制数据如何被存储和操作的能力,比使用一般的SQL更有
效。但增加了第三方厂商生产适于OODBMS产品的困难。
在OO模型中信息被存储为永久对象,而不是一个表中
的行,因此可以用程序员指定的方式对数据进行操作,
可以按需求保留磁盘空间。
不具有像SQL这样高级语言的支持
第一个OO模型的数据库商品软件诞生于80年代中期,
到了90年代OODBMS软件才逐渐多起来。
面向对象数据库管理系统
OODBMS
建立在面向对象模型的基础之上
面向对象程序设计方法与数据库技术相结合的产物,
用以支持非常规应用领域。
满足两大条件:
①支持一个面向对象数据模型内核;
②支持传统数据库的所有数据库成分,并为与面向对
象数据类型内核语义一致,而作适当的语义扩充和修
改。
向用户提供定义复杂数据结构和用户自定义数据类型
的支持。提供将一个面向对象数据库转换成另一个同
模式的面向对象数据库的操作。
分布式数据库
distributed database
逻辑上属于同一系统,而在物理上分布在计算机网络
的不同结点上一组结构化的数据集合,
分布式数据库强调两点:
① 数据分布性,即数据不是驻留在单一结点上,而是
存储在各个网络结点上的局部数据库的集合;
② 数据间的逻辑联系,所有数据都具有将它们联系在
一起的特性,网络中的每个结点都具有完成局部应用
的自治处理能力,而每个结点也能参与执行至少一个
通过通信系统存取多个结点上数据的全局应用。
建立在以局域网连接的一组工作站上,也可以建立在
广域网的环境中。
分布式数据库(续一)
distributed database
分布式数据库有同构和异构之别
同构数据库(homogeneous database)是指每个结点上
使用的相同的数据库管理系统并有相同的应用,有级别
不同局部自治能力(local autonomy)。
异构数据库(heterogeneous database)具有很强的局
部自治能力,每个节点都有自己的局部用户、数据、应
用程序和数据处理能力,一个系统内可以不同的数据库
管理系统组成,这种类型的分布式数据库也常联盟系统
(federated system or a federation.)。由于它的可
伸缩型和性价比变得越来越普及。
分布式数据库(续二)
distributed database
分布式数据库与集中式数据库主要区别在于:
① 极少强调或根本不存在任何形式的集中控
制,而强调各个结点的高度自治性;
② 向用户提供数据的分布透明性,应用程序
的编写就如同数据库在本地机上一样;
③ 分布式数据库允许存在数据冗余,以提高
应用的局部性(应尽可能地在本地机执行),
以及数据的可获得性。与研究集中式数据库技
术时强调减少数据冗余不一样。
分布式数据库管理系统
DDBMS (Distributed Data Base
Management System)
支持分布式数据库的建立和维护的软件系统。
DDBMS由四个基本部分组成:
① 局部数据库管理系统,负责局部数据库的
管理和维护;
② 数据通信子系统,负责各站点之间的数据
通信;
③ 数据字典;
④ 分布数据管理子系统,按协议共同实现分
布数据库的管理和用户应用程序的执行。
分布式数据库管理系统(续)
DDBMS (Distributed Data Base
Management System)
主要功能:
① 实现应用程序对数据库的远程获取
② 决定分布透明性的级别
③ 支持数据库的管理和控制
④ 管理事务的并发控制和恢复
多媒体数据库
multimedia database
由文本、图像、声频和视频等多种介质组织起
来的数据库,也称为多介质数据库。
它与传统数据库的差异来自介质的多样性
把能够可以操作、管理和维护多种媒体形式数
据库的软件系统称为多媒体数据库管理系统。
由于文件大小以及数据类型的复杂性,多媒体
数据库管理系统的开发面临很多困难。
事务
transaction
数据库访问的一个不可再分割的单位,是一个应
用或一个应用的一部分。事务具有以下特征:
①一个事务要么被全部执行,要么完全不执行,
当一个事务被不正常中断时,它执行的部分结
果也要被取消;
②如果并发执行几个事务,其执行结果必须与以
某种次序串行执行它们的结果相同;
③一个未完成事务不能在其提交前把结果暴露给
其他事务。
④一个事务提交(完成)后,事务的操作结果应永
不丢失,且与后续发生的故障无关;
Objectivity/DB简介
关于Objectivity公司
Objectivity/DB产品系列
Objectivity/DB 性能
Objectivity/DB体系结构
ODBMS、RDBMS、ORDBMS
性能比较
关于Objectivity公司
Founded in 1988
Objectivity has emerged as the market leader in
high-performance database engines for
sophisticated applications.
As a founding member of ODMG
Objectivity plays a leadership role in helping
develop these future standards.
As a key role in the Object
Management Group (OMG)
Objectivity/DB产品系列
(续一)
Objectivity/DB Product Group
Objectivity/DB is the core database product .
-providing database servers
-a set of administrative tools.
Objectivity/FTO(Fault Tolerant Option)
Objectivity/ DRO (Data Replication Option)
Objectivity/IPLS(In-Process Lock Server)
Objectivity/OFS(Open File System)
Objectivity/DB Secure Framework
Objectivity/DB产品系列
(续二)
Objectivity/C++ Product Group
Objectivity/C++
-provides a programming interface that is
transparent to native C++ compilers.
Objectivity/DDL(Data Definition Language )
Objectivity/C++ Active Schema
Objectivity/C++ STL (Standard Template Library)
Objectivity/C++ Spatial Index Framework
Objectivity/DB产品系列
(续三)
Objectivity/JAVA
- provides full support for Java
Objectivity/ Smalltalk
- extends standard Smalltalk
• - provides many classes and methods you can use
when developing Smalltalk object database
applications.
Objectivity/DB产品系列
(续四)
Objectivity/SQL++ Product Group
Objectivity/SQL++
- full support of ANSI SQL1989 and entry level SQL
1992, partial support intermediate level SQL1992.
- can embed SQL statements within a C++application.
- applications can use standard SQL syntax to access
and manipulate objects in Objectivity/DB database.
- supports object extensions to SQL
- supports stored procedures and triggers
- provides an Objectivity/SQL++ ODBC Driver
Objectivity/DB性能
is a distributed object database management
system (ODBMS).
is ideal for applications that require complex data
models.
supports large numbers of users
provides high-performance access to large volumes
of physically distributed data.
manages data transparently to high-end
applications.
Objectivity/DB性能
(续一)
Its distributed database architecture provides
scalability as well as performance.
supports client/server and mixed-tier application.
integrates easily with application software.
allows to directly store and manage objects
through standard language interfaces, including
C++、Java,、Smalltalk and SQL, using traditional
programming techniques and tools.
Objectivity/DB性能
(续二)
For 64-bit architectures:
can access up to approximately 2 63 (or 10 19 ) bytes
(10,000,000 terabytes) of data and up to 2 58
(or 10 17 ) objects.
For 32-bit machines,:
can access up to 2 47 (or 10 14 ) bytes (100 terabytes)
of data and up to 2 42 (or 10 13 ) objects.
Future releases of Objectivity/DB will
expand the addressable space to the exabyte
range.
Objectivity/DB性能
(续三)
Scalable Architecture
Federation Concept
Data Replication with Autonomous
Partitions
Full support for heterogeneous access
All Unix platforms (incl. Linux) and
Windows/NT can transparently
interoperate
数据库技术
在高能物理中的应用
CERN
SLAC
FERMI
KEK
DESY
CERN (CERN/IT/ASD )
CERN/IT/ASD
- Information Technology
- DivisionApplication Software & Databases
Services provided by ASD Group
1.
2.
3.
4.
CERNLIB: CERN Program Library
PAW: Physics Analysis Workstation
GEANT: Detector Description and Simulation Tool
GEANT4:Object-Oriented Toolkit for Simulation
in HEP
5. ORACLE: Central Database Support
CERN (CERN/IT/ASD续)
ASD Group Project
• 1. LHC++: Libraries for HEP Computing.
LHC++ proposes a high-level physics
analysis environment for LHC-era
experiments. It uses object technology,
in particular C++.
2. RD45: A Persistent Object Manager
for HEP
GEAN4 software
CERN
Named RD44 project
a world-wide collaboration
about 100 scientists participating
more than 10 experiments in Europe,
Russia, Japan, Canada and the
United States.
Geant4 exploits advanced Software
Engineering techniques and Object
Oriented technology (OOA/OOD)
ORACLE 数据库
CERN
Database technology first made an impact at CERN
in 1982.
used for staff management、resource allocation and
other functions
storage of calibration data by the L3 experiment
first
with the LEP accelerator:
ACCIS( ACCelerator Information System) contains
information about the accelerator
ABSS (Automated Beam Steering and Shaping)
contains calibration data.
tapes information database
Technology Database for people outside CERN
The current license contract ends in 2003.
Objectivity/DB
CERN
• Objectivity/DB introduced by RD45
project in 1995
• with the needs of LHC.
• Objectivity/DB was adopted as an
evaluation of ODBMS technology.
• After extensive testing it was
brought into more wide spread use.
RD45 Project
Started in 1995 to find solutions
to problems of LHC data
management
Enormous data volumes & rates,
project lifetime
Proposed solutions being
adopted by current experiments
Objectivity/DB & HPSS
HEP Data Processing
• “Raw” data: acquired or simulated
• “Reconstructed” into tracks,
energy clusters etc.
• “Reduced” for statistical analysis
ATLAS Detector
35 metres
Why an ODBMS?
• Key requirements could not be met by language
extensions, light-weight object managers
• Strong requirement for consistent interface
– “The ODMG language bindings are based on one fundamental
principle: the programmer should perceive the binding as a
single language for expressing both database and programming
operations, not two separate languages with arbitrary
boundaries between them.”
Use of an Objectivity/DB federation met our main
requirements
– Enhancements required but (apparently) sufficient flexibility in
architecture to accommodate these
Why Objectivity/DB?
• We looked at:
– Poet, ObjectStore, Objectivity, O2 and Versant
• Scalable Architecture
– Federation Concept
– Data Replication with Autonomous Partitions
• Full support for heterogeneous access
– All Unix platforms (incl. Linux) and Windows/NT
can transparently interoperate
• Language Bindings for C++ and Java
• Efficient Implementation
The Large Hadron Collider
• Lifetime: 2005-2025 (production)
• ~2000 people, ~200 institutes, ~20
countries per experiment
Time interval
ATLAS/CMS
ALICE
1 second
100 MB
1.6 GB
1 minute
6 GB
100 GB
360 GB
8.6 TB
60 TB
260 TB
6 TB
140 TB
1 PB
1
1
1
1
hour
day
week
month
1 year (100 days)
Total LHC (20 yrs)
1 PB
100 PB
CMS
• General-purpose LHC
experiment
• Data rates of
100MB/second
• Data volume of 1PB/year
• Two test beams
projects based on
Objectivity
successfully
completed.
• Database used in the
complete chain:
Test beam DAQ, Reconstruction and
Analysis
ALICE
Heavy ion
experiment at LHC
Studying ultrarelativistic nuclear
collisions
Relatively short
running period
– online 1
month/year
– 1 PB/month
Extremely high data
rates
– 1.5GB/s
LHCb
• Dedicated
experiment
looking for CPviolation in the
B-meson
system.
• Lower data
rates than
other LHC
experiments.
• Total data
volume around
400TB/year.
SLAC - BaBar
• start taking data in
1999
• is used to store
event, simulation,
calibration and
analysis data
Expected amount
200TB/year
• majority of storage
managed by HPSS
• Mock Data Challenge
FERMILab
Oracle
Used by CDF and D0 Run II for Data Catalogs and
storing of Calibration Information.
MISCOMP(The Division Information Management
System )
Objectivity
Used by SDSS and CMS
Public Domain Databases
Used by small experiments
MS ACCESS
Training classes available
MS SQL and MYSQL are in use
CERES/NA45
• Heavy ion experiment at the
SPS
• Study of e+e- pairs in
relativistic nuclear collisions
• Successful use of
Objectivity/DB from a
reconstruction farm (32 Meiko
CS2 nodes)
• Expect to write 30 TB of raw
data during 30 days of data
taking
• Reconstructed and filtered data
will be stored using the
Objectivity production service.
COMPASS
• to begin full data taking
in 2000
• Some 300TB/year of raw
data will be acquired at
rates up to 35MB/s.
• Analysis data to be
stored on disk, requiring
3-20TB of disk space.
• Some 50 concurrent
users
• Rely on the Objectivity
production service at
CERN
结束语
数据库技术的发展,使它成为现代信息技术的
重要组成部分,成为现代计算机信息系统和计
算机应用系统的基础和核心。在衡量一个国家
的信息化的程度时,其数据库的建设规模、数
据库信息量的大小和使用程度已成为重要的标
志之一,同样也是衡量一个现代化研究所的重
要标志,与世界高能物理接轨,不仅体现在加
速器、探测器的建造上,也应体现在先进计算
机技术的研究、利用和付注实施上,只有这几
大要素都抓好了,才能算得上一流的高能物理
研究所。
谢谢!