摘要:1 使用or可能会使索引失效,从而全表扫描。解决方案:union all或 union 当偏移量最大的时候,查询效率就会越低。解决方案:/方案一 :返回上次查询的最大记录(偏移量)select id,name from employee where id>10000 limit 10.//方案二:o
阅读全文
摘要:https://blog.csdn.net/ThinkWon/article/details/104778621 数据库基础知识 1. 为什么要使用数据库 数据保存在内存 优点:存取速度快缺点:数据不能永久保存 数据保存在文件 优点:数据永久保存缺点:1)速度比内存操作慢,频繁的IO操作。2)查询数
阅读全文
摘要:1.LIMIT 语句分页查询是最常用的场景之一,但也通常也是最容易出问题的地方。比如对于下面简单的语句,一般 DBA 想到的办法是在 type, name, create_time 字段上加组合索引。这样条件排序都能有效的利用到索引,性能迅速提升。好吧,可能90%以上的 DBA 解决该问题就到此为止
阅读全文
摘要:1 全局命令:exist del dbsize expire ttl type persist scan遍历所有key:keys scan,生成环境不建议使用key scan的缺点:遍历过程中新增的键可能遍历不到,也可能遍历出重复的键,需要开发时程自己处理 通过migrate实现在两个redis实例
阅读全文
摘要:web和db放在不同的服务器一主多从,读写分离一主一从,一从又有多从,读写分离分库分表(如:按业务分库,按字段取值范围分表/取模分表) SQL优化1 分批处理int pageNo = 1;int PAGE_SIZE = 100;while(true) { List<Integer> batchIdL
阅读全文
摘要:缓存穿透:【缓存和数据库中都没有这个数】 缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且处于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。在流量大时,可能DB就挂掉了,要是有人利用不存在的key频繁攻击我们
阅读全文
摘要:SQL:sum里加条件SELECT SUM( CASE WHEN "V7010" BETWEEN 0 AND 0.1 THEN 1 ELSE 0 END) FROM "CNYB"."WEA_DAY_CHECK" where "DATE">'12' AND "CODE"='7001' 技巧1 比较运算
阅读全文
摘要:1、Hive和HBase的区别 1)hive是sql语言,通过数据库的方式来操作hdfs文件系统,为了简化编程,底层计算方式为mapreduce。 2)hive是面向行存储的数据库。 3)Hive本身不存储和计算数据,它完全依赖于HDFS和MapReduce,Hive中的表纯逻辑。 4)HBase为
阅读全文
摘要:参考:https://mp.weixin.qq.com/s/yxS4tpX_6fz9LBsh0UoHpw 索引包含一个表中列的值,并且这些值存储在一个数据结构中Cardinality 索引基数:索引列的唯一值的个数,如果是复合索引就是唯一组合的个数 UNIQUE唯一索引 该索引其含义是被标定义唯一索
阅读全文
摘要:参考:https://www.cnblogs.com/DeepInThought/p/10720132.html Redis不保证原子性:Redis中,单条命令是原子性执行的,但事务不保证原子性,且没有回滚。事务中任意命令执行失败,其余的命令仍会被执行 Redis事务相关命令: watch key1
阅读全文
摘要:Redis 的通讯协议是文本协议,文本协议确实是会浪费流量,不过它的优点在于直观,非常的简单,解析性能极其的好,我们不需要一个特殊的 Redis 客户端仅靠 Telnet 或者是文本流就可以跟 Redis 进行通讯 Redis 因为处理逻辑在前而记录操作日志在后,也是导致 Redis 无法进行回滚的
阅读全文
摘要:psycopg2 安装 进行 "增"、"删"、"改"的时候,一定要使用try…except…语句,因为万一没插入成功,其余代码都无法执行。当语句执行不成功,我们就db.rollback()回滚到操作之前的状态;当语句执行成功,我们就db.commit()提交事务
阅读全文
摘要:重启Redis服务器:sudo /etc/init.d/redis-server restart 配置文件:/etc/redis/redis.conf 打印出所有[与pattern相匹配的]活跃频道:PUBSUB CHANNELS [pattern] 活跃频道指的是那些至少有一个订阅者的频道订阅频道
阅读全文
摘要:https://segmentfault.com/a/1190000016898228?utm_source=coffeephp.com 方法一: redis_helper.py: 封装发布订阅方法 redis_pub.py: 发布者 redis_sub.py: 订阅者 方法二: redis_hel
阅读全文
摘要:参考资料:https://blog.csdn.net/iloveyin/article/details/7105181 丰富的数据结构使得redis的设计非常的有趣。不像关系型数据库那样,DEV和DBA需要深度沟通,review每行sql语句,也不像memcached那样,不需要DBA的参与。red
阅读全文
摘要:防止链接超时:conn = redis.Redis(host=self.settings['REDIS_HOST'], port=self.settings['REDIS_PORT'], health_check_interval=30) 下载地址:https://github.com/Servic
阅读全文
摘要:转发自:https://blog.csdn.net/leshami/article/details/55049891 一、演示环境及数据> db.version() 3.2.11 > db.users.insertMany( [ { _id: 1, name: "sue", age: 19, typ
阅读全文
摘要:mongodb操作文件,主要是通过GridFS类。存储文件主要存放在fs中,其中的fs是数据库默认的。并且GridFS是直接与数据库打交道,与collection集合无关。 https://docs.mongodb.com/manual/core/gridfs/ When to Use GridFS
阅读全文
摘要:MONGO优缺点: 1海量查询是mongo更快 2mongo可以存储文件 3mongo不需要定义数据结构:字段个数,字段类型【NoSQL可能更加适合初始化数据还不明确或者未定的项目中。】 4mongo可以通过集合分片实现水平扩展,应用不用关注数据是否被分散到多个机器(sql可以垂直扩展:增加CPU、
阅读全文