管理员参考大全
rootdbs根数据库空间,是数据库服务器创建时的初始数据库空间,它包含保留页和内部页,它们描述和跟踪所有物理和逻辑存储单元
tempdbs临时数据库空间
为临时表的存储而保留的数据库空间
logdbs 逻辑日志空间--在数据库初始化后将逻辑日志从rootdbs移到新的空间
phydbs物理日志空间--在数据库初始化后将物理日志从rootdbs移到新的空间
idxdbs一般数据空间--根据需要创建
workdbs一般数据空间--根据需要创建
通常数据库分为关系型数据库和非关系型数据库,关系型数据库的优势到现在也是无可替代的,比如MySQL、SQLServer、Oracle、DB2、SyBase、Informix、PostgreSQL以及比较小型的Aess等等数据库,这些数据库支持复杂的SQL *** 作和事务机制,适合小量数据读写场景;但是到了大数据时代,人们更多的数据和物联网加入的数据已经超出了关系数据库的承载范围。
大数据时代初期,随着数据请求并发量大不断增大,一般都是采用的集群同步数据的方式处理,就是将数据库分成了很多的小库,每个数据库的数据内容是不变的,都是保存了源数据库的数据副本,通过同步或者异步方式保证数据的一致性,每个库设定特定的读写方式,比如主数据库负责写 *** 作,从数据库是负责读 *** 作,等等根据业务复杂程度以此类推,将业务在物理层面上进行了分离,但是这种方式依旧存在一定的负载压力的问题,企业数据在不断的扩增中,后面就采用分库分表的方式解决,对读写负载进行分离,但是这种实现依旧存在不足,且需要不断进行数据库服务器扩容。
NoSQL数据库大致分为5种类型
1、列族数据库:BigTable、HBase、Cassandra、AmazonSimpleDB、HadoopDB等,下面简单介绍几个
(1)Cassandra:Cassandra是一个列存储数据库,支持跨数据中心的数据复制。它的数据模型提供列索引,log-structured修改,支持反规范化,实体化视图和嵌入超高速缓存。
(2)HBase:ApacheHbase源于Google的Bigtable,是一个开源、分布式、面向列存储的模型。在Hadoop和HDFS之上提供了像Bigtable一样的功能。
(3)AmazonSimpleDB:AmazonSimpleDB是一个非关系型数据存储,它卸下数据库管理的工作。开发者使用Web服务请求存储和查询数据项
(4)ApacheAumulo:ApacheAumulo的有序的、分布式键值数据存储,基于Google的BigTable设计,建立在ApacheHadoop、Zookeeper和Thrift技术之上。
(5)Hypertable:Hypertable是一个开源、可扩展的数据库,模仿Bigtable,支持分片。
(6)AzureTables:WindowsAzureTableStorageService为要求大量非结构化数据存储的应用提供NoSQL性能。表能够自动扩展到TB级别,能通过REST和ManagedAPI访问。
2、键值数据库:Redis、SimpleDB、Scalaris、Memcached等,下面简单介绍几个
(1)Riak:Riak是一个开源,分布式键值数据库,支持数据复制和容错。(2)Redis:Redis是一个开源的键值存储。支持主从式复制、事务,Pub/Sub、Lua脚本,还支持给Key添加时限。
(3)Dynamo:Dynamo是一个键值分布式数据存储。它直接由亚马逊Dynamo数据库实现;在亚马逊S3产品中使用。
(4)OracleNoSQLDatabase:来自Oracle的键值NoSQL数据库。它支持事务ACID(原子性、一致性、持久性和独立性)和JSON。
(5)OracleNoSQLDatabase:具备数据备份和分布式键值存储系统。
(6)Voldemort:具备数据备份和分布式键值存储系统。
(7)Aerospike:Aerospike数据库是一个键值存储,支持混合内存架构,通过强一致性和可调一致性保证数据的完整性。
3、文档数据库:MongoDB、CouchDB、Perservere、Terrastore、RavenDB等,下面简单介绍几个
(1)MongoDB:开源、面向文档,也是当下最人气的NoSQL数据库。
(2)CounchDB:ApacheCounchDB是一个使用JSON的文档数据库,使用Javascript做MapRece查询,以及一个使用>
(3)Couchbase:NoSQL文档数据库基于JSON模型。
(4)RavenDB:RavenDB是一个基于NET语言的面向文档数据库。
(5)MarkLogic:MarkLogicNoSQL数据库用来存储基于XML和以文档为中心的信息,支持灵活的模式。
4、图数据库:Neo4J、InfoGrid、OrientDB、GraphDB,下面简单介绍几个
(1)Neo4j:Neo4j是一个图数据库;支持ACID事务(原子性、独立性、持久性和一致性)。
(2):一个图数据库用来维持和遍历对象间的关系,支持分布式数据存储。
(3):是结合使用了内存和磁盘,提供了高可扩展性,支持SPARQ、RDFS和Prolog推理。
5、内存数据网格:Hazelcast、OracleCoherence、TerracottaBigMemorry、GemFire、Infinispan、GridGain、GigaSpaces,下面简单介绍几个
(1)Hazelcast:HazelcastCE是一个开源数据分布平台,它允许开发者在数据库集群之上共享和分割数据。
(2)OracleCoherence:Oracle的内存数据网格解决方案提供了常用数据的快速访问能力,一致性支持事务处理能力和数据的动态划分。
(3)TerracottaBigMemory:来自Terracotta的分布式内存管理解决方案。这项产品包括一个Ehcache界面、Terracotta管理控制台和BigMemory-Hadoop连接器。
(4)GemFire:VmwarevFabricGemFire是一个分布式数据管理平台,也是一个分布式的数据网格平台,支持内存数据管理、复制、划分、数据识别路由和连续查询。
(5)Infinispan:Infinispan是一个基于Java的开源键值NoSQL数据存储,和分布式数据节点平台,支持事务,peer-to-peer及client/server架构。
(6)GridGain:分布式、面向对象、基于内存、SQLNoSQL键值数据库。支持ACID事务。
(7)GigaSpaces:GigaSpaces内存数据网格能够充当应用的记录系统,并支持各种各样的高速缓存场景。
1IBM的DB2
作为关系数据库领域的开拓者和领航人,IBM在1997年完成了SystemR系统的原型,1980年开始提供集成的数据库服务器——System/38,随后是SQL/DSforVSE和VM,其初始版本与SystemR研究原型密切相关。DB2forMVSV1在1983年推出。该版本的目标是提供这一新方案所承诺的简单性,数据不相关性和用户生产率。1988年DB2forMVS提供了强大的在线事务处理(OLTP)支持,1989年和1993年分别以远程工作单元和分布式工作单元实现了分布式数据库支持。最近推出的DB2UniversalDatabase61则是通用数据库的典范,是第一个具备网上功能的多媒体关系数据库管理系统,支持包括Linux在内的一系列平台。
2Oracle
Oracle前身叫SDL,由LarryEllison和另两个编程人员在1977创办,他们开发了自己的拳头产品,在市场上大量销售,1979年,Oracle公司引入了第一个商用SQL关系数据库管理系统。Oracle公司是最早开发关系数据库的厂商之一,其产品支持最广泛的 *** 作系统平台。目前Oracle关系数据库产品的市场占有率名列前茅。
3Informix
Informix在1980年成立,目的是为Unix等开放 *** 作系统提供专业的关系型数据库产品。公司的名称Informix便是取自Information和Unix的结合。Informix第一个真正支持SQL语言的关系数据库产品是InformixSE()。InformixSE是在当时的微机Unix环境下主要的数据库产品。它也是第一个被移植到Linux上的商业数据库产品。
4Sybase
Sybase公司成立于1984年,公司名称“Sybase”取自“system”和“database”相结合的含义。Sybase公司的创始人之一BobEpstein是Ingres大学版(与System/R同时期的关系数据库模型产品)的主要设计人员。公司的第一个关系数据库产品是1987年5月推出的0。Sybase首先提出Client/Server数据库体系结构的思想,并率先在SybaseSQLServer中实现。
5SQLServer
1987年,微软和IBM合作开发完成OS/2,IBM在其销售的OS/2系统中绑定了OS/2DatabaseManager,而微软产品线中尚缺少数据库产品。为此,微软将目光投向Sybase,同Sybase签订了合作协议,使用Sybase的技术开发基于OS/2平台的关系型数据库。1989年,微软发布了SQLServer10版。
6PostgreSQL
PostgreSQL是一种特性非常齐全的自由软件的对象——关系性数据库管理系统(ORDBMS),它的很多特性是当今许多商业数据库的前身。PostgreSQL最早开始于BSD的Ingres项目。PostgreSQL的特性覆盖了SQL-2/SQL-92和SQL-3。首先,它包括了可以说是目前世界上最丰富的数据类型的支持;其次,目前PostgreSQL是唯一支持事务、子查询、多版本并行控制系统、数据完整性检查等特性的唯一的一种自由软件的数据库管理系统
7mySQL
mySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。在2008年1月16号被Sun公司收购。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
INFORMIX提供了一个基于成本的查询优化器,执行update statistics语句的作用就是将您创建的数据库表的有关统计信息更新到系统sysmaster的相关表中(如systables、syscolumns、sysindexes、sysdistrib、sysprocplan等),以便查询优化器选择最佳的执行路径。当sysmaster库中没有相应的统计信息,或者统计信息不十分准确时,优化器便无法制定一个行之有效的查询策略,其结果必然是进行大量极其可怕的顺序扫描,产生严重的性能问题。
因此,当您重新装载数据或者对数据库表进行了大量的更新 *** 作后,应该及时执行update statistics。也许您会发现,数据库一些参数配置的不合理可能使数据库效率降低百分之几,但如果您没有定期执行update statistics的话。数据库的性能则可能降低几到十几倍。
informix初始化与配置
Dbspace 为逻辑上的数据库管理单元,实际上对应一个或者多个 chunk,初始化 informix 数据库的时候,必须首先为系统建立一个 Dbspace 和该Dbspace所关联的 chunk。
系统初始化:
informix 安装目下建立一个目录dbs,新建一个文件 rootchk,并更改该文件的访问权限为 660,,#chmod 660 rootchk[ENTER],之后,在控制台输入#onmonitor 进入系统配置界面->选择 Parameters->Initialize,在 "RootName" 中输入 rootdbs, 在Primary Path中输入刚才创建的chunk文件rootchk。即:将 rootdbs 关联到 rootchk 上。
新建Dbspace:
首先在数据存储目录,$INFORMIXDIR/dbs 下建立一个新文件,testchk,更改访问权限为:660
然后控制台中:
#onmonitor
->Dbspaces->Create
输入 Dbspace Name
Full Pathname 中输入刚刚创建的 chunk 文件的全路径:/opt/informix/dbs/testchk
[ESC]
这样就创建了一个新的Dbspace,名字为testdbs
为Dbspace 添加 chunk:
首先在数据目录 $INFORMIXDIR 中新建一个 chunk 文件,datachk01,更改访问权限为 660;
控制台输入:#onmonitor
->Dbspaces->Add_Chunk
选择要添加 chunk 的 Dbspace
F3 或 Ctrl+b
在 Full Pathname 中填入刚刚新建的 chunk 文件的全路径: /opt/informix/dbs/datachk01 即可
要配置数据库首先需要停止数据库服务
onmode -ky
初始化数据库系统
oninit -i 或 oninit -iy
新建数据库:
#dbaccess [ENTER]
Database->Create->输入数据库名
这是我建一个步骤:
root@sdunicomd # touch itnmschk
root@sdunicomd # chmod 660 itnmschk
root@sdunicomd # touch itnmschk
root@sdunicomd # chmod 660 itnmschk1
sdunicomd_cdmatmn$onspaces -c -d itnmsdbs -p /u1/tmn/newcdma/dbs/itnmschk -o 5120 -s 2000000
Verifying physical disk space, please wait
Space successfully added
WARNING A level 0 archive of Root DBSpace will need to be done
sdunicomd_cdmatmn$onspaces -a itnmsdbs -p /u1/tmn/newcdma/dbs/itnmschk1 -o 5120 -s 2000000
Verifying physical disk space, please wait
Chunk successfully added
sdunicomd_cdmatmn$onspaces -d itnmsdbs
WARNING: Dropping a DBspace
Do you really want to continue (y/n)y
Space successfully dropped
WARNING A level 0 archive will need to be done before any chunks from
DBspace itnms can be reused (see Dynamic Server Administrator's manual)
CREATE DATABASE itnms
IN itnmsdbs
WITH BUFFERED LOG
IBM的DB2。
关系数据库领域的开拓者和领航人
Oracle
大型的数据库系统。
Informix
目的是为Unix等开放 *** 作系统提供专业的关系型数据库产品。
Sybase
Sybase首先提出Client/Server数据库体系结构的思想,并率先在SybaseSQLServer中实现。
SQLServer
最初由微软和IBM合作开发完成OS/2。后微软同Sybase签订了合作协议,使用Sybase的技术开发基于OS/2平台的关系型数据库——SQLServer。
PostgreSQL
目前PostgreSQL是唯一支持事务、子查询、多版本并行控制系统、数据完整性检查等特性的唯一的一种自由软件的数据库管理系统。
mySQL
目前MySQL被广泛地应用在Internet上的中小型网站中。(开放源码、体积小、速度快、总体拥有成本低)
Aess数据库
界面友好、易学易用、开发简单、接口灵活。
Aess主要适用于中小型应用系统,或作为客户机/服务器系统中的客户端数据库。
从某种程度上说,SQLite最初的构思是在一条军舰上进行的。当时在通用动力工作的SQLite的作者DRichardHipp正在为美国海军编制一种使用在导d驱逐舰上的程序。那个程序最初运行在Hewlett-PackardUNIX(HPUX)上,后台使用Informix数据库。对那个具体应用而言,Informix有点儿太强大了。一个有经验的数据库管理员(DBA)安装或升级Informix可能需要一整天,如果是没经验的程序员,这个工作可能永远也做不完。真正需要的只是一个自我包含的数据库,它易使用并能由程序控制传导,另外,不管其他软件是否安装,它都可以运行。
2000年1月,Hipp开始和一个同事讨论关于创建一个简单的嵌入式SQL数据库的想法,这个数据库将使用GNUDBM哈希库(gdbm)做后台,同时这个数据库将不需要安装和管理支持。后来,一有空闲时间,Hipp就开始实施这项工作,2000年8月,SQLite10版发布了。
按照原定计划,SQLite10用gdbm作为存储管理器。
然而,Hipp不久就用自己实现的能支持事务和记录按主键存储的B-tree替换了gdbm。随着第一次重要升级的进行,SQLite有了稳定的发展,功能和用户也在增长。2001年中期,很多项目--开源的或商业的--都开始使用SQLite。
在随后的几年中,开源社区的其他成员开始为他们喜欢的脚本语言和程序库编写SQLite扩展。一个接着一个,既Perl、Python、Ruby、Java和其他主流的程序设计语言的扩展之后,新的扩展如SQLite的ODBC接口出现并证明了SQLite的广泛应用和实用功能。
SQLite是开源的
以上就是关于关于Informix数据库的问题全部的内容,包括:关于Informix数据库的问题、大数据常用哪些数据库(什么是大数据库)、常用的数据库有哪些(文献检索中常用的数据库有哪些)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)