码迷,mamicode.com
首页 > 2020年11月10日 > 全部分享
频繁插入(insert)的业务,用什么存储引擎更合适? | 数据库系列
继续回答星球水友提问:沈老师,MyISAM只支持表锁,但网上文章却说,在并发插入量比较大的时候,比较适合使用MyISAM,这矛盾吗?这个问题,涉及MySQL表锁的一些细节,借着这个问题,系统性说下表锁的“所以然”。画外音:网上不少文章只说结论,不说为什么,容易让人蒙圈。MySQL表锁知识系统性梳理。哪些存储引擎使用表锁?MySQL,除InnoDB支持行锁外,MySQL的其他存储引擎均只使用表锁,例
分类:数据库   时间:2020-11-10 11:33:20    阅读次数:13
数据库,主键为何不宜太长长长长长长长长?
继续回答星球水友提问:沈老师,我听网上说,MySQL数据表,在数据量比较大的情况下,主键不宜过长,是不是这样呢?这又是为什么呢?这个问题嘛,不能一概而论:(1)如果是InnoDB存储引擎,主键不宜过长;(2)如果是MyISAM存储引擎,影响不大;先举个简单的栗子说明一下前序知识。假设有数据表:t(idPK,nameKEY,sex,flag);其中:(1)id是主键;(2)name建了普通索引;假设
分类:数据库   时间:2020-11-10 11:33:03    阅读次数:12
Java研发面经分享第一波: 滴滴 & 美团
滴滴面试安排比较混乱,如果你通过了一面,那么就优先安排后面的面试,所以导致还没一面的人就得一直苦等。那会儿我是下午一点去的,大概到了快4点才进行一面,后面就嗖嗖嗖地过关斩将到了hr面,也算是运气不错吧。
分类:编程语言   时间:2020-11-10 11:32:44    阅读次数:11
小朋友哭着要买,到底该怎么办? | 亲身经验分享
有水友在评论里留言,说女朋友基本上是讲道理的,通过《高情商的男生,是怎么陪女朋友逛街的?》里的方法,基本能搞定“买买买”。但有一个场景:逛商场小朋友突然看到一个东西,就是哭着要买,怎么办?每当遇到这种场景,可能有这样一些解决方案。方案一,转移注意力:乖儿子,你看那边还有更好玩的。方案二,善意欺骗:乖女儿,爸妈身上没带钱。画外音:基本上,还是继续哭。方案三,讲道理:怀女儿,家里已经有同类玩具了。画外
分类:其他好文   时间:2020-11-10 11:32:27    阅读次数:9
几千万记录,数据库表结构如何平滑变更? | 答水友问
继续回答知识星球水友提问。问题域:数据量大、并发量高场景,如何在流量低峰期,平滑实施表结构变更?画外音,一般来说,是指增加表的属性,因为:(1)如果是减column,升级程序不使用即可;(2)如果是修改column,程序兼容性容易出问题;首先,一起看下有哪些常见方案。方案一:在线修改表结构。画外音:altertableaddcolumn数据量大的情况下,锁表时间会较长,造成拒绝服务,一般不可行。方
分类:数据库   时间:2020-11-10 11:32:08    阅读次数:12
高情商的男生,是怎么陪女朋友逛街的? | 亲身经验分享
最近两次陪老婆逛街,都非常懊恼,老婆的问题不管怎么回答,她都不满意,实在不知道怎么应对。情况大概是这样的。情景一:“你觉得这条仔裤怎么样?”“不好看”画外音:我本来想回答“你腿这么粗,能穿么”,后来想想还是算了,还是说裤子不好看吧。“你就是舍不得买”“...”情景二:“你觉得这个包包怎么样?”“好看”“就知道敷衍我”“...”情景三:“你觉得这个面霜怎么样?”“...”画外音:一来确实不懂啥粉,霜
分类:其他好文   时间:2020-11-10 11:31:49    阅读次数:7
余额并发扣减一致性,能否使用redis事务?
《并发扣款,如何保证数据的一致性?》一文的核心观点是:使用CAS乐观锁,在写回余额时加上旧余额的比对,可以在不影响吞吐量的前提下,保证余额的一致性。文章非常多朋友留言问,能不能把余额放到reids里,利用redis的事务性来扣减余额。今天,就这个问题简单的说一下。redis如何实现事务性?本质也是乐观锁。在redis客户端执行:$money=GETkey$money=$money-$diffSET
分类:其他好文   时间:2020-11-10 11:31:32    阅读次数:8
每秒20W次并发分词检索,架构如何设计?
继续回答星球水友提问。沈哥,我们有个业务,类似于“标题分词检索”,并发量非常大,大概20W次每秒,数据量不是很大,大概500W级别,而且数据不会频繁更新,平均每天更新一次,请问有什么好的方案么?这是一个典型的,短文本分词搜索的问题,简单聊聊自己的经验。常见的文本检索方案有哪些?(1)数据库LIKE法将标题数据存放在数据库中,使用like来查询,方案非常简单,能支持简单的模糊搜索,但不支持分词。画外
分类:其他好文   时间:2020-11-10 11:31:19    阅读次数:7
并发扣款,如何保证数据的一致性?
继续解答星球水友提问。===沈老师,我们有个业务,同一个用户在并发“查询,逻辑计算,扣款”的情况下,余额可能出现不一致,请问有什么优化方法么?===扣款的业务场景是怎样的?用户购买商品的过程中,要对余额进行查询与修改,大致的业务流程如下:第一步,从数据库查询用户现有余额:SELECTmoneyFROMt_yueWHEREuid=$uid;不妨设查询出来的$old_money=100元。第二步,业务
分类:其他好文   时间:2020-11-10 11:30:56    阅读次数:8
每秒30W次的点赞业务,怎么优化?
继续答星球水友提问,30WQPS的点赞计数业务,如何设计?可以看到,这个业务的特点是:(1)吞吐量超高;(2)能够接受一定数据不一致;画外音:计数有微小不准确,不是大问题。先用最朴素的思想,只考虑点赞计数,可以怎么做?有几点是最容易想到的:(1)肯定不能用数据库抗实时读写流量;(2)redis天然支持固化,可以用高可用redis集群来做固化存储;(3)也可以用MySQL来做固化存储,redis做缓
分类:其他好文   时间:2020-11-10 11:30:42    阅读次数:6
1000亿文本信息,高并发MD5查询,这么大数据量的业务怎么弄?
==星球水友提问==沈老师,你好,想请教一个身份证信息检索的问题。公司有一个每秒5万并发查询的业务,(假设)根据身份证MD5查询身份证信息,目前有1000亿条数据,纯文本存储,前几天看你写LevelDB,请问这个业务能利用LevelDB内存数据库进行存储么?有没有其他优化方案?画外音:LevelDB《内存KV缓存/数据库》。==问题描述完==上一位星球水友问的是36亿日志后台分页查询,紧接着又来了
分类:其他好文   时间:2020-11-10 11:30:25    阅读次数:10
30亿日志,检索+分页+后台展示,你是否遇到过更奇葩的需求?
沈老师,你好,想请教一个数据库查询日志,前台页面显示的问题。需求:(1)按照某些特定检索条件查询日志;(2)通过前台Web页面查询并显示相关日志信息;(3)检索需求包含用户,时间段区间,类型等特定字段;希望做到:(1)查询速度尽可能快;(2)支持分页查询;目前方案:日志信息存储在Oracle中,根据日期对Oracle做了分区处理,每天生成一个分区表,每个分区表中的数据总量大概在1000W左右。在相
分类:其他好文   时间:2020-11-10 11:30:08    阅读次数:11
高速飞机上换引擎,MQ如何实现平滑迁移?
前几天,杨紫琼同学在知识星球提问,说公司要切换MQ,从一个旧的服务商升级为新的服务商,问有没有什么好方案。这个需求估计还挺普遍的,这里分享一些经验。一、MQ架构简述如上图,使用MQ异步通信,一般分为三层:消息发送方:使用MQ客户端生成消息。MQ-client::SendMsg(topic,msg);MQ服务:中转消息。消息接收方:使用MQ客户端消费消息。MQ-client::RecvMsg(top
分类:其他好文   时间:2020-11-10 11:29:49    阅读次数:8
内存KV缓存/数据库,可以选择它? | 1分钟系列
互联网业务,绝大部分场景,会使用缓存服务。《选redis还是memcache,源码怎么说?》《选redis还是mc,面试官究竟想考察啥?》《memcache内核的知识点,值得收藏》但有时候,确实会使用到进程内存缓存/数据库,这个时候,LevelDB就能派上用场了。啥是LevelDB?LevelDB是Google开发的,一个速度非常块的KV存储库(storagelibrary),它支持字符串的key
分类:数据库   时间:2020-11-10 11:29:35    阅读次数:12
别人不写设计文档,我写了,所以我吃亏了?
《如何写技术文档?》的评论让人感到意外,一篇关于“如何写好设计文档”的文章,评论里充斥着各种戾气。不确定自己的理念,在互联网新时代,是否已经过时,似乎写文档成了少数派。无论如何,旗帜鲜明的表达一下自己的看法。本文所有观点均为个人观点,不存在任何“评判”,分享自己认为正确的观点。画外音:后文中的素材,截图自《如何写技术文档?》的评论,隐去了头像和名称。一、《如何写技术文档?》评论里,点赞最多的观点是
分类:其他好文   时间:2020-11-10 11:29:18    阅读次数:10
互联网公司的技术人,为什么不写文档?
互联网公司,技术侧,写文档有没有必要?有必要。要写什么文档?至少要写总体设计文档,详细设计文档。为什么不写?可能是没时间,可能是不会写,可能是不愿意写。本文试图分享一些经验,解决“不会写”的问题。总体设计文档,详细设计文档,应该包含什么内容?总设和详设都应该包含的部分:(1)需求:一般以产品的语言描述,这一块可以拷贝产品需求文档中的storylist部分;(2)名词解释(可选):非相关领域内的同学
分类:其他好文   时间:2020-11-10 11:29:02    阅读次数:8
数据库软件架构,到底要设计些什么?
一、基本概念概念一:单库概念二:分片分片解决“数据量太大”这一问题,也就是通常说的“水平切分”。一旦引入分片,势必面临“数据路由”的新问题,数据到底要访问哪个库。路由规则通常有3种方法:(1)范围:range优点:简单,容易扩展。缺点:各库压力不均(新号段更活跃)。(2)哈希:hash优点:简单,数据均衡,负载均匀。缺点:迁移麻烦(2库扩3库数据要迁移)。(3)统一路由服务:router-conf
分类:数据库   时间:2020-11-10 11:28:38    阅读次数:11
227条   上一页 1 2 3 4 5 6 ... 14 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!