![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
database
文章平均质量分 86
丧心病狂の程序员
不可回收的程序员
展开
-
[Etcd]分布式系统中如何使用乐观锁保证Mysql和Etcd数据最终一致性
在写业务代码时,很多时候需要保证数据存储在不同中间件中的一致性。以笔者为例,就遇到了需要将mysql中已存储的数据转存到etcd中,同时还要考虑到并发场景下如何保证数据最终一致性的问题。从中我们可以分析出,产生这个问题的本质原因是因为服务A1、A2、B1和B2没有共用一块物理内存,这也是微服务拆分的必然结果。原创 2023-03-04 20:22:51 · 1715 阅读 · 1 评论 -
[Redis] Redis集群基础知识总结
1. Redis集群三种模式1.1. 主从同步/复制为了避免单点故障,通常的做法是将数据库复制多个副本以部署在不同的服务器上,这样即使有一台服务器出现故障,其他服务器依然可以继续提供服务。为此, Redis 提供了复制(replication)功能,可以实现当一台数据库中的数据更新后,自动将更新的数据同步到其他数据库上。在复制的概念中,数据库分为两类,一类是主数据库(master),另一类是从数据库(slave)。主数据库可以进行读写操作,当写操作导致数据变化时会自动将数据同步给从数据库。而从数据库一原创 2021-06-21 22:31:23 · 192 阅读 · 0 评论 -
各大常见应用场景中Redis的使用方法
最受欢迎的文章统计例如博客网站需要对文章的点赞数进行排名,从而找出网站中今天最有趣的50篇文章放入首页。我们的程序就需要对每篇文章产生一个能够根据时间流逝而不断减少的评分,程序需要根据文章的发布时间和当前时间来计算文章评分,具体的计算方法为:将文章的点赞数G * 常量E + 文章发布时间T得到的就是文章的评分。我们使用发布文章时Unix 时间的秒数作为文章发布时间T,选取的常量E为432(这一常量是通过假定热门文章一天的点赞数为200得到的,即一天的秒数86400/200),这样就得到一个可以根据时间和原创 2021-05-13 17:13:27 · 429 阅读 · 0 评论 -
[面面面]搞定计算机面试常见知识点——数据库篇
之前的一篇总结已经写到了十万字,阅读起来太不方便了,所以按照类别拆分成多个短篇分享给大家。文章目录3. 数据库3.1. 必备技能 寿司SQL3.1.1. 超过5名学生的课3.1.2. 查询出各科成绩最高分的同学3.2. SQL3.2.1. Left Join 和 Right Join3.3. SQL优化3.4. SQL执行过程3.5. 死锁及优化3.5.1. 同时Update3.5.2. 先查询在插入3.6. ACID3.7. 数据库事务、隔离级别、Innodb和Myisam的区别3.7.1. 脏读、幻读原创 2021-03-05 13:45:24 · 231 阅读 · 0 评论 -
一种重置mysql5.7版本root密码的方法——通过修改配置文件跳过密码检查
一不小心忘记了mysql的密码,通过以下步骤对root密码进行重置:修改配置文件vi /etc/my.conf在[mysqld]中添加如下配置行,以跳过权限检查skip-grant-tables然后重启mysql服务service mysqld restart无密码登录接下来通过mysql客户端登录就无须输入密码了mysql -u root -p设置密码在MySQL Shell 中输入命令修改root密码update mysql.user set authentic原创 2020-06-07 12:11:24 · 547 阅读 · 0 评论 -
计算机网络——p2p
三代P2P网络之间的定义和差异是什么? 三代有各自特点和应用环境Napster和Gnutella的原理*掌握Chord协议 要会算 查找、join伪代码理解Kademlia的原理,例如Kademlia协议是如何找到资源的 核心数据结构K桶掌握Bitcoin原理(论文)以及区块链概念。为什么挖矿,如果有51%的算力怎么进行攻击,把图画出来 建议看论文1. P2P系统既是客户端con...原创 2020-01-02 16:16:54 · 4957 阅读 · 0 评论 -
现代数据库及大数据管理—常见问题与技术归纳
2. 多结构化数据存储与组织方法2.1. memcachedmemcached是一个高性能的分布式内存对象缓存系统,用于动态web应用以减轻数据库负载。2.1.1. 掌握:数据分布式策略Memcached的服务端并没有“分布式”功能,仅包括内存存储功...原创 2019-11-20 19:06:41 · 1276 阅读 · 1 评论 -
现代数据库及大数据管理—必备知识点总结
1. 现代数据管理概述1.1. 现代数据管理的特征数据的组织: 结构化、半结构化、非结构化内容及其处理:文本、图像、音频、视频存取:海量使用:基于语义运行环境及其管理:面向网络1.2. 数据管理新技术VS数据库数据形式:新技术:多结构、多模态、多种内容数据库:结构化为主、擅长处理文本 数字 日期等程序可直接识别和运算的符号数据查询需求:新技术:文字匹配、基于语义、相似性匹...原创 2019-11-14 21:47:06 · 756 阅读 · 0 评论 -
HBase中修改存储版本数及版本号查询
Hbase中通过row和columns确定的为一个存贮单元称为cell,每个 cell都保存着同一份数据的多个版本。在默认的情况下,HBase会存储三个版本的历史数据。但是在实际应用中,出于性能或业务需要,我们可能只有一个或其他数量的版本需要存储。那么如何修改这一默认配置呢?建表时配置如果你还没有建表,那你可以在建表时指定VERSIONS来设定版本号,就是存储几个版本的数据。create '...原创 2019-09-12 16:04:59 · 8740 阅读 · 0 评论 -
Hbase Shell 常用命令
之前整理过的一份Hbase Shell 常用的几条指令,具体已经记不清了,现将其分享如下。1). create 命令创建一个具有两个列族“grad”和“course”的表“scores”。其中表名、行和列都要用单引号括起来,并以逗号隔开。hbase(main):012:0> create 'scores', 'name', 'grad', 'course'2). list 命令...原创 2019-09-12 15:53:00 · 657 阅读 · 0 评论 -
boltdb数据库db.Opne()代码流程分析
1. boltdb数据库db.Opne()代码流程分析根据bolt db 的官方文档,我们可以看到初始化数据库只需要一行代码。The top-level object in Bolt is a DB. It is represented as a single file on your disk and represents a consistent snapshot of your dat...原创 2019-07-26 21:08:40 · 478 阅读 · 0 评论 -
boltdb数据库Update代码流程分析
2. bolt数据库Update代码流程分析在bolt的官方文档中,关于创建一个读写事务的描述如下:Read-write transactionsTo start a read-write transaction, you can use the DB.Update() function:err := db.Update(func(tx *bolt.Tx) error { ... re...原创 2019-07-26 21:07:42 · 432 阅读 · 0 评论 -
通过 spark sql 支持 elasticsearch 的多表(两表或以上) sql 关联查询
很多时候我们还不得不面临一些对elasticsearch中的多个索引的关联sql查询需求,这时候就只能使用spark-sql来实现。原创 2019-07-13 21:39:00 · 2789 阅读 · 0 评论