计算机三级数据库技术计算机基础知识
数据库(Database)是按照 数据结构来组织、 存储和管理数据的建立在计算机存储设备上的仓库。下面是我整理的关于计算机三级数据库技术计算机基础知识,希望大家认真阅读!
1、冯诺依曼计算机以“存储程序”原理为基础,由运算器、存储器、控制器、输入设备和输出设备等五大部件组成。
2、计算机指令系统:
系列计算机:指令系统向下兼容。
复杂指令系统计算机:CISC (Complex Instruction Set Computer)
精简指令系统计算机:RISC (Reduced Instruction Set Computer)
指令系统的类型:数据传送类指令、算术逻辑类指令和判定控制类指令。
指令系统的寻址方式:立即寻址(立即数寻址),指令中直接给出 *** 作数。
寄存器寻址: *** 作数在寄存器中。直接寻址:指令中直接给出 *** 作数地址。寄存器间接寻址:寄存器给出 *** 作数地址。
寄存器相对寻址:指令中给出 *** 作数的地址偏移量
3、微型处理器分类:通用微处理器、嵌入式微处理器和数字信号处理器等
4、总线:
PCI:不依附具体处理器的局部总线。
USB:通用串行总线。
1394总线:FireWire,为家用电器研制的一种高速串行总线。1394总线在数字视频设备(数字摄像机)中广泛应用。
5、计算机的技术指标:
运算速度MIPS(每秒百万条指令)
影响计算机运算速度的因素很多,主要是CPU的主频和存储器的存取周期。
存储器容量:基本单位B(Byte) 1KB=1024Byte 1MB=1024KB 1GB=1024MB 1TB=1024GB
数据传输率:基本单位bps(每秒传输多少位) 1Kbps=103bps 1Mbps=103Kbps 1Gbps=103Mbps
6、计算机中的信息表示
非数字信息的表示:ASCII码 汉字的表示:三类代码体系:输入码,如:拼音码、五笔字形码等;机内码;交换码,如GB2312-80;
7、计算机网络基础
计算机网络的基本特征:资源共享。广域网与广域网的互联是通过路由器实现的。
传输技术分为: 广播式网络(通过一条公共信道实现)点--点式网络(通过存储转发实现)。采用分组存储转发与路由选择是点-点式网络与广播网络的重要区别之一
按规模分类:局域网(LAN)、城域网(MAN)、广域网(WAN)
广域网(远程网)以下特点:1 适应大容量与突发性通信的要求。2 适应综合业务服务的要求。3 开放的设备接口与规范化的协议。4 完善的通信服务与网络管理。
几种常见的广域网的特点:
X25:建立在速率低、误码率高的电缆介质上,X25协议包括差错控制、流量控制和拥塞控制等,由通信子网完成,有时间延迟。
FR(帧中继):建立在速率高、误码率低的光纤上,对X25协议进行简化,差错控制由用户终端完成。
B-ISDN(宽带综合业务数字网)、N-ISDN(窄带综合业务数字网)
ATM(异步传输模式,一种数据传输与分组交换技术,能满足多媒体应用的高速率与低延迟的要求,具有线路交换实时性好和分组交换灵活性好的双重优点。
各种城域网建设方案有几个相同点:传输介质采用光纤,交换接点采用基于IP交换的高速路由交换机或ATM交换机,在体系结构上采用核心交换层,业务汇聚层与接入层三层模式。城域网MAN介于广域网与局域网之间的一种高速网络。
8、网络协议为三部分:(1)语法,即用户数据与控制信息的结构和格式;(2)语义,即需要发出何种控制信息,以及完成的动作与做出的响应;(3)时序,即对事件实现顺序的详细说明
9、Internet的结构和组成
协议:TCP/IP协议组
TCP/IP参考模型可以分为:应用层,传输层(TCP、UDP协议),互连层(IP协议),主机-网络层
应用层协议分为:
a、依赖于面向连接的TCP协议:主要有: 文件传送协议FTP、电子邮件协议SMTP以及超文本传输协议>
数字时代下,数据规模爆发性增长,数据存储结构越来越灵活多样,推动着数据库技术不断演进,我国数据库产业进入重要发展机遇期。 天翼云积极顺应时代趋势,创新推出 TeleDB 产品, 为企业提供全方位数字化转型解决方案,助力企业上云用数赋智。
TeleDB 是天翼云在数据库领域丰富实践经验和先进技术架构的有机结合, 由天翼云自主研发,具有兼容社区生态、全面国产化适配等核心能力。
历经8年打磨, 目前 TeleDB 已研发核心PaaS技术20余项,获得核心专利技术16项,承载7亿+用户, 稳定性得到全面验证。
TeleDB 数据库采用容器化技术和分布式块存储技术,通过云原生技术改造业务,使得数据库服务器的CPU、内存能够快速扩容,通过动态增减节点提升性能和节省成本,存储空间无需手动配置,实现自动d性伸缩。
面对多元化的业务需求,企业需要服务提供商能够提供横向主流数据库产品和纵向多版本技术服务的全覆盖能力,为此,天翼云还构建了 TeleDB 数据库上云全生态。
在数据库内核方面, TeleDB 采用云原生架构,高度兼容MySQL、PostgreSQL、openGauss、TiDB, 寻求社区深度合作,在强化自身能力的同时反哺社区,提升代码自主可控能力及数据库团队的社区影响力。
TeleDB 是一款兼容开源MySQL协议的企业级智能化关系型数据库引擎,适用于在线事务处理,可为用户提供稳定可靠的企业级数据库服务;
TeleDB 兼容开源PostgreSQL协议,支持SQL规范的完整实现、丰富多样的数据库类型,并高度兼容Oracle语法,集成了一系列管理功能,减轻运维压力;
TeleDB 支持在线事务处理(TP)和在线分析处理(AP),是一款高性能 HTAP 融合型NewSQL数据库引擎,适用于数据规模大、高可用、高吞吐等业务场景。
在建设层面,TeleDB 聚焦掌握数据备份、数据迁移、数据库自动驾驶仓、数据库安全网关等核心生态产品。 支持HBase、文档数据库、时序数据库等NoSQL数据库协议,提供实时分析云服务,适合PB级,千万级QPS的分布式计算应用场景, 是风控、推荐、广告、物联网、车联网、Feeds流、数据大屏等场景的首选数据库。
此外,TeleDB 借助外部生态体系夯实完善交付、实施、运营、维护等过程, 可以实现端到端软硬件深度的整合和优化,提升数据存储效率和访问效率,进一步发挥网络和新介质能力,构建一站式强体验生态体系。
TeleDB 数据库作为中国电信天翼云自主研发的产品,实现数据库基础软件全面自主可控。基于 TeleDB 数据库,解决核心基础软件卡脖子问题,赋能千行百业,满足其多元化的上云需求。未来,天翼云将坚持以创新、高效为目标,为用户提供更安全、更可靠、更智能的云数据库产品和服务,让 TeleDB 成为企业乘云而上的助燃剂。
目前市场上主要常用的数据库根据数据库应用类型的不同有时候区别。在关系数据库中,Oracle、MySQL/MariaDB、SQL Server、PostgrcSQL、 DB2等数据库应用较广泛。在时序数据库类型中,InfluxDB、RRDtool、Graphite等数据库也较为常见。其他类型数据库可参考 >
目录
- 数据库分类维度:关系型/非关系型、交易型/分析型
- NoSQL数据库的进一步分类
- OLTP市场规模:关系型数据库仍占营收大头
- 数据库市场份额:云服务和新兴厂商主导NoSQL
- 开源数据库 vs 商业数据库
- 数据库三大阵营:传统厂商和云服务提供商
最近由于时间原因我写东西少了,在公众号上也转载过几篇搞数据库朋友的大作。按说我算是外行,没资格在这个领域品头论足,而当我看到下面这份报告时立即产生了学习的兴趣,同时也想就能看懂的部分写点心得体会分享给大家。
可能本文比较适合普及性阅读,让数据库领域资深的朋友见笑了:)
数据库分类维度:关系型/非关系型、交易型/分析型
首先是分类维度,上图中的纵轴分类为Relational Database(关系型数据库,RDBMS)和Nonrelational Database (非关系型数据库,NoSQL),横轴的分类为Operational(交易型,即OLTP)和Analytical(分析型,即OLAP)。
按照习惯我们先看关系型数据库,左上角的交易型类别中包括大家熟悉的商业数据库Oracle、MS SQL Server、DB2、Infomix,也包括开源领域流行的MySQL(MariaDB是它的一个分支)、PostgreSQL,还有云上面比较常见的SQL Azure和Amazon Aurora等。
比较有意思的是,SAP HANA正好位于交易型和分析型的中间分界处,不要忘了SAP还收购了Sybase,尽管后者今天不够风光了,而早年微软的SQL Server都是来源于Sybase。Sybase的ASE数据库和分析型Sybase IQ还是存在的。
右上角的分析型产品中包括几款知名的列式数据仓库Pivotal Greenplum、Teradata和IBM Netezza(已宣布停止支持),来自互联网巨头的Google Big Query和Amazon RedShift。至于Oracle Exadata一体机,它上面运行的也是Oracle数据库,其最初设计用途是OLAP,而在后来发展中也可以良好兼顾OLTP,算是一个跨界产品吧。
再来看非关系型数据库,左下角的交易型产品中,有几个我看着熟悉的MongoDB、Redis、Amazon DynamoDB和DocumentDB等;右下角的分析型产品包括著名的Hadoop分支Cloudera、Hortonworks(这2家已并购),Bigtable(来自Google,Hadoop中的HBase是它的开源实现)、Elasticsearch等。
显然非关系型数据库的分类要更加复杂,产品在应用中的差异化也比传统关系型数据库更大。Willian Blair很负责任地对它们给出了进一步的分类。
NoSQL数据库的进一步分类
上面这个图表应该说很清晰了。非关系型数据库可以分为Document-based Store(基于文档的存储)、Key-Value Store(键值存储)、Graph-based(图数据库)、Time Series(时序数据库),以及Wide Cloumn-based Store(宽列式存储)。
我们再来看下每个细分类别中的产品:
文档存储 :MongoDB、Amazon DocumentDB、Azure Cosmos DB等
Key-Value存储 :Redis Labs、Oracle Berkeley DB、Amazon DynamoDB、Aerospike等
图数据库 :Neo4j等
时序数据库 :InfluxDB等
WideCloumn :DataStax、Cassandra、Apache HBase和Bigtable等
多模型数据库 :支持上面不只一种类别特性的NoSQL,比如MongoDB、Redis Labs、Amazon DynamoDB和Azure Cosmos DB等。
OLTP市场规模:关系型数据库仍占营收大头
上面这个基于IDC数据的交易型数据库市场份额共有3个分类,其中深蓝色部分的关系型数据库(RDBMS,在这里不统计数据挖掘/分析型数据库)占据80%以上的市场。
Dynamic Database(DDMS,动态数据库管理系统,同样不统计Hadoop)就是我们前面聊的非关系型数据库。这部分市场显得小(但发展势头看好),我觉得与互联网等大公司多采用开源+自研,而不买商业产品有关。
而遵循IDC的统计分类,在上图灰色部分的“非关系型数据库市场”其实另有定义,参见下面这段文字:
数据库市场份额:云服务和新兴厂商主导NoSQL
请注意,这里的关系型数据库统计又包含了分析型产品。Oracle营收份额42%仍居第一,随后排名依次为微软、IBM、SAP和Teradata。
代表非关系型数据库的DDMS分类中(这里同样加入Hadoop等),云服务和新兴厂商成为了主导,微软应该是因为云SQL Server的基础而小幅领先于AWS,这2家一共占据超过50%的市场,接下来的排名是Google、Cloudera和Hortonworks(二者加起来13%)。
上面是IDC传统分类中的“非关系型数据库”,在这里IBM和CA等应该主要是针对大型机的产品,InterSystems有一款在国内医疗HIS系统中应用的Caché数据库(以前也是运行在Power小机上比较多)。我就知道这些,余下的就不瞎写了。
开源数据库 vs 商业数据库
按照流行度来看,开源数据库从2013年到现在一直呈现增长,已经快要追上商业数据库了。
商业产品在关系型数据库的占比仍然高达605%,而上表中从这列往左的分类都是开源占优:
Wide Cloumn:开源占比818%;
时序数据库:开源占比807%;
文档存储:开源占比800%;
Key-Value存储:开源占比722%;
图数据库:开源占比684%;
搜索引擎:开源占比653%
按照开源License的授权模式,上面这个三角形越往下管的越宽松。比如MySQL属于GPL,在互联网行业用户较多;而PostgreSQL属于BSD授权,国内有不少数据库公司的产品就是基于Postgre哦。
数据库三大阵营:传统厂商和云服务提供商
前面在讨论市场份额时,我提到过交易型数据库的4个巨头仍然是Oracle、微软、IBM和SAP,在这里William Blair将他们归为第一阵营。
随着云平台的不断兴起,AWS、Azure和GCP(Google Cloud Platform)组成了另一个阵营,在国外分析师的眼里还没有BAT,就像有的朋友所说,国内互联网巨头更多是自身业务导向的,在本土发展公有云还有些优势,短时间内将技术输出到国外的难度应该还比较大。(当然我并不认为国内缺优秀的DBA和研发人才)
第三个阵容就是规模小一些,但比较专注的数据库玩家。
接下来我再带大家简单过一下这前两个阵容,看看具体的数据库产品都有哪些。
甲骨文的产品,我相对熟悉一些的有Oracle Database、MySQL以及Exadata一体机。
IBM DB2也是一个庞大的家族,除了传统针对小型机、x86(好像用的人不多)、z/OS大型机和for i的版本之外,如今也有了针对云和数据挖掘的产品。记得抱枕大师对Informix的技术比较推崇,可惜这个产品发展似乎不太理想。
微软除了看家的SQL Server之外,在Azure云上还能提供MySQL、PostgreSQL和MariaDB开源数据库。应该说他们是传统软件License+PaaS服务两条腿走路的。
如今人们一提起SAP的数据库就想起HANA,之前从Sybase收购来的ASE(Adaptive Server Enterprise)和IQ似乎没有之前发展好了。
在云服务提供商数据库的3巨头中,微软有SQL Server的先天优势,甚至把它移植到了Linux拥抱开源平台。关系型数据库的创新方面值得一提的是Amazon Aurora和Google Spanner(也有非关系型特性),至于它们具体好在哪里我就不装内行了:)
非关系型数据库则是Amazon全面开花,这与其云计算业务发展早并且占据优势有关。Google当年的三篇经典论文对业界影响深远,Yahoo基于此开源的Hadoop有一段时间几乎是大数据的代名词。HBase和Hive如今已不再是人们讨论的热点,而Bigtable和BigQuery似乎仍然以服务Google自身业务为主,毕竟GCP的规模比AWS要小多了。
最后这张DB-Engines的排行榜,相信许多朋友都不陌生,今年3月已经不是最新的数据,在这里列出只是给大家一个参考。该排行榜几乎在每次更新时,都会有国内数据库专家撰写点评。
以上是我周末的学习笔记,班门弄斧,希望对大家有帮助。
参考资料《Database Software Market:The Long-Awaited Shake-up》
>
上期分享中,我们介绍优炫数据库支持的数据存储方式。
戳: 干货分享 优炫数据库支持多业务场景
本期,我们来讲讲优炫数据库支持的多种数据类型。
基本数据类型存储与管理
优炫数据库拥有完备的数据类型,内置数据类型包括 数字类型、货币类型、字符类型、日期/时间类型、布尔类型、枚举类型、网络地址类型、位串类型、文本搜索类型等, 支持使用 serial 类型创建表自增列。
通常为了加快指定过滤条件下从表中查询数据的速度,可以为表的某个字段或某几个字段建立索引。数据库对基本数据提供多种索引类型:B-tree、Hash、GIN(倒排序索引)和 BRIN(数据库块范围索引)。每一种索引类型使用了一种不同的算法来适应不同类型的查询。 默认情况下, CREATE INDEX命令创建适合于大部分情况的B-tree索引。
XML/JSON数据类型存储与管理
优炫数据库内置半结构化XML、JSON、JSONB数据类型。
xml数据类型可以被用来存储XML数据,它比直接在一个text域中存储XML数据的优势在于,它会检查输入值的结构是不是良好,并且有支持函数用于在其上执行类型安全的 *** 作。xml类型可以存储结构良好(如XML标准所定义)的“文档”,以及“内容”片段,它们由XML标准所定义,这意味着内容片段中可以有多于一个的顶层元素或字符节点。通过表达式来评估一个特定的xml值是一个完整文档或者仅仅是一个文档片段。
JSON类型强制检查数据有效性,使用专门的 *** 作符和内置函数 *** 作数据,保留空格,重复键和顺序等。JSONB是解析输入后保存的二进制数据,删除了数据中的空格、调整了顺序、优化了存储、保留最后一个重复键值,可被索引。和 JSON 一样,JSONB支持嵌入式的文档和数组。JSONB 由若干个键值对存储为单个实体,这种实体称为文档。 JSONB具有以下几个特性:轻量级(Lightweight),可遍历性(Traversable),高效性(Efficient)。 由于所需存储更小,JSONB通常是首选格式。两者区别在于:JSON类型写快读慢,JSONB类型写慢读快,支持SQL/JSON路径语言。此外,数据库支持对这两类数据的全文检索。
GIS空间类型存储与管理
优炫数据库支持GIS的地理信息应用,支持PostGIS、ArcGIS、超图,支持OpenGIS联盟(开放地理信息系统,OGC)抽象数据类型的SQL3规范,提供对地理矢量数据、3D模型、线性参考数据的组织、存储、空间索引和管理。
Geometry(几何对象类型)是优炫数据库的一个基本存储类型, 空间数据都会以Geometry的形式存储在数据库里,本质是个二进制对象。使用OGC推荐的WKT(Well-Known Text)和WKB(Well-Known Binary)格式进行描述,大幅增加了易用性,WKT与WKB基本数据类型(矢量数据)包括:
l 点 (POINT):例如POINT(0 0);
l 线 (LINESTRING):例如LINESTRING(0 0,1 1,1 2)
l 面 (POLYGON多边形):例如POLYGON((0 0,4 0,4 4,0 4,0 0)) 简单多边形,例如POLYGON((0 0,4 0,4 4,0 4,0 0),(1 1, 2 1, 2 2, 1 2,1 1)) 多边形有一个内部的"孔洞(hole)";
l 多点 (MULTIPOINT):例如MULTIPOINT((0 0),(1 2));
l 多线 (MULTILINESTRING):例如MULTILINESTRING((0 0,1 1,1 2),(2 3,3 2,5 4));
l 多面 (MULTIPOLYGON):例如MULTIPOLYGON(((0 0,4 0,4 4,0 4,0 0),(1 1,2 1,2 2,1 2,1 1)), ((-1 -1,-1 -2,-2 -2,-2 -1,-1 -1)));
l 几何集合 (GEOMETRYCOLLECTION):例如GEOMETRYCOLLECTION(POINT(2 3),LINESTRING(2 3,3 4))。
栅格空间数据类型raster用于表示jpeg,tiff,png,DEM模型这样文件格式的数据。每一个栅格至少有1个波段,每个波段又有一系列像素值,栅格数据是转换成地理坐标的。可以从数据库外部导入已有栅格数据,也可在数据库内创建栅格数据。下面是一个在数据库内部创建栅格数据的示例:
拓扑类型和函数用于管理拓扑结构,比如面、边界和点。
创建一个带有栅格记录的栅格列的表可以用下面的SQL完成:
如果创建的栅格不依赖于其他栅格,那么可以使用函数:
ST_MakeEmptyRaster,接着使用ST_AddBand添加栅格数据。也可以使用geometry对象来创建栅格你需要使用函数ST_AsRaster。可能还需要和其他函数比如函数ST_Union 或函数 ST_MapAlgebraFct 或者其他地图代数系列函数联合使用。甚至还有一些根据一些已经存在的栅格表创建新的栅格表的可选函数。例如可以使用函数ST_Transform 根据一个已有的栅格表在其他投影系中创建一个新的栅格表。然后通过下SQL命令创建一个空间索引:
通过空间索引R-Tree实现空间数据查询和 *** 作,R-Tree将数据分解为矩形(rectangle)、子矩形(sub-rectangle)和子-子矩形(sub-sub rectangle)等。它是一种可自动处理可变数据的密度和对象大小的自调优(self-tuning)索引结构。
图数据存储与管理
图数据以图关系这种数据结构存储,把图数据的顶点和边信息存储到关系型数据类型中,这些信息包括:
l 顶点(Vertices):一个实体一个顶点,一个实体可以有多个属性。
l 边(Edges):两个实体之间的连接线。
l 属性:实体和边都可以有多个属性。形象举个例子,一个实体对应关系表中一行记录,一个实体的属性代表关系表中这行记录的所有字段和值构成的键值对。
在优炫数据库中图数据通过关系型数据进行存储,这些数据与图模型中的数据相对应。例如通过下SQL语句建立存储图数据的表:
然后新增加数据,后续就可以根据这些数据进行图相关的计算和分析了。
时序数据存储与管理
时序数据存储和管理,通过把时序数据存储到关系型数据类型中。时序数据是指时间序列数据。时间序列数据是同一统一指标按时间顺序记录的数据列。在同一数据列中的各个数据必须是同口径的,要求具有可比性。时序数据可以是时期数,也可以时点数。时间序列分析的目的是通过找出样本内时间序列的统计特性和发展规律性,构建时间序列模型,进行样本外预测。
文档//视频类型存储与管理
优炫数据库可存储任意未知具体内容的、声音、视频等非结构化数据,支持 GB 级大对象数据类型与流式数据访问。可借助于数据库图形化管理工具、应用程序、第三方工具等查看这些非结构化数据。根据业务需要也可借助数据库插件读取或识别这些非结构化数据的内容用于数据分析。
优炫数据库支持多种二进制数据类型,包括:Bytea、OID、Blob、raw、Varbinary、Longvarbinary。
自定义数据类型存储与管理
优炫数据库可自定义数据类型、索引、函数等数据库对象。 新增加的数据类型可以是新数据类型,也可以是已知几个数据类型的复合数据类型。
模分析型数据库用户可在数据库中使用CREATE TYPE或CREATE DOMAIN命令增加新的数据类型;可通过自定义函数或存储过程对数据进行各种处理。
CREATE TYPE在当前数据库中注册一种新的数据类型,定义数据类型的用户将成为它的拥有者。五种形式的CREATE TYPE,它们分别创建组合类型、枚举类型、 范围类型、基础类型或者 shell 类型。shell 类型仅仅是一种用于后面要定义的类型的占位符,通过发出一个不带除类型名之外其他参数的CREATE TYPE命令可以创建这种类型。在创建范围类型和基础类型时,需要 shell 类型作为一种向前引用。
CREATE DOMAIN创建一个新的域。 域本质上是一种带有可选约束(在允许的值集合上的限制)的数据类型。域主要被用于把字段上的常用约束抽象到一个单一的位置以便维护。例如,几个表可能都包含电子邮件地址列,而且都要求相同的 CHECK 约束来验证地址的语法。可以为此定义一个域,而不是在每个表上都单独设置一个约束。
以上就是关于计算机三级数据库技术计算机基础知识全部的内容,包括:计算机三级数据库技术计算机基础知识、python常用的数据库有哪些、天翼云TeleDB数据库全面亮剑等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)