白皮书(英语:White
Paper)通常指具有权威性的报告书或指导性文本作品,用以阐述、解决或决策。白皮书在政府和B2G市场中都有应用。
白皮书或是指是政府就某一重要政策或议题而正式发表的官方报告书,起源于英美政府。最早的白皮书是1922年邱吉尔白皮书。因为报告书的封面是白色,所以被称为白皮书。一国政府或议会正式发表的以白色封面装帧的重要文件或报告书的别称。“皮书”最早源于政府部门对某个专门问题的特定报告,通常这种报告在印刷时不作任何装饰,封面也是白纸黑字,所以称为“白皮书”。如1949年8月美国发表的《美国与中国的关系的声明》为白皮书。封面用蓝色,叫蓝皮书;用红色,叫红皮书;用黄色,叫黄皮书;用绿色,叫绿皮书等。使用白皮书和蓝皮书的国家最多,特别是白皮书已经成为国际上公认的正式官方文书。不过,一国使用的文件封面颜色也可以有多种。如日本防卫年度报告用白皮,叫防卫白皮书,其外交年度报告则用蓝皮,叫外交蓝皮书。
白皮书可能是一本书,也可能是一篇文章。白皮书作为一种官方文件,代表政府立场,讲究事实清楚、立场明确、行文规范、文字简练,没有文学色彩。白皮书既可以是系列的,比如,中国国防白皮书 ...
Loki是 Grafana Labs
团队最新的开源项目,是一个水平可扩展,高可用性,多租户的日志聚合系统。它的设计非常经济高效且易于操作,因为它不会为日志内容编制索引,而是为每个日志流编制一组标签。项目受
Prometheus 启发,官方的介绍就是:Like Prometheus, but for logs.,类似于
Prometheus 的日志系统。 Loki项目于2018年在Grafana Labs启动,并在KubeCon
Seattle宣布。Loki是根据Apache 2.0许可发行的。 Grafana
Labs自豪地领导Loki项目的开发,在Lofana中建立了对Loki的一流支持,并确保Grafana
Labs的客户获得所需的Loki支持和功能。
与其他日志记录系统不同,Loki是基于仅索引有关日志的元数据的想法而构建的:标签(就像Prometheus标签一样)。日志数据本身然后被压缩并存储在对象存储(例如S3或GCS)中的块中,甚至存储在文件系统中的本地。小索引和高度压缩的块简化了操作,并大大降低了Loki的成本。
与其他日志聚合系统相比,Loki具有下面的一些特性:
...
关系模型给出了关系操作的能力的说明,但不对关系数据库管理系统(Database
Management System,
RDBMS)语言给出具体的语法要求,也就是说不同的关系数据库管理系统可以定义和开发不同的语言来实现这些操作。
1.基本的关系操作
关系模型中常用的关系操作包括查询(Query)操作和插入(Insert)、删除(Delete)、修改(Update)操作两大部分。
关系的查询表达能力很强,是关系操作中最主要的部分。查询操作又可以分为选择、投影、连接、除、并、差、交、笛卡尔积等。其中,选择、投影、并、差、笛卡尔积是5种基本操作,其他操作均可以使用基本操作来定义和导出。
关系操作的特点是集合操作方式,即操作的对象和结果都是集合。这种操作方式也称为次一集合(
set-at-a-time)的方式。
2.关系数据语言的分类
关系操作是通过关系语言来实现的。关系语言的特点(优点)是高度非过程化,即:用户不必请求数据库管理员为其建立特殊的存取路径,存取路径的选择由DBMS的优化机制来完成;用户也不必求助于循环和递归来完成数据的重复操作。
关系操作的能力可以用两种方式来表示:代数方式和逻辑 ...
计算机系统结构的定义和内涵
从计算机的层次结构角度来看,系统结构( System
Architecture)“是对计算机系统中各级界面的定义及其上下的功能分配。每级都有其自己的系统结构。在此,先说明有关“透明”的概念。如果客观存在的事物或属性从某个角度看不到,则称对它是透明(
Transparent)的。不同机器级程序员所看到的计算机属性是不同的,它就是计算机系统不同层次的界面。系统结构就是要研究对于某级,哪些属性应透明,哪些属性不应透明。透明可简化该级的设计,但因无法控制也会带来不利影响。因此,要正确进行透明性取舍。
计算机系统结构也称计算机系统的体系结构( Computer
Architecture),它只是系统结构中的一部分,指的是传统机器语言机器级的系统结构。其界面之上包括操作系统级、汇编语言级、高级语言级和应用语言级中所有软件的功能,该界面之下包括所有硬件和固件的功能。因此,它是软件和硬件/固件的交界面,是机器语言、汇编语言程序设计者或编译程序设计者看到的机器物理系统的抽象。
结论:计算机系统结构研究的是软、硬件之间的功能分配以及对传统机器级界面的确定。为机器语言、汇编语言程 ...
从使用语言的角度,一台由软、硬件组成的通用计算机系统可以被看成是按功能划分的多层机器级组成的层次结构。层次结构由高到低依次为应用语言机器级、高级语言机器级,编语音机器级操作系统机器级,传统机器语言机器级和微程序机器级。具体的计算机系统,其层次数的多少可以有所不同。
对使用某一级语言编程的程序员来讲,只要熟悉和遵守该级语言的使用规定,所编程序就总能在此机器上运行并得到结果,而不用考虑这个机器级是如何实现的。就好像该程序员有了一台可以直接使用这种语言作为机器语言的机器一样。这里,“机器”被定义为能存储和执行相应语言程序的算法和数据结构的集合体。实际上,只有二进制机器指令即传统所讲的机器语言与机器硬件直接对应,方可直接被硬件识别和执行。
各机器级的实现采用翻译技术或解释技术,或者是这两种技术的结合。翻译(Trans-lation)技术是先用转换程库将高一级机器级上的程序整个地变换成低级机器级上等效的程序,然后在低一级机器级上实现的技术。解释(Interpretation)技术则是在低级机器级上用它的一串语句或指令来仿真高级机器级上的一条语句或指令的功能,是通过对高级机器级语言程序中的每条语 ...
关系数据库系统是支持关系模型的数据库系统。作为一种数据模型,关系模型同样包含三个组成要素,分别是关系数据结构、关系操作集合和关系完整性约束。
关系数据结构
关系模型的数据结构非常简单,只包含单一的数据结构,即关系。在关系模型中,现实世界的实体以及实体间的各种联系,均是使用关系来表示。在用户看来,关系模型是把数据库表示为关系的集合,且关系数据库是以二维表格的形式组织数据,例如下面就是一张记录学生基本信息的二维表格,该表称为学生基本信息登记表。
下面,以表所示的二维表格为例,介绍关系数据库的基本术语。
表(Table)
8e表,也称为关系,是一个二维的数据结构,它由表名、构成表的各个列(如学号、姓名等)及若干行数据(各个学生的具体信息)组成。每个表有一个唯一的表名,表中每一行数据描述一条具体的记录值,如一个学生的基本信息。
关系( Relation)
一个关系逻辑上对应一张二维表,可以为每个关系取一个名称进行标识。例如,表所示的学生基本信息登记表,也即学生基本信息登记表关系。
关系可以有三种类型,即基本关系、查询表和视图表。其中,基本关系通常又称为基本表或基表,是实际存在的表,它是实际存 ...
关系数据库是目前应用最广泛的数据库,它以关系模型作为数据的逻辑模型,采用关系作为数据的组织方式,其数据库操作建立在关系代数的基础上,具有坚实的数学基础。关系数据库具有较高的数据独立性,当数据的存储结构发生变化时,不会影响应用程序,这样可大大减少系统维护的工作量。
关系数据库概述
关系数据库的基本特征是使用关系数据模型组织数据,这种思想源于数学。1962年
CODASYL发表的“信息代数”就是最早将数学方法用于数据处理的。接着,1968年
David Child在IBM7090机上实现了集合论数据结构。随后,1970年IBM公司的E.F.
Codd在美国计算机学会会刊《 Communications of the ACM》上发表了题为“A
Relational Model of Data for shared Data
Banks”的论文,系统、严格地提出了关系模型,由此开创了数据库系统的新纪元。此后,
E.F. Codd连续发表了多篇论文,奠定了关系数据库的理论基础。
由于受到当时计算机软、硬件环境及其技术的制约,道直到20世纪70年代末,关系方法的理论研究和软件系统的研制才取得了重大 ...
最近在做一些微服务相关的设计,内容包括服务的划分,Restful
API的设计等。其中比较棘手的就是Service的职责划分:如何抽象具有统一业务范畴的Model,使其模块化,又如何高度提炼并组合多模块,使得业务可独立服务化。为了找寻答案,看了不少书籍和博客,在DDD中找到了一些思路,个人觉得受益匪浅,或许也可以受用于大家,特分享于此。
什么是DDD
软件开发不是一蹴而就的事情,我们不可能在不了解产品(或行业领域)的前提下进行软件开发,在开发前,通常需要进行大量的业务知识梳理,而后到达软件设计的层面,最后才是开发。而在业务知识梳理的过程中,我们必然会形成某个领域知识,根据领域知识来一步步驱动软件设计,就是领域驱动设计的基本概念。
听起来这和传统意义的软件开发没啥区别,只是换了点新鲜的名词而已,其实不然。
软件开发 VS DDD
一般软件设计或者说软件开发分两种:瀑布式,敏捷式。
前者一般是项目经理经过大量的业务分析后,会基于现有需求整理出一个基本模型,再将结果传递给开发人员,这就是开发人员的需求文档,他们只需要照此开发便是。这种模式下,是很难频繁的从用户那里得到反馈,因此在前期分析时就 ...
互联网、人工智能等高科技行业在过去的十五年中始终保持着强劲的发展势头,不仅IT从业者人数逐年增长,编程学习者的数量更是迎来了井喷。程序员已成为时下最火热的职位之一,题主的困惑也是当今众多编程工作者和学习者广为关注的问题——英语对程序员来说究竟重不重要?又或者,有多重要?
事实上,对大多数程序员来说,在实际操作中,仅仅完成工作不需要精湛的英语水平,但需要掌握基本的英语词汇和编程中需要的专业句式。也就是说,作为一名基础的程序员,你的英语达到及格水平即可;但如果你想深造为高阶程序员,良好的英语能力是必须项。
时下不仅各大高校严格设定英语通识教育的考核制度,甚至为计算机相关专业开设独立的英语课程,中小学也注重英语式编程教学。
那么英语在程序员的工作中究竟扮演着什么样的角色?
众所周知,对于程序员来说,编程最重要的是算法和程序语法,而英语仅是实现算法的一门工具。编程起源于国外,无论在海外还是本土,绝大部分的编程语言都是英文版本。简单来说,编程(coding)就是用某编程语言实现算法、数据结构。
直观上来看,编程就是用有限的英文字符“组合拼凑”出一份代码,这涉及的英文词汇量很少。程序员会把绝大多数 ...
自从去年,开始用128g的手机,玩游戏什么王者,和平精英占用比较多,其他乱七八糟也不少,132个应用,基本常用了都在上面了,不用的倒是一大堆,也不想删,人懒。其实128g我觉得够用,本人并不喜欢拍照,库存较少,500张还是有的。
选择128G
为什么首先选择128g呢,其实128是目前比较容易接受的存储,6+128,对于大部分人来讲,是足够支持后面2年的正常使用,不论学生(视频剪辑类,ps修图类除外)来讲,128g应该勉强够用,定期清理缓存,还是很有必要的,可能你说你有学习课件,视频的,过来人都知道,视频一节(约40分钟)几百兆,超过1g的很少,一天不可能一直看视频,10g的空间一天,一周也就是70g,看完清理,或者搞个网盘,在线观看,我在校随意拉动网盘进度条是没什么问题。
选择256g
选择256g,自己也不知道能存点啥,比上面贵个几百块还是有的,内存大点,还是有必要的,对于重度游戏玩家什么王者,和平精英,cf手游,QQ飞车,崩坏,阴阳师,就光游戏都占用了接近40/50g,那还是搞个256的,还是要绝对顶配,12+256的才能配上你的生活使用。
还有就是特别喜欢拍照,库存上千+++的 ...