云栖PPT下载 | 开源界大咖集体现身,开源数据库专场重点再回眸!

阿里云开源数据库项目最新发布

阿里巴巴集团副总裁、阿里云智能数据库事业部总裁、高级研究员李飞飞(飞刀)、阿里云数据库资深技术专家楼方鑫(黄忠)以及阿里云数据库技术专家傅宇(齐木)三位阿里云技术专家为你们介绍了最新的阿里云开源数据库项目。

李飞飞:

数据库在过去这么多年,尤为近几年发展如此迅速的核心缘由之一就是开源生态作出了很大贡献。不可思议若是没有开源的MySQL、PG、HBase、MongoDB以及Cassandra等,只有Oracle、DB二、SQL Server等,今天世界会是什么样子?那必然仍是寡头垄断的局面。由于核心的OLAP系统难以实现,须要通过大量试错才能不断完善。而开源生态为数据库提供这样的一个平台,帮助数据库快速迭代,使得开源数据库能够比肩商业数据库的能力。
对于阿里而言,AliSQL得到了2018年MySQL的社区公司贡献奖,这是由于AliSQL作了大量优化,好比实现了Sequence、表级并行复制以及隐式主键等。而作这些优化的驱动力是阿里内部的业务需求,而且对于技术的优化后续就会贡献回开源社区。

最新发布是让DRDS支持POLARDB,而且在2020年的某个时间,阿里云将会开源DRDS。DRDS彻底由阿里自研,其中包含了Sharding、Unique Sequence、Parallel Query、Global Secondry Index以及Distributed Transaction。但愿你们可以更加普遍地使用DRDS,若是有机会也贡献更多的代码,将DRDS作得更好。


楼方鑫:

AliSQL经过效率、性能、自主、稳定以及安全方面的不断改进,但愿让业务、运维、研发和合做伙伴都可以感受更“爽”。

基于这个思路,阿里云在一年半以前就将主要精力投入到MySQL 8.0上面,这是由于MySQL 8.0更可以知足以上目标。MySQL 8.0具备Automic DDL、Instant Add Column、Window Function和Temp Engine的能力。而AliSQL在MySQL的基础之上还作了更多的优化,好比支持了TDE加密和SM4国密算法,而且从新设计了线程池,AliSQL Cluster支持三节点并能作到RTO为0等。

MySQL官方版本也有线程池,而AliSQL线程池的区别在于链接数能够达到2万,而且能保持很是平稳的输出。首先,AliSQL严格控制了线程数来提高了CPU效率,作到了高性能。其次,AliSQL能够一键随时切换启用线程池,而无需重启实例。最后,AliSQL可以区分操做类型并实现智能优先级排队,并适用于全部业务场景。总之,AliSQL的线程池是彻底从新实现的,而且性能也会超出指望。

AliSQL Cluster能够总结出“三高”,即高可靠、高可用和高性能。AliSQL Cluster具备99.99%的可用性,事务数据具备强一致性,而且使用了Paxos智能并行发包实现高效同步。这样的“三高”使得业务、运维和研发都更“爽”。
SQL Outline是在数据库版本升级、增减索引、统计信息以及程序固化时来收集和编辑SQL关键路信息,并用持久化Hint固化执行路径的。
AliSQL基于MySQL作了不少性能的加强,实现了对象统计,并提供了完善的指标和多级维度。好比索引、SQL统计信息都可以一目了然,所以能够加速对业务的响应。这也说明在上云以后,若是想要服务好业务,还有不少工做须要作。

AliSQL在5.6版本时作了开源,通过总结以后发现让官方合并AliSQL 5.6这条路走不通,所以也将对于AliSQL 8.0进行开源。在开源8.0版本的时候会吸取5.6版本的经验,想办法更高效地维护AliSQL开源项目。

傅宇:

在阿里巴巴业务中,DRDS和MySQL是相互配合,荣辱与共的关系。DRDS是阿里云提供的一个服务,全称是分布式关系型数据库服务。DRDS功能最简单归纳就是分库分表,用户能够从DRDS接口上建立一个表,只须要在建表时指定分库分表的方式,剩下的工做由DRDS搞定,用户能够像操做普通表同样操做DRDS,业务层无需再作分布式相关的考虑。除此以外,DRDS还提供了读写分离、弹性扩容等能力。
下图是典型的DRDS部署拓扑,图左侧分为两层,Server层包含多个无状态的DRDS节点,DRDS节点向Load Balancer汇报心跳,若是出现宕机,Load Balancer就会将流量迁移到其余节点上,保证集群高可用。存储层可能使用RDS、POLARDB甚至列式存储。整体来讲,查询会在Server层被转化成执行计划,在存储层具体执行并返回给用户。图右侧是DRDS的分析型只读实例,里面包含多个MPP Worker。对于复杂SQL,单台机器可能没法完成计算,此时就会将SQL的执行计划发往MPP集群来计算,而且不会对主库产生影响。

DRDS的架构演进经历很长的过程,最开始只想着如何将分库分表作到极致。随着DRDS上云,企业级场景更加丰富,遇到了愈来愈复杂的SQL,需求推进着DRDS架构的重构。现在的DRDS架构最分为了网络、优化器和执行器。
SQL进入DRDS首先会通过Parser变成AST,以后通过Validator进行验证,经过验证以后转化成最朴素的逻辑执行计划,在通过SQL Rewriter和Plan Enumerator变为最优的物理执行计划,并交给Executor进行执行。

对于查询优化器而言,SQL Rewriter会对逻辑执行计划进行改写,它是基于启发式规则的优化器,也被称为RBO。SQL Rewriter会实现子查询的去关联化,并作算子Transpose,而为了实现极致下推,SQL Rewriter还作了Join Clustering。

查询优化器的第二步是Plan Enumerator作的物理优化,主要负责Joint Recorder和算法选择。DRDS采用的最为通用的Volcano/Cascades优化器,通过这一过程会拿到理论最优的物理执行计划。
DRDS查询优化器的优化过程是基于代价的,而代价最初计算来自于统计信息,这些统计信息将会计算代价并带入算子Cost Model中进而计算执行计划的整体代价。

查询优化没法瞬间完成,所以须要管理执行计划,能够将执行计划存储下来加以复用,提高优化速度。DRDS使用了基于Chunk的执行器,使得每一个算子一次性产出一批数据。在Chunk里面数据按列存储,分析速度更快,计算效率更高。Parallel Query部分会启动多个Worker进程并对结果加以汇总。

并行处理--MySQL发展的趋势及中国本地应用实践

中国计算机行业协会开源数据库专委会会长,极数云舟CEO周彦伟为你们分享了MySQL的基础架构和ArkDB的并行化实践。

MySQL基础架构

MySQL Server引擎的好处在于你们能够基于此实现本身的数据库。目前,MySQL已经发布了8.0版本,能够看到这么多年MySQL官方其实一直在进步。MySQL在并行和提升速度方面作了不少工做。在引擎方面,最开始MySQL使用的是MyISAM,如今默认是InnoDB,这是由于MyISAM的并行处理能力不够好,而InnoDB实现了行级锁,还支持了MVCC,增长了并行读写的能力。在引擎层面,从MyISAM过渡到InnoDB是一个巨大的进步。

InnoDB的发展

InnoDB也在MySQL 5.六、5.七、8.0的演进过程当中发生了很大变化。InnoDB最先采用共享表空间,一堆表放在一个文件里,效率极差。后来InnoDB采用独立表空间,一个表放在一个文件里,再后来演变到一个表分红多个文件。这样的变化是但愿提高数据的处理速度。而到如今为止,MySQL 8.0仍是落在单台服务器上,只能利用单台机器的计算和存储功能。
如今,MySQL的进步其实就是InnoDB的进步,这在一些参数的变化上有所体现。此外,Inno DB也对Undo进行了优化,5.7以前ibdata文件中包含Undo段,致使文件空间没法回收。5.7版本以后,Undo段从ibdata文件中独立出来,就能够实现并行读写。
不少年的时间,MySQL扩展都是基于Replication的。如今,MySQL官方也作了集群化的处理。5.6以前是单线程复制,5.7版本中增长支持Write Set级别的并行复制。
总结而言,MySQL数据库自身也在不断进步,到现在MySQL 8.0版本已经作得很不错了,可以支持复杂查询而且效率不错。

并行化在ArkDB的实践

虽然MySQL官方近几年很努力,可是依旧存在一些不足之处,所以ArkDB也但愿可以基于MySQL作出一些贡献。ArkDB在MySQL的基础上作了大量并行化实践。在引擎层,ArkDB实现了计算和存储分离,经过分布式存储实现了并行读写优化。在集群层,ArkDB实现了自适应多线程物理复制,极大地提高了数据复制效率。在接入层,ArkDB实现了对称式中间件集群路由,是接入层成为无状态的,可以承担大规模的访问应用。在高可用方面,ArkDB实现了去中心化分布式哨兵守护集群。在迁移层,ArkDB实现了多源端多通道多结构实时同步,能够实现精确到行级的运行。

ArkDB在引擎层既基于索引树存储数据,又将数据分片地存储在索引结构中。基于分布式存储实现了并行读写优化,基于索引结构实现数据并行分片,基于对象存储实现并发读写支持,基于分布式存储支持了多副本和快照备份。ArkDB在集群层实现了自适应多线程物理复制、物理日志的多线程读写,并基于从库的多版本控制实现了多节点无锁同步。ArkDB在迁移层充分利用了各类并行方式,从前端多源端,到多通道处理实现了在数据打经过程中尽可能提高效率和传输速度。

PostgreSQL 12 迎来新机遇

Postgres中国社区主席,太阳塔科技创始人赵振平为你们分享了PostgreSQL 12带来的新机遇。
目前,PostgreSQL 12的开发速度很是快,今年5月份发布Beta 1版本,6月份发布Beta 2版本,8月份发布Beta 3版本,9月份发布Beta 4版本,而且有可能成为了最后一个Beta版本,这意味着PostgreSQL 12即将正式发布。虽然每一个Beta版本对你们而言可能只是一个小版本,但对于PostgreSQL社区而言,却意味着大量修改,好比在PostgreSQL 12的Beta 3版本中修改了2个安全issue而且修改了40个小Bug。截止到目前,PostgreSQL 12的Beta版本总共作了161项修改,总体而言修改很是大,不少技术的修改和完善将为PostgreSQL带来很大的提高。并且在将来,PostgreSQL基本上每一个季度都会推出一个小版本,每一年发布一个大版本。

现在PostgreSQL等开源数据库正在面对新的机遇,除了数据库领域的国产化之路,世界各地方都开始了“去IOE”。而围绕PostgreSQL能够作不少创新,企业能够基于PostgreSQL开发产品,甚至将PostgreSQL和后台产品打包销售到国外,开发者还能够基于PostgreSQL开发新的数据库。而对于太阳塔这样的公司,也能够更好地提供PostgreSQL技术服务。
之因此选择PostgreSQL,首先是由于它历史悠久。PostgreSQL在互联网产生以前就已经存在了,其创始人Michael Stonebraker得到了图灵奖。从DB-Engines的数据来看,PostgreSQL在一路飙升。而且PostgreSQL和SQL Server等主流数据库同宗同源,都是从Ingres衍生出来的。
从技术的角度来看,PostgreSQL也具备不少的优势。第一点就是并行,这一能力在PostgreSQL 10时开始成熟,在PostgreSQL 11时发挥得淋漓尽致。PostgreSQL的并行能力主要体如今并行扫描、并行链接以及并行Append三个方面。第二点是稳定性,从版本迭代的过程能够看出,PostgreSQL是通过千锤百炼的。第三点是安全,你们可能对于开源数据库的安全性存在一些误解,其实PostgreSQL是很是安全的,它提供了认证方式、通道加密和数据加密一套完整的安全机制,基本能够认为Oracle有多安全,PostgreSQL就有多安全。第四点是功能强大,PostgreSQL在功能上还有超过Oracle的地方,好比索引更丰富、计时功能更强大、分布式数仓功能更加成熟。
此外,之因此说PostgreSQL会有很大机遇的另一个缘由就是它的开源协议,你们能够随意使用、拷贝、分发,并且能够随便修改,没有任何版权风险和专利风险。所以,现在不少数据库都是基于PostgreSQL,也正是由于它的开放协议和开放策略,提供了很大的商机。
实践已经证实,基于PostgreSQL不只诞生出不少公司,也诞生出不少的产品,好比独角兽公司Greenplum。此外,PostgreSQL具备强大的生态圈,国际社区的凝聚力和开发能力可以碾压一切,PostgreSQL采用的是开放式体系结构,也就是插件结构,开发后能够很容易地反馈社区。并且PostgreSQL的代码和贡献的质量都很是高。

开源数据库在平安科技的应用实践

平安云数据库及存储产品团队总经理汪洋为你们分享了平安科技的开源数据库选型原则以及应用实践。

为什么使用开源数据库

做为一个管理着数万亿资产的金融王国,平安为什么要引入开源数据库?其实,技术永远是服务于业务和场景的。平安在2013年作完银行新核心的“换心手术”以后,开始考虑向互联网、数字化转型。在这一过程当中,一方面须要高性能、高可靠、高可用的系统架构,另外一方面须要快速地捕捉市场需求,并快速转换为IT需求开发出产品,再投入市场进行验证。若是使用传统的商业数据库,在敏捷地捕捉市场需求以后快速将产品推出市场方面就显得捉襟见肘,这是平安引入开源数据库的缘由之一。
在敏捷方面,微服务解决了单体架构的不少问题。第一点,单体架构牵一发而动全身,修改风险很大,开发和测试周期很长,新功能的上线速度很慢。第二点,在单体架构中,为了扩容某个组件或模块须要对整个系统进行扩容,这是一种浪费,而微服务架构则能够针对某一个服务进行扩容。第三点,微服务能够知足不一样技术栈开发人员的须要,不一样团队可使用不一样的技术栈进行开发。
现在,一种数据库难以适应全部业务场景的须要,须要依靠混合持久化数据库来解决不一样数据存储需求。One For All时代已通过去,数据库即使作到“大而全”,也难以涵盖全部场景,如今要作的是“Best Fit”,针对某一种业务和负载,使用最适合的数据库。此外,传统的商业数据库过于沉重,而开源数据库则很是轻量。这些也是引入和推广开源数据库的缘由。此外,即使使用开源数据库,也很难知足全部业务的需求,须要可以基于开源数据库进行二次开发,而这也是商业数据库没法实现的。

开源并不意味着免费

引入开源数据库是必然趋势,但开源并不意味着免费。虽然License是免费的,但还须要付出其余成本。掌握开源技术须要一个过程,须要学习成本;从商业化产品到开源数据库的迁移须要迁移成本;迁移完成以后还可能会增长运维成本以及风险,这些成本都须要在引入开源数据库的时候考虑。

如何选择开源数据库

首先要看业务场景,由于技术是服务于业务场景需求的。再看是否有合适的替代方案,好比PostgreSQL就是Oracle比较合适的替代方案。还要考虑现有开发人员的技能,不然会很是痛苦。此外,须要考虑现有数据库的负载模式、开源社区的活跃度、市场份额以及行业知名度。另外还须要关注开发语言和数据库类型,须要与团队及业务场景适配。也须要关注数据库技术的发展趋势,好比存储和计算分离、云原生、分布式等。最后一点就是不要使用太多开源产品,每类选择一种便可。

开源数据库引入和应用策略

引入和应用开源数据库也有一些策略:区别现有和新建的系统,选择不一样策略,能够下降迁移风险和成本。将数据库进行分类,先从不重要的库开始迁移,积累经验,最小化风险。划分不一样的业务条线,先从要求不高的业务条线下手。实现数据库产品引入过程当中的Owner机制,作到“术业有专攻”。制定数据库架构、运营和开发的指南手册。还须要对运营、开发和DBA进行培训。针对遇到的问题持续进行架构优化,积累开发和运营经验。还须要经过学习源代码来快速追踪到根本缘由,并防止问题的再次出现。若是现有功能知足不了业务需求,能够组建研发团队进行二次开发。最后一点就是拥抱开源社区,创建本身的生态,实现与开源社区的良好互动,进而实现共赢。

数据库选型策略

在关系型数据库方面,由于平安属于金融公司,因此只要涉及到资金交易都须要极高的数据安全性和一致性以及7*24小时不间断的服务。不涉及资金交易的则能够根据具体业务场景选择。在分布式关系型数据库方面,有两种数据库选型——自研的PDRS和开源的TiDB。

开源数据库推广成果

如今平安总共有将近三万个数据库实例,其中Oracle占比很是低,Redis最多,PostgreSQL次多,也有一些MongoDB和MySQL实例。

发展路径

总结而言,数据库的发展路径将来将会支持容器化部署,和K8S更好地结合,甚至实现Serverless化,也会出现更多的自研数据库和基于开源数据库研发新的功能。最后一点,就是在云上能够收集大量运维数据,进而实现AIOps。

传统数据库到开源数据库迁移的工具化流程

迪思杰DSG公司创始人、总裁韩宏坤为你们分享了传统数据库到开源数据库迁移的工具化流程。
如今已经到了数据库历史的一个拐点,各个企业纷纷从高价值的商业数据库走向自由的开源数据库,而且混合架构时代已经来临,各类数据正在快速地流动。
DSG须要服务于各类行业的客户,而他们的系统千差万别。DSG拥有彻底自研的技术,所以可以快速跟进各类技术的变化。DSG的核心技术优点在于几乎可以涵盖全部主流数据库日志的实时分析技术,而且创造了一种统一的数据库数据表达语言,所以DSG可使用较少的研发资源创造很大的价值。目前对于中国而言,在数据库方面有巨大的压力和需求,正所以才驱动着数据库技术走向极致。阿里如此,DSG也如此。
DSG具备强大的数据处理和复制能力,对于Oracle的迁移而言,机遇在于PostgreSQL,实践也证实了PostgreSQL。各个企业都须要作迁移,而对于工程人员而言,能够说“兵贵神速”,所以DSG和阿里合做对Oracle的迁移方法论作了总体梳理。Oracle迁移的客户痛点主要有6点:
 源数据库对象关系、依赖关系复杂;  数据库和应用改造工做量不明确;  目标库规格不明确;  迁移割接业务停机时间短;  须要同步进行数据对比验证;  须要数据回流保证安全和应用回切。
对于Oracle迁移的解决方案而言,首先要经过采集和评估提早发现定位问题,不是在迁移的时候才发现问题,而应该是在迁移以前,就完成对数据库对象关系以及应用和库之间关系的梳理,发现可能存在的问题并做出规划。其次要作自动兼容性识别和转换,自动地发现不兼容的对象,并自动梳理数据库对象之间的关系,从头至尾自动地生成完整的迁移报告。这样一来,用户就可以知道本身应该负责什么,DSG应该负责什么。最后还能够实现高效低干扰的增量同步和数据实时对比,DSG能够帮助客户以每小时300G到500G的速度进行数据库迁移,并实现快速验证。
阿里推出了ADAM计划,将整个数据库和应用迁移的流程都定义得很是清晰。ADAM提供了功能强大的采集、画像、评估、改造以及迁移系统。ADAM的智能画像系统可以为用户客观地进行Oracle数据库画像,分析其特性、性能、容量以及外部依赖等并以图形化方式展示出来。ADAM的智能评估系统可以分析数据库对象以及SQL的兼容性,识别风险SQL,将PLSQL转成Java以及自动对数据库对象进行兼容性转换。ADAM的智能改造系统则会为用户提供一个数据库报告,并经过仿真为用户提供数据库改造建议。

当ADAM的工做完成以后,DSG就负责打通数据迁移的最后一千米了。DSG提供了一个很是强大、完整的数据库迁移工具,实现了以ADAM迁移计划为核心的完整方法论,打通了数据迁移的最后一千米。DSG能够实现场景化、自动化、流程化的数据全量迁移、增量迁移、数据校验、数据修正等,帮助用户轻松、高效地迁移到云上或者POLARDB一体机等。
DSG和ADAM的核心能力结合起来就可以造成Oracle迁移智能全链路解决方案,而且在国内的不少客户企业中已经落地。这么多年来,DSG一直在深耕数据迁移方面的底层技术。并且DSG for ADAM深度集成了阿里云的技术,实现了数据迁移、数据比对等过程的可视化。此外,DSG for ADAM数据库迁移方案对于正常业务的干扰极小,而且能够在中间状态、云上云下环境中部署。为了打消客户对于数据库迁移的疑虑,DSG还提供了完善的数据回流功能。
DSG拥有真正的底层技术,所以能够和阿里云一块儿推出更多的产品和相关的服务,好比加入ETL功能加强Oracle迁移大脑,支持blob to oid等更多类型方案,异构在线DDL转换能力,增强迁移指导评估能力,支持POLARDB、ADB等更多全新的目标数据库等。
DSG相信将来是开源和PostgreSQL的时代,Oracle被取代的速度可能很是快。并且国家也提出了软件国产化的要求,PostgreSQL为核心的数据库极可能是一个突破口,所以对于信息架构的管理人员而言应该抓紧行动。
数据迁移能力只是DSG的一部分,DSG在数据备份、容灾、集成和聚集等方面也很是强大,DSG可以适应各类各样的异构数据库,而且能够在数据采集和实施过程当中进行转换,能够帮助用户得到数据迁移的自由。

传统数据库DBA到开源的技能和心理切换

云和恩墨创始人,ACOUG主席盖国强从天道酬勤、认识时间和大道至简三个方面分享了DBA的学习探索之路。
如今是一个“相向而行”的时代,不管你们如何讨论Oracle,可是没有一个数据库敢说本身超过了Oracle,而都在学习和追赶Oracle的特性。做为技术人,不管曾经熟悉什么技术,在这个快速变革的时代,都会面临学习的挑战,都会感到焦虑。现在,随着数据库技术的飞速发展,DBA应该进行“战略转移”。

天道酬勤

不管对于程序员仍是DBA而言,学习方法能够分为6步。第一点就是打好地基,“为山九仞,始于垒土”,学习任何技术将基础打牢都是前提,这样才能灵活运用这些技术解决现实中遇到的困难。第二点是学会思考,不少人虽然学习了不少知识,可是没有独立思考的意识,在学习过程当中必定要学会本身设问、本身解答,这样的历程能够促进本身成长。第三点是掌握方法,总有一种方法能够帮助你加快学习速度,其中最经济的方法就是“由点及面,由浅入深”,抓住遇到的任何一个问题,深究到源码层,这样由知识点到线再到面连在一块儿。第四点是养成习惯,对于DBA而言,严谨是很是重要的,任何一个疏忽均可能致使灾难。第五点是实践修正,最有助于我的成长的是高压环境,经过实践来验证知识体系。最后一点就是臻于至善,走过千山万水,最后得以“见微知著,大道至简”,能够垂手可得地解决困扰别人已久的问题。

总结了一个学习公式:兴趣+勤奋+坚持+方法≈成功。首先是兴趣,兴趣是最好的老师,除了痴迷于技术的人,大部分人在深刻学习时都会感到枯燥。所以在学习时,最好的方式是找到兴趣,而后培养、呵护兴趣,遇到挫折、打击时不要放弃。其次是勤奋,全部作出卓越成绩的人都是勤奋的。第三点就是坚持不懈,不要频繁地调整方向。第四点就是找到适合的方法。有了这些条件就约等于成功,即便不必定真正可以作到世人看到的成功,但能够无愧于心。
在这个时代,学习的速度慢就是退步。现在的数据库世界能够说是百花齐放,目前全世界有超过400种数据库,能够分为关系型和非关系型,还能够分为操做型和分析型,这样一横一纵能够分为四大类,而进而能够细分红小类。今天,国产数据库也正在崛起,这是数据库人最好的时代。

认识时间

运用方法来加速学习,首先要从时间开始。其实在研究数据库时,最重要的一件事情就是考虑数据库如何计算时间。数据库的任什么时候间都须要度量,而在分布式环境里面更须要关注时间。数据库中一般四种计时方式,逻辑的、物理的、混合的,还有全局统一时钟TSO。数据库须要计时的缘由有不少,如事务须要排序,MVCC须要靠时间控制等,因此时间必不可少。
Oracle数据库是怎么计时的呢?其实Oracle数据库依靠SMON_SCN_TIME表计时,绝大多数Oracle修复完启动时都会出现相关错误。Oracle创建了物理时间和Unix Time的对照表,所以在数据库出故障的时候,这张表大几率会发生不一致。再进一步,数据库如何和操做系统打交道的呢?经过跟踪Oracle进程就会发现,它会经过gettimeofday来获取时间。
MySQL又是怎么计时的呢?MySQL提供了不少函数来转换Unix Time。若是你们关注MySQL Binlog,就会发现MySQL的日志里面有大量Timestamp,这些就是Unix Time,这是由于MySQL在下面引用了now函数。MySQL是开源的,所以想要了解差别只须要打开源码就能够,所以从Oracle转向MySQL是很容易的。MySQL使用字节存储Timestamp,而Oracle则是将SCN做为数据库内部时钟。
在PostgreSQL里面,Unix Time无处不在。有趣的是在PostgreSQL文档中写道它全部的时间计算都是使用儒略历法计算的,这个历法从公元前4713年开始计时,理论上能够计算到将来任何一天。

大道至简

接触新技术时,心理恐惧是最大的障碍。当你克服了心理恐惧就胜利了。云和恩墨最先研究了数据库是怎么初始化和启动起来的,因而就跟踪它,最后发现Oracle是经过初始化表的引导启动起来的。这张表指向了block file 377,后续再深刻探索读取的文件地址。可是其实在最开始的时候就可以看出读取的文件地址,这说明若是咱们可以跳出思惟惯性并打败心理恐惧,就可以打败困难。
理想中的深刻浅出是一种经历千难万险、峰回路转以后,看山仍是山的平淡。有时候能感觉到会心之意是很是难能宝贵的,运用之妙,存乎一心。咱们应该花力气去积累、深刻、思考,而后才能举重若轻。


本文为云栖社区原创内容,未经容许不得转载。
相关文章
相关标签/搜索