精华内容
下载资源
问答
  • 容易多写一笔的字
    万次阅读
    2017-04-19 09:18:13

    写一手好字:硬笔书法轻松自学指南(知乎周刊 Plus)

    知乎编辑团队

     楷书,认知好字的范本
     2017-03-16
    《黄自元间架结构九十二法》

     选本好字帖
     2017-03-16
    先谈书体。
    前人对练习书法的程序,各有主张。有的认为应由书体起源篆—隶—楷—行—草的演变顺序学习,有的主张先练楷书,再追上篆隶。不过篆隶在今日不会日常使用,所以不打算深入书法的朋友不用考虑。那么就是楷书和行书的书体顺序问题了。
    楷书结构严谨,笔画规范。从基本的端庄开始练起,比较实际。行书与楷书虽然差别不大,但行书笔画的起止转承,抑扬顿挫都是跟楷书一脉相承,没有楷书的基础,行书并不让人感觉清爽。楷书写得行些,就是行书行楷;行书写得草些,就是草书行草。楷书练好了,练行书是很轻易的事情。
    所以建议,以楷书为主,行书为辅,同时练起。
     2017-03-16
    书体确定了,现在来谈书派。
    同是楷书,各派的面貌都不一样。我建议,先临摹一两个月现代人的硬笔楷书如《田英章硬笔楷书》作为基础,再选用古帖临字。选好一位大家之后,就要专心临写,不要见异思迁。比如选定的是欧阳询的《九成宫醴泉铭》,就要按照「摹」「临」的方法,一步步练下去,直到意临。这时欧体的基础已经打得很扎实。如有意继续提高巩固,另开一新帖,则最好从欧体其他的帖子《皇甫君碑》《虞温恭公碑》等帖中继续巩固学习欧派楷书。然后按照同样的方法学习欧派行书。
     2017-03-16
    附上一些精良的字帖和书法大家(部分经典之作如《兰亭序》《胆巴碑》《九成宫碑》《多宝塔碑》等都有自带米字

    更多相关内容
  • 书法繁体怎么

    万次阅读 2021-01-30 16:32:05
    1. 于的繁体怎么1.于的繁体就是于 ,“於”不是于的繁体。2.於,作为介词,是古汉语中用的很的虚词。 “于”不是“於”的简体(《简化总表》、《通用规范汉字表》都没有规定“於”简化为“于”,...

    1. 于的繁体字怎么写

    1.于的繁体字就是于 ,“於”不是于的繁体字。

    2.於,多作为介词,是古汉语中用的很多的虚词。 “于”不是“於”的简体字(《简化字总表》、《通用规范汉字表》都没有规定“於”简化为“于”,《新华字典》对“於yú”的解释是同“于”)。

    “于”、“於”多数情况相通,但“于”并不能代替“於”的全部意义。 於亦是姓,不同于于姓。

    “於”字有三种读音,即yú(于)、wū(呜)、yū(迂); 虽然中国大陆一般把“於”略写为“于”,但是“於”字读wū(呜)、yū(迂)两种读音时,仍作“於”不能略写为“于”,如见于先秦文献的“於戏”、“於菟”、樊於期等。 “于”在一般意向可通“於”,但不乏特殊的独有意向,如“于”作为姓氏和作为动词词头“黄鸟于飞”、“凤凰于飞”,不通“於”。

    2. 于字的繁体字怎么写

    于字的繁体字写法为:

    读音:yú。

    基本字义:

    1、介词(a.在,如“生于北京”;b.到,如“荣誉归于老师”;c.对,如“勤于学习”;d.向,如“出于自愿”;e.给,如“问道于盲”;f.自,从,如“取之于民”;g.表比较,如“重于泰山”;h.表被动,如“限于水平”)。

    2、后缀(a.在形容词后,如“疏于防范”;b.在动词后,如“属于未来)。

    3、姓。

    词类:作动词、介词。

    词组:于今、于思、于时、于是。

    例句:每发一书,则书百幅,择十之一用之。于是不胜其烦,人情厌恶。

    部首:二部。

    总笔画:3画。

    笔顺:一 一丨。

    3. 于字的繁体字写法 于的繁体字怎么写:於╭★字库网

    拼 音

    部 首 二

    笔 画 3

    五 行 土

    生词本

    基本释义 详细释义

    1.介词(a.在,如“生~北京”;b.到,如“荣誉归~老师”;c.对,如“勤~学习”;d.向,如“出~自愿”;e.给,如“问道~盲”;f.自,从,如“取之~民”;g.表比较,如“重~泰山”;h.表被动,如“限~水平”)。

    2.后缀(a.在形容词后,如“疏~防范”;b.在动词后,如“属~未来)。

    3.姓。

    4. 于的繁体字是什么(行书怎么写)

    繁体字就是于。。什么是行书?行书是汉字最普及的一种书体,始创于东汉末年,成熟于魏晋时期。尔后,历朝历代相继延续,经久不衰。

    行书也叫行押书,是介于楷书和草书之间的字体。行书正因有楷、草之长,笔画简练,书写便捷,笔势流动,体态活跃,容易辨认,因而千百年来深受人们的喜爱,是最实用的一种书体,显示出它强大的生命力。

    (二)行书的分类

    行书大致以其作品所具有的楷书和草书成分,划分为两类:作品中楷书成分较多的称之为行楷或楷行、真行;作品中草书成分较多的则称之为行草或草行。

    四 培养连笔意识训练

    (一)通过笔画练习培养连笔意识

    要写好硬笔行书,首先要了解行书的运笔特点,即行书是流动的楷书,它的基本笔画就反映了这一特征。因此,我们通过基本笔画训练,逐渐掌握行书运笔要领,为写好行书奠定基础。

    点画:行书点虽小,但很重要,起着笔画的起止、过渡、装饰、承上启下、画龙点睛的作用。点有独立点、组合点两种。

    独立点,写法如楷书笔画中撇点,右下顿笔由轻到重转向左下,方向视下一笔画起笔位置而定。

    组合点,分横式排列、竖式排列,重点体现出点与点之间的呼应关系。

    横画:行书横画在字中起平衡作用,随意性大,起、收笔变化多端,短横有时处理成点,数横并存忌平行划一,要姿态各异。

    短横:起笔轻,收笔重,末端收笔可向左下勾出,以呼应下一笔。

    长横:起笔向左下轻落笔,快而有力向右运笔,驻笔后左下方出锋运笔中间轻、两头重。

    竖画:竖画有左竖、右竖、短竖、悬针、垂露之分。左竖向右上回锋与下笔呼应;右竖向左下出锋引带下画.

    悬针竖:垂直书写,出锋不可随意甩出,以免轻浮。

    垂露竖:收尾呈露珠状,但不一定垂直,往往左侧向左凸,右侧向右凸。

    撇画:撇在字中是支撑重心作用,具有较强的运动感,其特点飘逸劲健,灵动活泼。

    小撇:乃字之精神,写法与楷书同。要注意长短、粗细及笔的走向,出锋锐利。

    长撇:中间部分要粗些,但勿过分,笔法与楷书同。

    回带撇:起笔、中间部分与楷同,只是收笔处回锋出钩,以连带下面笔画。

    捺画:在字中支撑字的重心,姿态飘逸,一波三折,给人以流动的美。

    斜捺:由轻到重再轻收笔出锋,与左撇呼应,行书中亦可写成反捺或捺点;

    平捺:写法同捺,关键把握好它的角度和长短。

    钩画:钩画种类繁多(竖钩、横钩、卧钩、斜钩、弯钩、竖弯钩、横折钩、横折弯钩等),要做到稳重而有气势,体现出内在力量。

    横钩:逆势起笔与上笔遥相呼应,转角处不必像楷书那样严格,但要有力;

    展开全文
  • 如何优化MySQL千万级大表,我了6000的解读

    万次阅读 多人点赞 2019-10-21 20:03:03
    千万级大表如何优化,这是个很有技术含量的问题,通常我们的直觉思维都会跳转到拆分或者数据分区,在此我想做一些补充和梳理,想和大家做一些这方面的经验总结,也欢迎大家提出建议。 从开始脑海里开始也是...

    这是学习笔记的第 2138 篇文章

      640?wx_fmt=gif

    千万级大表如何优化,这是一个很有技术含量的问题,通常我们的直觉思维都会跳转到拆分或者数据分区,在此我想做一些补充和梳理,想和大家做一些这方面的经验总结,也欢迎大家提出建议。 

    从一开始脑海里开始也是火光四现,到不断的自我批评,后来也参考了一些团队的经验,我整理了下面的大纲内容。

    640?wx_fmt=png

    既然要吃透这个问题,我们势必要回到本源,我把这个问题分为三部分:

    “千万级”,“大表”,“优化”,

    也分别对应我们在图中标识的

    “数据量”,“对象”和“目标”。

    我来逐步展开说明一下,从而给出一系列的解决方案。 

    1.数据量:千万级

    千万级其实只是一个感官的数字,就是我们印象中的数据量大。 这里我们需要把这个概念细化,因为随着业务和时间的变化,数据量也会有变化,我们应该是带着一种动态思维来审视这个指标,从而对于不同的场景我们应该有不同的处理策略。

     

    1) 数据量为千万级,可能达到亿级或者更高

    通常是一些数据流水,日志记录的业务,里面的数据随着时间的增长会逐步增多,超过千万门槛是很容易的一件事情。

    2) 数据量为千万级,是一个相对稳定的数据量

    如果数据量相对稳定,通常是在一些偏向于状态的数据,比如有1000万用户,那么这些用户的信息在表中都有相应的一行数据记录,随着业务的增长,这个量级相对是比较稳定的。

    3) 数据量为千万级,不应该有这么多的数据

    这种情况是我们被动发现的居多,通常发现的时候已经晚了,比如你看到一个配置表,数据量上千万;或者说一些表里的数据已经存储了很久,99%的数据都属于过期数据或者垃圾数据。

    数据量是一个整体的认识,我们需要对数据做更近一层的理解,这就可以引出第二个部分的内容。 

    2.对象:数据表

    数据操作的过程就好比数据库中存在着多条管道,这些管道中都流淌着要处理的数据,这些数据的用处和归属是不一样的。

    一般根据业务类型把数据分为三种:

    (1)流水型数据

    流水型数据是无状态的,多笔业务之间没有关联,每次业务过来的时候都会产生新的单据,比如交易流水、支付流水,只要能插入新单据就能完成业务,特点是后面的数据不依赖前面的数据,所有的数据按时间流水进入数据库。

    (2)状态型数据

    状态型数据是有状态的,多笔业务之间依赖于有状态的数据,而且要保证该数据的准确性,比如充值时必须要拿到原来的余额,才能支付成功。

    (3)配置型数据

    此类型数据数据量较小,而且结构简单,一般为静态数据,变化频率很低。

    至此,我们可以对整体的背景有一个认识了,如果要做优化,其实要面对的是这样的3*3的矩阵,如果要考虑表的读写比例(读多写少,读少写多...),那么就会是3*3*4=24种,显然做穷举是不显示的,而且也完全没有必要,可以针对不同的数据存储特性和业务特点来指定不同的业务策略。 

    对此我们采取抓住重点的方式,把常见的一些优化思路梳理出来,尤其是里面的核心思想,也是我们整个优化设计的一把尺子,而难度决定了我们做这件事情的动力和风险。

    数据量增长情况

    数据表类型

    业务特点

    优化核心思想

    优化难度

    数据量为千万级,是一个相对稳定的数据量

    状态表

    OLTP业务方向

    能不拆就不拆读需求水平扩展

    ****

    数据量为千万级,可能达到亿级或者更高

    流水表

    OLTP业务的历史记录

    业务拆分,面向分布式存储设计

    ****

    OLAP业务统计数据源

    设计数据统计需求存储的分布式扩展

    ***

    数据量为千万级,不应该有这么多的数据

    配置表

    通用业务

    小而简,避免大一统

    *

    而对于优化方案,我想采用面向业务的维度来进行阐述。 

    3.目标:优化

    在这个阶段,我们要说优化的方案了,总结的有点多,相对来说是比较全了。

    整体分为五个部分:

    640?wx_fmt=png

    其实我们通常所说的分库分表等方案只是其中的一小部分,如果展开之后就比较丰富了。

    640?wx_fmt=png

    其实不难理解,我们要支撑的表数据量是千万级别,相对来说是比较大了,DBA要维护的表肯定不止一张,如何能够更好的管理,同时在业务发展中能够支撑扩展,同时保证性能,这是摆在我们面前的几座大山。

    我们分别来说一下这五类改进方案:

    优化设计方案1.规范设计

    在此我们先提到的是规范设计,而不是其他高大上的设计方案。

    黑格尔说:秩序是自由的第一条件。在分工协作的工作场景中尤其重要,否则团队之间互相牵制太多,问题多多。

    规范设计我想提到如下的几个规范,其实只是属于开发规范的一部分内容,可以作为参考。

    640?wx_fmt=png

    规范的本质不是解决问题,而是有效杜绝一些潜在问题,对于千万级大表要遵守的规范,我梳理了如下的一些细则,基本可以涵盖我们常见的一些设计和使用问题,比如表的字段设计不管三七二十一,都是varchar(500),其实是很不规范的一种实现方式,我们来展开说一下这几个规范。

    1)配置规范

    (1)MySQL数据库默认使用InnoDB存储引擎。

    (2)保证字符集设置统一,MySQL数据库相关系统、数据库、表的字符集使都用UTF8,应用程序连接、展示等可以设置字符集的地方也都统一设置为UTF8字符集。

    注:UTF8格式是存储不了表情类数据,需要使用UTF8MB4,可在MySQL字符集里面设置。在8.0中已经默认为UTF8MB4,可以根据公司的业务情况进行统一或者定制化设置。

    (3)MySQL数据库的事务隔离级别默认为RR(Repeatable-Read),建议初始化时统一设置为RC(Read-Committed),对于OLTP业务更适合。

    (4)数据库中的表要合理规划,控制单表数据量,对于MySQL数据库来说,建议单表记录数控制在2000W以内。

    (5)MySQL实例下,数据库、表数量尽可能少;数据库一般不超过50个,每个数据库下,数据表数量一般不超过500个(包括分区表)。

    2)建表规范

    (1)InnoDB禁止使用外键约束,可以通过程序层面保证。

    (2)存储精确浮点数必须使用DECIMAL替代FLOAT和DOUBLE。

    (3)整型定义中无需定义显示宽度,比如:使用INT,而不是INT(4)。

    (4)不建议使用ENUM类型,可使用TINYINT来代替。

    (5)尽可能不使用TEXT、BLOB类型,如果必须使用,建议将过大字段或是不常用的描述型较大字段拆分到其他表中;另外,禁止用数据库存储图片或文件。

    (6)存储年时使用YEAR(4),不使用YEAR(2)。

    (7)建议字段定义为NOT NULL。

    (8)建议DBA提供SQL审核工具,建表规范性需要通过审核工具审核后

    3)命名规范

    (1)库、表、字段全部采用小写。

    (2)库名、表名、字段名、索引名称均使用小写字母,并以“_”分割。

    (3)库名、表名、字段名建议不超过12个字符。(库名、表名、字段名支持最多64个字符,但为了统一规范、易于辨识以及减少传输量,统一不超过12字符)

    (4)库名、表名、字段名见名知意,不需要添加注释。

    对于对象命名规范的一个简要总结如下表4-1所示,供参考。

    命名列表

    对象中文名称

    对象英文全称

    MySQL对象简写

    视图

    view

    view_

    函数

    function

    func_

    存储过程

    procedure

    proc_

    触发器

    trigger

    trig_

    普通索引

    index

    idx_

    唯一索引

    unique index

    uniq_

    主键索引

    primary key

    pk_

    4)索引规范

    (1)索引建议命名规则:idx_col1_col2[_colN]、uniq_col1_col2[_colN](如果字段过长建议采用缩写)。

    (2)索引中的字段数建议不超过5个。

    (3)单张表的索引个数控制在5个以内。

    (4)InnoDB表一般都建议有主键列,尤其在高可用集群方案中是作为必须项的。

    (5)建立复合索引时,优先将选择性高的字段放在前面。

    (6)UPDATE、DELETE语句需要根据WHERE条件添加索引。

    (7)不建议使用%前缀模糊查询,例如LIKE “%weibo”,无法用到索引,会导致全表扫描。

    (8)合理利用覆盖索引,例如:

    (9)SELECT email,uid FROM user_email WHERE uid=xx,如果uid不是主键,可以创建覆盖索引idx_uid_email(uid,email)来提高查询效率。

    (10)避免在索引字段上使用函数,否则会导致查询时索引失效。

    (11)确认索引是否需要变更时要联系DBA。

    5)应用规范

    (1)避免使用存储过程、触发器、自定义函数等,容易将业务逻辑和DB耦合在一起,后期做分布式方案时会成为瓶颈。

    (2)考虑使用UNION ALL,减少使用UNION,因为UNION ALL不去重,而少了排序操作,速度相对比UNION要快,如果没有去重的需求,优先使用UNION ALL。

    (3)考虑使用limit N,少用limit M,N,特别是大表或M比较大的时候。

    (4)减少或避免排序,如:group by语句中如果不需要排序,可以增加order by null。

    (5)统计表中记录数时使用COUNT(*),而不是COUNT(primary_key)和COUNT(1);InnoDB表避免使用COUNT(*)操作,计数统计实时要求较强可以使用Memcache或者Redis,非实时统计可以使用单独统计表,定时更新。

    (6)做字段变更操作(modify column/change column)的时候必须加上原有的注释属性,否则修改后,注释会丢失。

    (7)使用prepared statement可以提高性能并且避免SQL注入。

    (8)SQL语句中IN包含的值不应过多。

    (9)UPDATE、DELETE语句一定要有明确的WHERE条件。

    (10)WHERE条件中的字段值需要符合该字段的数据类型,避免MySQL进行隐式类型转化。

    (11)SELECT、INSERT语句必须显式的指明字段名称,禁止使用SELECT * 或是INSERT INTO table_name values()。

    (12)INSERT语句使用batch提交(INSERT INTO table_name VALUES(),(),()……),values的个数不应过多。

    优化设计方案2:业务层优化

    业务层优化应该是收益最高的优化方式了,而且对于业务层完全可见,主要有业务拆分,数据拆分和两类常见的优化场景(读多写少,读少写多)

    640?wx_fmt=png

    1)业务拆分

    ü 将混合业务拆分为独立业务

    ü 将状态和历史数据分离

    业务拆分其实是把一个混合的业务剥离成为更加清晰的独立业务,这样业务1,业务2。。。独立的业务使得业务总量依旧很大,但是每个部分都是相对独立的,可靠性依然有保证。

    对于状态和历史数据分离,我可以举一个例子来说明。

    例如:我们有一张表Account,假设用户余额为100。

    640?wx_fmt=png

    我们需要在发生数据变更后,能够追溯数据变更的历史信息,如果对账户更新状态数据,增加100的余额,这样余额为200。

    这个过程可能对应一条update语句,一条insert语句。

    对此我们可以改造为两个不同的数据源,account和account_hist

    在account_hist中就会是两条insert记录,如下:

    640?wx_fmt=png

    而在account中则是一条update语句,如下:

    640?wx_fmt=png

    这也是一种很基础的冷热分离,可以大大减少维护的复杂度,提高业务响应效率。

    2)数据拆分

    2.1 按照日期拆分,这种使用方式比较普遍,尤其是按照日期维度的拆分,其实在程序层面的改动很小,但是扩展性方面的收益很大。

    • 数据按照日期维度拆分,如test_20191021

    • 数据按照周月为维度拆分,如test_201910

    • 数据按照季度,年维度拆分,如test_2019

    2.2 采用分区模式,分区模式也是常见的使用方式,采用hash,range等方式会多一些,在MySQL中我是不大建议使用分区表的使用方式,因为随着存储容量的增长,数据虽然做了垂直拆分,但是归根结底,数据其实难以实现水平扩展,在MySQL中是有更好的扩展方式。

    2.3 读多写少优化场景

    采用缓存,采用Redis技术,将读请求打在缓存层面,这样可以大大降低MySQL层面的热点数据查询压力。

    2.4 读少写多优化场景,可以采用三步走:

    1) 采用异步提交模式,异步对于应用层来说最直观的就是性能的提升,产生最少的同步等待。

    2) 使用队列技术,大量的写请求可以通过队列的方式来进行扩展,实现批量的数据写入。

    3) 降低写入频率,这个比较难理解,我举个例子

    对于业务数据,比如积分类,相比于金额来说业务优先级略低的场景,如果数据的更新过于频繁,可以适度调整数据更新的范围(比如从原来的每分钟调整为10分钟)来减少更新的频率。

    例如:更新状态数据,积分为200,如下图所示

    640?wx_fmt=png

    可以改造为,如下图所示。

    640?wx_fmt=png

    如果业务数据在短时间内更新过于频繁,比如1分钟更新100次,积分从100到10000,则可以根据时间频率批量提交。

    例如:更新状态数据,积分为100,如下图所示。

    640?wx_fmt=png

    无需生成100个事务(200条SQL语句)可以改造为2条SQL语句,如下图所示。

    640?wx_fmt=png

    对于业务指标,比如更新频率细节信息,可以根据具体业务场景来讨论决定。

    优化设计方案3:架构层优化

    架构层优化其实就是我们认为的那种技术含量很高的工作,我们需要根据业务场景在架构层面引入一些新的花样来。

    640?wx_fmt=png

    3.1.系统水平扩展场景

    3.1.1采用中间件技术,可以实现数据路由,水平扩展,常见的中间件有MyCAT,ShardingSphere,ProxySQL等

    640?wx_fmt=jpeg

    3.1.2 采用读写分离技术,这是针对读需求的扩展,更侧重于状态表,在允许一定延迟的情况下,可以采用多副本的模式实现读需求的水平扩展,也可以采用中间件来实现,如MyCAT,ProxySQL,MaxScale,MySQL Router等

    640?wx_fmt=png

    3.1.3 采用负载均衡技术,常见的有LVS技术或者基于域名服务的Consul技术等

    3.2.兼顾OLTP+OLAP的业务场景,可以采用NewSQL,优先兼容MySQL协议的HTAP技术栈,如TiDB

    3.3.离线统计的业务场景,有几类方案可供选择。

    3.3.1 采用NoSQL体系,主要有两类,一类是适合兼容MySQL协议的数据仓库体系,常见的有Infobright或者ColumnStore,另外一类是基于列式存储,属于异构方向,如HBase技术

    3.3.2 采用数仓体系,基于MPP架构,如使用Greenplum统计,如T+1统计

    优化设计方案4:数据库优化

    数据库优化,其实可打的牌也不少,但是相对来说空间没有那么大了,我们来逐个说一下。

    640?wx_fmt=png

    4.1 事务优化

    根据业务场景选择事务模型,是否是强事务依赖

    对于事务降维策略,我们来举出几个小例子来。

    4.1.1 降维策略1:存储过程调用转换为透明的SQL调用

    对于新业务而言,使用存储过程显然不是一个好主意,MySQL的存储过程和其他商业数据库相比,功能和性能都有待验证,而且在目前轻量化的业务处理中,存储过程的处理方式太“重”了。

    有些应用架构看起来是按照分布式部署的,但在数据库层的调用方式是基于存储过程,因为存储过程封装了大量的逻辑,难以调试,而且移植性不高,这样业务逻辑和性能压力都在数据库层面了,使得数据库层很容易成为瓶颈,而且难以实现真正的分布式。

    所以有一个明确的改进方向就是对于存储过程的改造,把它改造为SQL调用的方式,可以极大地提高业务的处理效率,在数据库的接口调用上足够简单而且清晰可控。

    4.1.2 降维策略2:DDL操作转换为DML操作

    有些业务经常会有一种紧急需求,总是需要给一个表添加字段,搞得DBA和业务同学都挺累,可以想象一个表有上百个字段,而且基本都是name1,name2……name100,这种设计本身就是有问题的,更不用考虑性能了。究其原因,是因为业务的需求动态变化,比如一个游戏装备有20个属性,可能过了一个月之后就增加到了40个属性,这样一来,所有的装备都有40个属性,不管用没用到,而且这种方式也存在诸多的冗余。

    我们在设计规范里面也提到了一些设计的基本要素,在这些基础上需要补充的是,保持有限的字段,如果要实现这些功能的扩展,其实完全可以通过配置化的方式来实现,比如把一些动态添加的字段转换为一些配置信息。配置信息可以通过DML的方式进行修改和补充,对于数据入口也可以更加动态、易扩展。

    4.1.3 降维策略3:Delete操作转换为高效操作

    有些业务需要定期来清理一些周期性数据,比如表里的数据只保留一个月,那么超出时间范围的数据就要清理掉了,而如果表的量级比较大的情况下,这种Delete操作的代价实在太高,我们可以有两类解决方案来把Delete操作转换为更为高效的方式。 

    第一种是根据业务建立周期表,比如按照月表、周表、日表等维度来设计,这样数据的清理就是一个相对可控而且高效的方式了。 

    第二种方案是使用MySQL rename的操作方式,比如一张2千万的大表要清理99%的数据,那么需要保留的1%的数据我们可以很快根据条件过滤补录,实现“移形换位”。

    4.2 SQL优化

    其实相对来说需要的极简的设计,很多点都在规范设计里面了,如果遵守规范,八九不离十的问题都会杜绝掉,在此补充几点:

    4.2.1 SQL语句简化,简化是SQL优化的一大利器,因为简单,所以优越。

    4.2.2 尽可能避免或者杜绝多表复杂关联,大表关联是大表处理的噩梦,一旦打开了这个口子,越来越多的需求需要关联,性能优化就没有回头路了,更何况大表关联是MySQL的弱项,尽管Hash Join才推出,不要像掌握了绝对大杀器一样,在商业数据库中早就存在,问题照样层出不穷。

    4.2.3 SQL中尽可能避免反连接,避免半连接,这是优化器做得薄弱的一方面,什么是反连接,半连接?其实比较好理解,举个例子,not in ,not exists就是反连接,in,exists就是半连接,在千万级大表中出现这种问题,性能是几个数量级的差异。 

    4.3 索引优化

    应该是大表优化中需要把握的一个度。

    4.3.1 首先必须有主键,规范设计中第一条就是,此处不接收反驳。

    4.3.2 其次,SQL查询基于索引或者唯一性索引,使得查询模型尽可能简单。

    4.3.3 最后,尽可能杜绝范围数据的查询,范围扫描在千万级大表情况下还是尽可能减少。

    优化设计方案4:管理优化

    这部分应该是在所有的解决方案中最容易被忽视的部分了,我放在最后,在此也向运维同事致敬,总是为很多认为本应该正常的问题尽职尽责(背锅)。

    640?wx_fmt=png

    千万级大表的数据清理一般来说是比较耗时的,在此建议在设计中需要完善冷热数据分离的策略,可能听起来比较拗口,我来举一个例子,把大表的Drop 操作转换为可逆的DDL操作。

    Drop操作是默认提交的,而且是不可逆的,在数据库操作中都是跑路的代名词,MySQL层面目前没有相应的Drop操作恢复功能,除非通过备份来恢复,但是我们可以考虑将Drop操作转换为一种可逆的DDL操作。

    MySQL中默认每个表有一个对应的ibd文件,其实可以把Drop操作转换为一个rename操作,即把文件从testdb迁移到testdb_arch下面;从权限上来说,testdb_arch是业务不可见的,rename操作可以平滑的实现这个删除功能,如果在一定时间后确认可以清理,则数据清理对于已有的业务流程是不可见的,如下图所示。

    640?wx_fmt=png

    此外,还有两个额外建议,一个是对于大表变更,尽可能考虑低峰时段的在线变更,比如使用pt-osc工具或者是维护时段的变更,就不再赘述了。

    最后总结一下,其实就是一句话:

    千万级大表的优化是根据业务场景,以成本为代价进行优化的,绝对不是孤立的一个层面的优化。

    近期热文:

    个人新书 《MySQL DBA工作笔记》

    个人公众号:jianrong-notes

    QQ群号:763628645

    QQ群二维码如下,个人微信号:jeanron100, 添加请注明:姓名+地区+职位,否则不予通过

    640?wx_fmt=png640?wx_fmt=png

    在看,让更多人看到

    展开全文
  • 作者 | 贾凯强出品 |AI科技大本营(ID:rgznai100)捺,抹,笔走龙蛇,可见真意。笔者小时候字迹潦草,便总是抱怨为什么一定要写字好看?而如今计算机统治了世界,键盘...

    dc2a5604612b31d4848dbc5e90d265e9.gif

    作者 | 贾凯强

    出品 | AI科技大本营(ID:rgznai100)

    一撇一捺,一勾一抹,笔走龙蛇,可见真意。

    笔者小时候字迹潦草,便总是抱怨为什么一定要写字好看?而如今计算机统治了世界,键盘和鼠标早已替代了笔墨纸砚,可这时却才能发现藏在纸笔之间的神韵。事实上,那可不止是神韵的问题,自己用纸笔书写过的内容总会记忆的格外清晰;藏在一停一顿之间,也会有着属于个人的习惯与痕迹;如果你仔细分析,还能在纸笔中看到大量你所不曾关注过的秘密。

    人力有时尽,可机器学习却能够解决这些问题。

    11月16日及17日,Wacom召开CONNECTED INK 2021,“线上+线下”互动,27小时不间断直播,为全球各地的用户带来前沿技术知识,并分享了其最新的技术经验。在11月17日,Wacom同步召开中国峰会,CSDN应邀参与峰会,并针对时下前沿焦点话题进行了深入探讨。

    145b14f083115aad686cd8346d8df195.png

    面向未来,推进创意落地

    “未来有三个市场是Wacom的重点输出领域,第一便是创意市场,这是专业用户的领域,Wacom可以通过优化笔迹、硬件等帮助他们提升体验;第二便是新开拓的教育市场,其与专业用户不同,内容生产者会更加注重手写体验。这一方面,数字墨水自然会更加重要,Wacom会更加侧重于优化工作流程,提升教育产业用户手写体验;第三个是超越创意的领域,即建筑工程、远程协助等场景之中,精细化操作将会成为刚需。尤其是在如今,大量的远程办公需求,使得数位板或者数位屏可以替代鼠标或第二显示器,从而使得交流能够更加全面和立体。”

    ---- Wacom 品牌业务集团执行副总裁Faik Karaolgu

    时代如洪流般奔涌,单纯的依赖于硬件已经无法满足用户的需求。因此,Wacom品牌业务集团执行副总裁Faik Karaoglu希望Wacom不仅仅提供硬件产品,而是将硬件、软件、服务作为一个统一的解决方案提供给用户。

    e1918d43e7e5afc95a314a8e3e9319d5.png

    当关注的市场领域聚焦后,产品就可以针对性的进行创新,规划新的产品形态。Wacom数字墨水部高级副总裁Heidi Wang表示未来其产品会更加着重于产品的自然使用,现有的WILL技术将会扮演更加重要的角色。此外,AI、区块链等技术也会有更多的作用。

    d5a524b1fb422eb3bb1135e61b1e3ec4.png

    AI技术是实现自然体验的新技术。当前, Wacom的WILL技术已经可以实现实时数据捕捉,通过不同的工具实时捕捉不同传感器的数据,包括笔的倾斜角度、加速度等。这些数据都可以用以反哺AI技术,同时Ink记录的数据采用了UIM的格式记录,其在认知领域已然是标准技术,在此基础上探索AI技术,可以对绘画、手写笔迹提供新的灵感。Wacom通过实时捕获的数据,能够适用于自适应学习,甚至通过AI技术来帮助学习、画画等应用。

    在安全性方面,区块链技术就成为了不得不提的话题。由于数据本身是活性数据,其不仅是明面上的东西,其中还包括了数据内容。通过将区块链及其它相应技术应用在安全领域,帮助消费者实现基于区块链的版权保护。同时,通过记录绘画的过程和运笔方式,还能获取用户真实的绘画过程和笔迹,让整个流程得到准确还原。Wacom将加密、加链的技术放在艺术品本身,用户可以传递出去,在保护作品的同时,依然可以分享。

    当然,其中必然会涉及隐私问题。Wacom始终把隐私和数据安全作为优先考虑事项去思考整体产品或战略。Wacom在不同市场会满足不同市场的隐私要求,跟本地合作伙伴共同开发出不同的解决方案或软件平台,针对当地隐私条例进行优化,满足合规要求。

    fd087df46094d53b62e4df085e639844.png

    技术源于需求,终将回馈用户

    “所有的技术都来源于需求,需求最终必将回馈到用户中去。在中国市场十几年来,我认为我们最成功的或者我们一直在坚持的策略就是,所有的工作都能够和用户在一起,以他们的需求为中心,以他们的感受为中心,倾听他们的声音。”在CONNECTED INK 2021中国区活动的开场,Wacom中国区副总裁刘俊麟便阐述了他们的成功秘诀。

    ac2725883794a66f814cc840e1539ada.png

    刘俊麟还表示,目前Wacom产品和服务已经涵盖了科学、技术、教育、艺术、数学等很多行业和领域,他们也希望在这些领域能够健康茁壮成长,带来更多的服务和很好的价值给我们的用户。而接下来,Wacom将会主要在XR、AI和安全三个方向发力,依托于新技术创造新的业务模式,其能够使产品、技术和服务更加容易触达用户,提供更好的体验。

    d9176276842fa2b54c995f9176fc1a61.png

    数字墨水便是Wacom的软件创新排头兵。Wacom数字墨水部高级产品经理张春兰介绍称,数字墨水要高于传统的数字概念,其能够将二维的书写升级为三维。结合AR、VR技术并进行渲染后即可呈现丰富的空间概念,结合其他主流技术也能有更加丰富的应用场景,尤其是与AI结合后,机器能够利用语义识别读懂其中内容信息,从而获得更加广阔的创新和应用空间。

    教育行业无疑是其中之一,通过数字墨水的AI语义分析,能够了解学生们完成作业的情况,其作答顺序,作答时长,甚至能从其中看出来哪些是作弊所得。数字墨水在数字签名上也有很多应用,看似一样的签名,但是后台数据可以揭示出不同的转角或者压感,从而鉴别签名的真假。Wacom在硬件之外,获得数字墨水软件支持,可以通过软硬结合把最好的体验带给用户。

    3d73fa43b716658e6cb4a9aeac8a310c.png

    数字版权的保护一直以来是行业的痛点问题之一。Wacom中国区产品市场经理谢鑫表示,传统的数字版权保护管理系统存在一些缺陷,保护系统用了新的格式,其无法在电脑中打开。这样无疑会影响传播率,同时也完全丧失了以开放的格式去广泛分享的好处。Wacom要做的就是给每一张照片自己的身份证,构建一个生态系统,让身份证的发放方能互相构建,利益共同者能够追溯到每一张相片、每一张作品的来源。

    区块链是其中的关键技术,Wacom在后台打造了数字水印服务,在特定网络里面互相做识别,用生物识别信息做识别关联。而区块链系统则负责定义每幅作品后台的关系以及上下游的关系,作品在授权后使用之时,每一个信息都能够在区块链里面记录;Wacom的加水印系统,能够保障稳健性的同时而不影响传播;同时,Wacom生物识别签名涵盖了加速度、笔的倾斜等活性数据,以软硬件的保障实现闭环服务。

    a2182873680a67557b63cbebb4e96db8.png

    在今年,致力于在新的工作方式和未来教育等领域创造附加价值的非营利组织DSC,成立了中国分部。据Wacom中国区创意产品事业部商务拓展总监、DSC数字文具联盟中国区主席程诚介绍,该组织由共同的兴趣、行业观点和需求将行业先驱者、企业家和学术权威联合组成。中国分部成立以后,其在中国第八十届教育装备展上展出了各类教育领域的应用方案;组织同时还举办了INKATHON中国区开发者大赛,为行业注入了新动力。

    在5G的浪潮席卷全球后,Wacom的产品也会随之而变。虚拟化就是其中的一种方向,Wacom所有的硬件设备,都在向虚拟化兼容方面着力,其中不乏通过软件等层面实现的内容。虚拟化不是指硬件产品在不连电脑的情况下直接使用,而是指在虚拟化环境中识别出硬件产品,其也能像在非虚拟化情况下自然使用并保持流畅度,这便是5G网络所带来的技术优势。在驱动层面和兼容性层面来讲,未来的创作不会局限于本地客户端,而是通过云端或虚拟化的方式进行创作。Wacom要确保这样的驱动能在虚拟环境当中运作,并提升创作体验。

    数字化的浪潮会席卷全球,从楼宇到学堂,从街头巷尾到实验室设计院,数字化的发展不仅仅会带来工作效率的提升,还意味着技术创新契机的接踵而至。在这样的浪潮中,Wacom作为老牌数位板系统、笔感应式数位屏系统和数字界面解决方案制造商,依然矢志创新,拥抱前沿技术,其未来之路将会比过往更加值得期待。

    638b028f11a3a48d16a9b31df9fce808.gif

    5b131ca0a20d41cb2b670c8ad49b4ed1.png

    分享

    1b0f2ac7ba605e458f9d1904c17728fc.png

    点收藏

    64fa4f615146f08c4b21125877c97feb.png

    点点赞

    086b20586099ae572ae6271104dc4ded.png

    点在看

    展开全文
  • 深度学习识别手写数字原理

    千次阅读 2020-09-11 17:38:04
    如何识别像素28 * 28手写数字3 如果分成28 * 28 的网格具体如下: 28 * 28 = 784, 可以由784个像素点代表3.大脑识别不用考虑这些像素点...通过编写程序, 机器学习都无法解决这问题, 这就需要提到神经网络, 根.
  • 文字识别()--传统方案综述

    万次阅读 多人点赞 2019-02-17 12:48:15
    文字识别是计算机视觉研究领域的分支之,归属于...计算机文字识别,俗称光学字符识别,英文全称是Optical Character Recognition(简称OCR),它是利用光学技术和计算机技术把印在或在纸上的文字读取出来,并转...
  • 章: 利用神经网络识别手写数字

    万次阅读 2017-03-28 11:35:51
    人类视觉系统是大自然的大奇迹。 考虑下面的手写数字序列: 大部分人能够毫不费力的识别出这些数字是 504192。这种简单性只是个幻觉。在我们大脑各半球,有个主要的视觉皮层,即V1,它包含1.4...
  • 容易写错的笔顺

    万次阅读 2018-05-14 20:06:23
    个笔画笔顺特别容易写错的汉字听王美金老师上《可爱的草塘》(人教社五年级上册),示范书写“舀”时,特别强调“舀”下面的“臼”的笔画笔顺,第一笔是短撇,第二笔是竖,第三笔是短横,第四笔是横折,第五笔是...
  • 还有很是其他原因而想要得到这个字体的等。但是他们都有个共同的难题,就是不知道是什么字体而无从查找。首先如果说仅仅只是单凭的形状外表而能完全的的说出所有的字体是什么字体,那么在短时间内...
  • 如何测试支圆珠

    千次阅读 2020-03-26 23:01:22
    性能测试 1、能否正常书写 是否有油泄露 ...油是否含有有害物质 笔尖是否容易伤到人 油或者墨水保质期长 过期是否产生有害物质、 兼容性测试 在不同的温度、气压、和重力下能否正常使用 在不同的纸质和力...
  • 用哪种字体博客比较好尼?

    千次阅读 2015-02-24 14:10:05
    用哪种字体博客比较好尼?
  • 第九篇:忘了件重要的事情 上次给你讲了个观点,你要学会用阴阳五行的思维去看待市场。这不是玄学,没有过中医经历的人是很难认同这个观点的。但是在讲行情之前我应该给你讲个更重的东西。那就是止损 有人把...
  • 还有很是其他原因而想要得到这个字体的等。但是他们都有个共同的难题,就是不知道是什么字体而无从查找。首先如果说仅仅只是单凭的形状外表而能完全的的说出所有的字体是什么字体,那么在短时间内...
  • 作为个在互联网公司面次拿次offer的面霸(请允许我使用一下夸张的修辞手法),打败了无数竞争对手,每次都只能看到无数落寞的身影失望的离开,略感愧疚,在个寂寞难耐的夜晚,我痛定思痛,决定开始《吊...
  • 4.1 不可能言论 impossible result :4.2 比特币中的共识协议4.3 冲突区块4.4 出块奖励在最后 如何设计个数字货币? 《区块链技术与应用》Lesson4 注:本文为北京大学肖臻老师《区块链技术与应用》公开课学习...
  • ps数字(ps改数字详细步骤)

    千次阅读 2021-07-28 00:57:15
    我先把抹掉,然后用文字工具,但是字体不对呀。还有,是。这个容易。情况、这个数字是图片上有的,比如说2010年,我想要改成2011年,那个”1“是图片上有的。那直接导图进PS,然后按一下M 把”1“框起来,然后按...
  • (1)先搞清楚我们的对象!才能针对性的测试客户最在意的地方,设置测试的优先级。 (2)按测试类型逐一测试。测试主要就分为界面测试、功能测试、性能测试(压力)、安全测试、兼容...23333倒着、墙上)  
  • 程序员书到底赚钱吗

    千次阅读 2020-03-24 09:22:37
    时隔半年,昨天又收到了出版社一笔稿费,时间很突然,金额也很突然。 年前的时候松哥发了一篇文章,说新书交稿后入手了一台 MacBook Pro(MacBook Pro 入手一年了,到底香不香?),于是有小伙伴问松哥,出书是不是...
  • 诗词竖着的格式(例: 题临安邸 )

    万次阅读 2021-06-18 11:01:46
    2、内容完后诗名、作者、落款(用较小的), 后面空 格,然后盖章 ,注意图章不要太大 ,章的大小和落款的差不多。竖幅书法的构图是,将宣纸折叠留一些上下(天地)左右(四邻)空白边,顶格开始,落款时上...
  • 手写汉字识别的发展综述

    万次阅读 多人点赞 2019-03-19 20:29:19
    、手写汉字识别的研究背景与现状 在上个世纪60年代,美国IBM公司开始进行了...因为汉字在日语中占有一定的地位,手写体汉字识别(HCCR)在开始是由日本率先尝试研究的,在80年代,国内开始了对手汉字的研究,...
  • 容易进的大厂工作,百度经典百题

    千次阅读 多人点赞 2021-05-24 23:27:44
    容易进大厂的机会就是百度的测试,不服来辩。
  • 【计算机图形学】一笔绘制金刚石图案

    千次阅读 多人点赞 2020-03-04 02:00:04
    篇自己的CSDN博客!!! 在CSDN上抄了一年作业, 终于要自己发博客啦233333,但是并没有什么含金量的其实嘤嘤嘤QAQ 想码一些作业当时做完有点成就感的作业吧,毕竟以我个人的水平和热爱学习的程度可能上学期间...
  • OCR 文字特征提取

    千次阅读 2017-03-08 17:58:55
    作为OCR系统的第步,特征提取是希望找出图像中候选的文字区域特征,以便我们在第二步进行文字定位和第三步进行识别. 在这部分内容中,我们集中精力模仿肉眼对图像与汉字的处理过程,在图像的处理和汉字的定位方面...
  • 当我下这几个的时候,心里还沉甸甸的。曾经的我总以为,博士毕业继续回到贵州教书,陪伴家人,仍是少年,真的如此吗?或许现实将更加残忍,岁月将不饶人,这荆棘一年让我意识到,我已为人父,不再少年。
  • 计算机、程序员其实是一门“科学”工作,它不只是增删改查,它涉及到很点。只有“想清了才能少返工”,因此本人以最常碰到以及最实用、马上拿来可以用为出发点讲透篇通用设计文档需要怎么
  • 【转】数字货币钱包:生态及技术

    千次阅读 2019-05-13 18:31:09
    章 钱包概述及其生态介绍 1.1 数字货币钱包生态结构 钱包作为数字货币行业的基础设施,在数字货币行业中具有资产管理,巩固用户群体流量及导流的相关作用,下面的一张图中大致介绍了数字货币钱包的生态结构。 ...
  • 文字识别(三)--文字定位与切割

    千次阅读 2019-02-18 11:10:30
    要做文字识别,第步要考虑的就是怎么将每个字符从图片中切割下来,然后才可以送入我们设计好的模型进行字符识别。现在就以下面这张图片为例,说说最一般的字符切割的步骤是哪些。 当然,我们实际上要识别的...
  • 分享3:hanzi-writer(演示汉字笔画顺序的 JS 库)

    千次阅读 热门讨论 2019-10-12 09:09:50
    我很容易就想到小学的汉字书写了,说句实话,自从毕业后基本上就很少写字,而且经常提笔忘(深深的自责中…),通过这个可以加强汉字的笔画练习,而且后期可以扩展为带拼音和读音的方便我们学习,以及指导自家小孩...
  • 77款免费可商用字体!!!

    千次阅读 2021-08-25 00:25:29
    想用心仪的字体还怕侵权?所有今天我们就为大家整理了包括黑体、宋体、圆体、楷体、创意字体、书法字体、手写字体、卡通字体、字体合集在内的九种分类共77款字体,次下载任你挑选!喜欢记得收藏以备...
  • Python画笔的属性及用法详解

    千次阅读 2021-04-27 06:35:00
    画笔有颜色、画线的宽度等属性。... 到此这篇关于Python画笔的属性及用法详解的文章就介绍到这了,更相关Python画笔的属性有哪些内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 49,623
精华内容 19,849
热门标签
关键字:

容易多写一笔的字