问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

哪个牌子的发泥好用

发布网友 发布时间:2022-04-21 17:53

我来回答

4个回答

懂视网 时间:2022-04-10 19:36

前言

CynosDB是新一代分布式数据库,100%兼容MySQL和PostgreSQL,支持存储弹性扩展,一主多从共享数据,性能更是超越社区原生MySQL和PostgreSQL。CynosDB采用share storage架构,其弹性扩展和高性价比的基石则是CynosDB File System(简称CynosFS):一款腾讯云自研的用户态分布式文件系统。本文旨在从整体上讲述CynosDB和CynosFS的核心架构设计。

挑战与应对

CynosDB是公有云原生架构的,其核心思想是在资源池化的基础上实现公有云高性价比、高可用性以及弹性扩展等诸多优势。实现资源池化的最大技术挑战是高效、稳定的弹性调度能力,该能力也是公有云产品高可用性的基石。计算、网络和存储是公有云三大类Iaas产品,前面两类都有比较成熟的弹性调度架构,唯独存储产品例外。究其根本还是数据调度的代价太高。数据库是典型的计算+存储的产品,要做到资源池化需要:

l存储与计算分离:这样计算资源(主要包含CPU和内存)就可以使用现有成熟的容器、虚拟机等技术实现资源池化

l分布式存储:将数据分割成规格化的块,引入分布式调度系统,实现存储容量和IO的弹性调度,从而实现存储资源的池化

那么对于数据库产品来说,是否有现成架构可以很好的满足以上两个需求呢。我们发现虚拟机+分布式块存储(云盘)的方案非常合适,目前主流公有云平台也都有非常成熟的产品。腾讯云今年早些时候推出的MySQL基础版以及AWS上的RDS都是基于这种架构。图1简单描述了这种架构:

技术分享图片

图 1

但该架构有如下不足:

l网络IO重:可以看到就1个数据库实例,就有大量数据需要写到云盘,这些数据主要包括:WAL LOG、页数据、防止页部分写的Double Write或者Full Page Write。除此之外,云盘还要将这些数据做多个备份

l主从实例不共享数据:一方面浪费了大量存储,另一方面进一步加重了网络IO

这些不足导致基于该架构的数据库产品在系统吞吐能力上无法与基于物理机部署的主从架构竞争,而且延迟也受到很大的挑战,这对OLTP类业务的影响非常明显。同时每个数据库实例都单独拥有一份(实际可能是2-3份)存储,成本也很高。

CynosDB针对这两个不足,采用了如下设计:

l日志下沉: WAL LOG从逻辑上已经包含了数据的所有变动,CynosDB将WAL LOG下沉到存储层,数据库实例就只需要将WAL LOG写到存储层,不再需要写页数据(页数据以及Double Write或Full Page Write),同时这个WAL LOG也作为RAFT协议的日志来完成多个数据备份的同步,进一步减少了网络IO。

l主从实例共享数据:CynosDB的主从实例共享共一份存储数据,进一步减少了网络IO,同时极大的减少了存储容量

循着这两个解决思路,我们对传统基于云盘的架构进行优化,就有了CynosDB如下架构:

技术分享图片

图 2

图中组件包括:

lDB Engine:数据库引擎,支持一主多从。

lDistributed File System:用户态分布式文件系统,主要提供分布式的文件管理,负责将文件的读写请求翻译为对应的BLOCK读写

lLOG/BLOCK API:Storage Service提供的读写接口,对于读写请求有不同处理:

n写请求:将修改日志(等价于WAL LOG)通过LOG API发送到Storage Service

n读请求:直接通过BLOCK API读取数据

lDB Cluster Manager:负责一主多从DB集群的HA管理。

lStorage Service:负责日志的处理、BLOCK数据的异步回放、读请求的多版本支持等。同时还负责将WAL LOG备份到Cold Backup Storage

lSegment(Seg):Storage Service管理数据BLOCK和日志的最小单元(10GB),也是数据复制的实体。图中同样颜色的3个Seg实际存储同一份数据,通过一致性协议(Raft)进行同步,我们叫做Segment Group(SG)。

lPool:多个SG从逻辑上构成一个连续的存储数据BLOCK的块设备,供上层的Distributed File System分配使用。Pool和SG是一对多的关系。

lStorage Cluster Manager:负责Storage Service以及Segment Group 的HA调度,以及维护Pool和SG的对应关系。

lCold Backup Service:接收到WAL LOG后,进行增量备份,根据增量备份,可以灵活的生成全量备份和差异备份

可以看到,上面中除了DB Engine和DB Cluster Manager外的所有模块构成了一个与数据库引擎无关的用户态分布式文件系统,我们命名为:CynosFS。

日志下沉和异步回放

这里CynosDB借鉴了AWS Aurora论文中日志即数据库的思想,将WAL LOG下沉到Storage Serivce,计算层只写WAL LOG,而由Storage Serivce异步地将WAL LOG应用到对应的BLOCK上,在减少写IO的同时,也是Storage Serivce提供MVCC读能力的基础。而MVCC是主从节点共享存储的基础。Storage Serivce中的数据和日志都是以Segment为单元进行管理的,图3描述了写的基本流程:

技术分享图片

图 3

1.接收到更新日志,写到磁盘,并行发起第2步

2.发起RAFT日志复制

3.RAFT多数派提交成功,返回写日志成功

4.异步的将日志记录挂载到对应数据BLOCK的更新链上

5.合并更新链中的日志记录到数据BLOCK

6.将日志备份到冷备系统

7.回收无用日志

这里第4步会对更新的数据BLOCK形成1个更新链,从而支持数据BLOCK多个版本的读,进而提供MVCC能力。通过控制第5步的合并进度,就可以控制MVCC的起始窗口。

同时CynosDB还将页面CRC等操作放到了存储服务中,充分利用存储服务器的CPU资源

MVCC实现

CynosFS的MVCC能力是CynosDB一主多从架构的基础,本小节会详细描述其运行机制。

首先我们引入一系列概念:

lMini-transaction(MTR):就像数据库事务用来保证事务的ACID特性,MTR用来保证磁盘上页数据的ACID特性。举个例子,1个B+树的插入操作,在造成节点分裂的情况下,最多会修改3个数据页,这3个数据页的修改需要当做1个事务来处理,这就是MTR。数据库实例在磁盘上的数据是按照MTR为最小单元进行更新的

lWrite Ahead Log(WAL LOG):关系数据库常用的保证数据一致性的技术。WAL LOG是一个增量日志流水,里面的日志记录(Log Records)保存了页面修改操作。由于CynosFS是与具体数据库引擎无关的分布式文件系统,其WAL LOG中记录的是对数据BLOCK的二进制修改,是物理日志

lLog Sequence Number(LSN):WAL LOG中每条Log Record都会有1个唯一标识的序列号,从1开始,按Log Record产生的连续单调递增。

lConsistency Point LSN(CPL):一个MTR可能对应多个磁盘数据页的修改,相应的会产生多条日志记录,这批日志记录中的最后1条(也就是LSN值最大的1条)标识为CPL,这条日志记录对应了一个磁盘上的数据状态,该状态表示1个MTR的完整应用,也是MVCC的读一致性状态

lSegment Group Complete LSN(SGCL):1个数据库实例的数据页会分布到多个SG上,因此每个SG只会持有部分日志记录,SCL表示该SG已经将所有小于等于SCL的日志记录持久化到磁盘上了。对于CynosFS来说,因为SG采用了Raft协议,SCL就是Raft的CommitIndex。

lPool Complete LSN(PCL):表示构成该Pool的所有SG已经将小于等于PCL的日志持久化到磁盘上。因为LSN是连续单调递增的,这也要等价于中间没有空洞

lPool Consistency Point LSN(PCPL):不大于PCL的最大的CPL。逻辑上表示:已经持久化到磁盘的可提供MVCC读一致性的点。

首先主实例对所有数据页的修改都经过Distributed File System的转换,形成Pool级别的日志,并附带连续单调递增的LSN,分发到不同的SG。SG会在完成Raft Commmit后推进自己的SGCL并返回,主实例根据所有SG的完成情况,推进PCL和PCPL。下面我们通过2幅图描述PCL和PCPL的推进过程:

技术分享图片

图 4

首先该Pool由2个SG构成,每个SG中有3个Segment,存储同一份数据。当前有LSN为1~8的日志已经持久化到2个SG中,其中1、3、4、7在SG A上,2、5、6、8在SG B上。这8条日志属于3个MTR,分别是:MTR-x(1、2、3),MTR-y(4、5),MTR-z(6、7、8),其中3和5都是CPL,表示MTR-x和MTR-y对应的日志已经全部持久化了,8不是CPL,说明MTR-z后续还有日志记录。按照上面的定义,此时PCL为8,而PCPL为5

技术分享图片

图 5

图5中,MTR-z的1条日志CPL9被持久化到SG A,按照定义,此时PCL和PCPL都更新到了9。

这里主要指从实例的读流程。从实例具有自己的内存数据,在主实例更新了数据后,需要同步更新从实例的内存数据,否则会出现不一致的情况。主实例会将日志记录以及最新的PCPL值推送给从实例。因此从实例的PCPL值会较主实例有所延迟。这个PCPL值决定了从实例上所有事务能读到的最后1个MTR。同时为了减少从实例的延迟,主实例可能不等PCPL值推进先把日志推送到从实例,因此从实例需要保证大于本地PCPL值的那些日志不被应用。从实例对这些更新日志的处理方式有两类:如果对应修改的数据页在Buffer Pool中,则应用此日志更新到对应数据页,否则直接丢弃。最后从实例上的读事务在每次访问数据页时(不管直接从Buffer中获取到,还是从Storage Service获取),因为可能一次读入多个页,所以需要取当前的PCPL值为Read Point LSN(简称:RPL),用RPL达成到一致性读(因为PRL是一个PCPL值,其一定能保证MTR的完整性)。CynosDB支持一主多从,每个从实例上都会有很多读事务,这些读事务都具有自己的RPL,所有这些RPL中最小的我们称之为Min-RPL(简称:MRPL),那么在MRPL和PCPL之间可能会有多个CPL点,不同读事务的RPL可能在这个区间的任何1个CPL点上。因此Storage Service要能支持读取在这个区间内任意CPL点的数据,也就是MVCC。CynosDB使用数据页+更新日志链的方式来实现。

最后让我们回到图3,SG需要定期回收无用的日志记录,我们可以看到,所谓无用的日志记录就是其LSN值小于MRPL的那些。而大于等于MRPL的那些日志因为要用来支持MVCC,所以必须保留。

事务提交

一个数据库事务由多个MTR组成,最后1个MTR的最后1条日志的LSN(必然也是个CPL)我们称之为Commit LSN(简称:CLSN)。为了提升效率,日志到Storage Service的推送采用异步流水线的方式,同时按照SG进行分组并行推送。全局来看,因为是并行的,所以可能会有乱序,但推送到某个SG上的日志一定是按照LSN单调递增的(不连续)。随着PCPL的推进,一旦PCPL值大于某个事物的CLSN,该事物就可以完成Commit操作了。

崩溃恢复

首先,CynosDB会持续的保存主实例的PCPL,这个PCPL的备份值我们称之为:Last PCPL(简称:L-PCPL)。CynosDB需要保证L-PCPL值的更新足够快,以确保那些大于L-PCPL的日志记录没有被回收。在此前提下,我们通过如下步骤实现崩溃恢复:

技术分享图片

图 6

首先,新的主实例获取到L-PCPL值为3。该实例由2个SG组成,其中SG A中已经持久化了日志(1、4、5),而SG B中持久化了日志(2、3、6、8)。

技术分享图片

图 7

主实例向2个SG读取大于3的所有日志LSN,获取到SG A的4、5以及SG B的6、8。这样形成了3、4、5、6、8的日志流。按照定义,因为没有LSN为7的日志,所以8是无效的,其次6不是CPL,所以6也是无效的,这样就计算出了最新的PCPL值为5。然后将新的PCPL值推送给所有的从实例。

技术分享图片

图 8

最后,主实例将新的PCPL=5推送给所有SG,以便其将大于5的所有日志都清理掉。

经过上面三步,整个数据就回到了PCPL=5这个一致性的点。主实例和从实例就可以提供服务了。

持续备份

实际上,在CynosDB中,几乎不需要全量的备份操作,只要保证SG的WAL LOG在回收前,被增量保存到了冷备系统中就行了。因为逻辑上WAL LOG是包含了所有数据的修改操作,我们可以使用增量的WAL LOG,按照客户需求,生成全量备份和差异备份。而这些操作都可以是由另一套独立的系统基于增量备份数据离线处理的,对CynosDB的线上系统不会造成任何的影响。另外我们还需要对实例的状态配置信息进行备份,以便恢复时能获取到相关信息。

此文已由作者授权腾讯云+社区发布,更多原文请点击

搜索关注公众号「云加社区」,第一时间获取技术干货,关注后回复1024 送你一份技术课程大礼包!

CynosDB技术详解——架构设计

标签:读写   挑战   详解   alt   公有云   备份   流水线   效率   规格   

热心网友 时间:2022-04-10 16:44

发泥是一种给头发定型的用品,和啫喱、发蜡的用途一样,在头发8-9分干的时候使用,不过市面上的发泥牌子有很多,什么牌子的好呢?今天给大家推荐几款品牌。

1、杰士派GATSBY(1978年诞生于日本,日本著名的男性化妆品品牌,知名发泥品牌,行业著名品牌,漫丹(中国)化妆品销售有限公司)

2、施华蔻(于1898年德国,世界美发领导品牌,美发界权威品牌,全球三大美发产品制造商之一,汉高(中国)投资有限公司)

3、沙宣VS(1954年创立于英国,宝洁公司(P&G)出品,全球比较大的日用品公司之一,世界500强企业,宝洁(中国)有限公司)

4、巴黎欧莱雅(始于1907年法国,世界比较大化妆品公司之一,世界著名品牌,世界化妆品行业领先者,欧莱雅(中国)有限公司)

5、威娜Wella(1880年诞生于德国,国际专业美发顶尖品牌,世界500强企业,全球比较大日用品公司之一,宝洁(中国)有限公司)

6、温雅(成立于1992年,广东省名牌产品,香港独资的民族企业,美发染发行业领先品牌,广州温雅日用化妆品有限公司)

7、塞巴斯汀(源于1970年美国,全球顶尖护发造型品牌,时尚发艺的领导品牌,全球第一款卷发棒的开创者,宝洁(中国)有限公司)

8、美奇丝MATRIX(创于1980年,享誉全球的国际品牌,欧莱雅旗下专业美发品牌,美发护发行业著名品牌,欧莱雅(中国)有限公司)

9、伊诺思CYNOS(于1993年在韩国诞生,韩国首屈一指的专业美发品牌,美发行业著名品牌,广州市采奴化妆品有限公司)

10、艾的IDA(创于1982年香港,致力于生产及研制专业级的美发用品的企业,知名发泥品牌,香港世界美发用品(亚洲)有限公司)

热心网友 时间:2022-04-10 18:02

博柔BEAVER 杰威尔JVR 都可以。

发蜡:是一种凝胶状或半固体状的油脂,能够固定发型、使头发亮丽有光泽,就是一种改良的发胶。在你头发吹干的时候涂抹均匀,量不要多才比较好。发泥和发蜡不同的是用发泥造型头发会是哑色的,而用发蜡则是亮亮的。

而且发泥造型承托力高,而头发造型后不会硬硬的,但会有点粘粘的感觉。但是当今社会上发蜡也有哑色的了,发泥也有涂上去后会让头发亮泽的了,所以简单的说,发泥和发蜡已经没什么区别了,甚至你去市场说要买发泥,店员大多都会推荐发蜡给你,他们也会说是一样的。

热心网友 时间:2022-04-10 19:36

这是一个几乎每个男生都曾经遇到过的小场景。
“(电吹风)呼呼呼~~剪完了,头发要打点东西不?”Tony老师脑子想都不用想就脱口而出,饶有兴致的打量自己新鲜出炉的“作品”。
不知道大家有没有同感:男生不打发蜡,就等同于女生素颜。
网上有个段子,女生花200块弄个发型,跟没弄一样没什么区别,但男生花15块钱剪个发,就跟整容一样。
来看看女生版的(前方高能!!!)
01发泥的简介
发泥的成分主要是白凡士林、18号白油、蜂蜡、适量精纯橄榄油、白蜡香精、植物蜡、定型因子等,这些物质大多数是化学物质,本身带有不同的酸碱性。
目前市面上比较常见的品牌有:杰士派、马丁、骷髅头、杰威尔、丝蕴、施华蔻、欧莱雅、魔香、沙宣、维特丝、体吉等等,还有很多,就不一一列举了。
02发泥的特点
从表面看,发泥是一种凝胶状或者半固体状的油脂,从本质上看,它是一种作用于头发表皮层的化学物质,在头发8-9成干的时候使用效果最好。
发泥的造型承托力高(通俗的说造型能力强),而头发造型后不会显得生硬,但是会有点黏黏的感觉,这种感觉在南方的“回南天”更明显。
03高光和哑光发泥
不同光度的发泥是不会影响定型的持久度的。高光和哑光的发泥最大的区别就在于最终展现出来的视觉效果,前者使头发光滑亮泽,能完美演绎柔和的卷发曲线,让头发保持有弹力的光泽,但用量稍微多了容易显得油腻;后者看上去会更加立体,有动感,相对高光比较干爽。
04发泥的生产标准
发泥之所以能和发油、发蜡区分开(大多数人觉得三者没什么区别),是因为含有一个特别的配方:膨润土(膨润土是何物自行百度吧,不展开说了)
但是有一个化学物质大家有必要知道:对羟基基苯甲酸酯。
这个物质通常用于化妆品的防腐剂,会损伤头皮,严重可能还会导致脱发。
由于我国没有对发泥这类产品设置生产规范,所以市面上能见到的发泥都是采用了【QB-T4076-2010发蜡标准】
05发泥使用技巧
关于怎么用发泥抓出理想的发型,网上的教程一搜一大把,不过一看就会,一学就废是我们“优良传统”,在这里我用几张图片简单明了地展示给大家。
1.先把头发吹到8-9成干。
2.取出发泥(根据自己的发量取)。
3.把发泥戳到双手十指(戳到轻微发热效果最好)
4.根据自己的想法造型。
5.可用梳子修整一下碎发。
6.帅气的我大功告成了。
06发泥的副作用
发泥是碱性产品,会把头发表皮层的毛鳞片打开。如果使用过于频繁或者时间过长,头发毛鳞片不能闭合,就会显得头发干枯,毛躁。
这时候头发需要适当护理一下,譬如暂停使用发泥一段时间、有条件的可以去焗油,或者洗发时用上酸性的护发素等手段。
07如何辨别发泥的质量
除了根据不同的发质和长度选择发泥,它的质量也是至关重要的,买回来的发泥怎么判断质量好不好呢,下面这几点是合格发泥的必备特点:
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 红米手机权限设置在哪里设置? 华为手机开机一直停留在honor开不了,有时候亮有时候不亮,就一直震动? 我发消息在微信群提示操作频繁 已经第二天了还是提... 微信群聊发不了消息,私法好友可以!求!!! 我想两台电脑共享一个打印机怎样设置! 我的微信群聊受限制,收不到信息和发不出信息,发... 如何让多台电脑在同一路由器中共享一台打印机 微信群里,发消息,过于频繁,请稍后再试,谁有解决的... 微信群消息太多收不到信息了 微信群发送消息过于频繁。怎么办呢 怎么让多台电脑共享一台打印机 多吃巧克力有哪些好处和坏处? 常吃巧克力对人有没有好处? 多吃巧克力好吗 经常吃巧克力对身体有害吗? 经常吃巧克力有哪些好处? 多吃巧克力的好处和坏处? 经常吃巧克力对身体有益吗 东北杂酱面的做法步骤图,东北杂酱面怎么做 常吃巧克力有什么坏处,说的越多越好 发泥和发蜡哪个适合新手? 红米note7设置 干胶,发蜡,发泥的选择,高手进。。。 在英国留学,如何挑选适合亚洲人的发泥? 发泥(发蜡)的选择 红米note手机设置了上网权限控制在哪里 发泥和发蜡怎么选择 小米note权限设置在哪 沙宣发蜡,发泥和发胶,我该如何挑选 红米noet7如何获取root权限? 如何正确使用发泥发蜡 发胶、发腊、发泥、着哩水该怎么选择阿? 红米note手机怎么root权限获取 男生给头发做造型用发蜡还是发泥好? 怎样用发泥、我是男的 发蜡和发泥的选择?(高分求助) 发泥发蜡怎么选择?有什么使用方法 关于发泥(发蜡)的挑选```塑形``` 清代武状元马全有什么样的传奇经历? 青海花儿歌手马全是哪里人什么民族