当前位置: 首页 > news >正文

建站公司塔山双喜四种营销模式

建站公司塔山双喜,四种营销模式,网站优化建设方案,seo关键词排名优化报价一. 前言 前面我们简单介绍了数据库的B-Tree索引#xff0c;下面我们介绍另一种索引类型-哈希索引。 二. 哈希索引的简介 哈希索引(hash index) 基于哈希表实现#xff0c;只有精确匹配索引所有列的查询才有效。对于每一行数据#xff0c;存储引擎都会对所有索引列计算一个…一. 前言 前面我们简单介绍了数据库的B-Tree索引下面我们介绍另一种索引类型-哈希索引。 二. 哈希索引的简介 哈希索引(hash index) 基于哈希表实现只有精确匹配索引所有列的查询才有效。对于每一行数据存储引擎都会对所有索引列计算一个哈希码(hash code),哈希码是一个较小的值并且在不同键值的行计算出来的码也不一样。哈希索引将所有的哈希码存储在索引中同时在哈希表中保存指向每个数据行的指针。 在Mysql中只有Memory引擎显示支持哈希索引。是它默认的存储引擎。值得注意的是Memory引擎是支持非唯一哈希索引的。如果多个列的哈希值相同索引会以链表的方式存放多个记录指针到同一个哈希条目中。 三. 案例说明 建表语句 CREATE TABLE testhash (fname VARCHAR ( 50 ) NOT NULL,Iname VARCHAR ( 50 ) NOT NULL,KEY USING HASH ( fname ) ) ENGINE MEMORY;插入语句 INSERT INTO test.testhash (fname, Iname) VALUES (Aerjen, Lentz); INSERT INTO test.testhash (fname, Iname) VALUES (Baron, Schwartz); INSERT INTO test.testhash (fname, Iname) VALUES (Peter, Zaitsev); INSERT INTO test.testhash (fname, Iname) VALUES (Vadim, Tkachenko);数据内容 SELECT * from testhash假设索引使用假想的哈希函数 f(), 他返回下面的值(都是示例数据,非真实数据) f(‘Arjen’) 2323 f(‘Baron’) 7437 f(‘Peter’) 8784 f(‘Vadim’) 2458 则哈希索引的数据结构如下: 哈希查找方式 注意每个槽的编号是顺序的但是数据行不是。 搜索方式 SELECT Iname FROM testhash WHERE fname PeterMysql 先计算 ‘Peter’的哈希值并使用该值寻找对应的记录指针。因为 f(‘Peter’) 8784, 所以Mysql 在索引中查找8784,可以找到指向第3行的指针最后一步就是比较第三行的值是否为’Peter’,以确保就是要查找的行。 四. 哈希索引的优缺点 优点: 索引自身只需存储对应的哈希值所以索引的结构十分紧凑这也让哈希索引查找速度非常快。访问哈希索引的数据非常快,除非有很多哈希冲突。(不同的索引列值却有相同的哈希值)。当出现哈希冲突的时候,存储引擎必须遍历链表中所有的行指针,逐行进行比较,直到找到结果. 缺点 哈希索引只包含哈希值和行指针,而不存储字段值所以不能使用索引中的值来避免读取行。不过,访问内存中的行速度很快所以大部分情况下这一影响并不明显。哈希索引数据并不是按照索引值顺序存储的所以也就无法用于排序哈希索引页不支持部分索引列匹配查找,因为哈希索引始终是使用索引列的全部内容来计算哈希值的。例如, 在数据列(A,B) 上建立哈希索引,如果查询只有数据列A,则无法使用该索引。哈希索引只支持等值比较查询,包括 , IN(), 。它也不支持任何范围查询,例如 WHERE price 100 五. InnoDB中的哈希索引 1. 简介 InnoDB 引擎有一个特殊的功能叫做自适应哈希索引。当InnoDB 注意到某些索引值被使用得非常频繁时,它会在内存中基于 B-Tree 索引之上创建一个哈希索引,这样就让B-Tree索引也具有哈希索引的一些优点,比如快速的哈希查找。这是一个完全自动的,内部的行为,用户无法控制或者配置,不过如果有必要,完全可以关闭该功能。 2. 案例说明 如果表中存储了大量的URL,并需要根据URL 进行搜索查找。如果使用 B-Tree来存储URL存储的内容就会很大,因为URL本身都很长。正常情况下会有如下查询: SELECT id FROM url WHERE url http://www.mysql.com;若删除原来的URL列上的索引,而新增一个被索引的 url_crc列,使用 CRC32做哈希,就可以使用下面的方式查询: SELECT id FROM url WHERE url http://www.mysql.com AND url_crcCRC32(http://www.mysql.com);这样做的性能会非常高,因为Mysql优化器会使用这个选择性很高而体积很小的基于 url_crc 列的索引来完成查找。即使有多个记录有相同的索引值,查询仍然很快,只需要根据哈希值做快速的整数比较就能找到索引条目然后一一比较返回对应的行。这比直接通过url做B-Tree索引要快的多。
http://www.hkea.cn/news/14428652/

相关文章:

  • 蕲春县住房和城乡建设局网站php做网页
  • 注销网站 注销主体高端公司网站
  • 网站建设专业英文如何做网站出单
  • 网站前台可以打开定制小程序多少钱
  • 可以网站可以做免费的文案广告语管理咨询的作用
  • 网站建设的财务计划企业年金查询个人账户查询
  • 专业3合1网站建设价格wordpress 中文 模板
  • 网站 永久关停 请示小工厂如何找外贸公司合作
  • 建站用哪个模板好行业网站盈利模式
  • 网络公司网站策划书佛山做推广网站的
  • 网站建设实际总结在国外建设网站
  • 有哪个网站做策划方案的域名网站空间
  • 网站开发验收确 认书网站建设培训南宁
  • 青岛网站推广怎么选佛山电子商务网站建设
  • 成都网站建设scdzkswordpress 国内不使用
  • 互联网网站开发发展个人怎么开发app
  • 徐州网站备案wordpress 云储存
  • 淘宝导购网站怎么做2023年建筑项目招标信息
  • 网站管理与维护方案网络营销是借助于什么营销手段
  • 门户网站地方生活门户有哪些建设手机银行网站
  • 文山知名网站建设哪家好做啥网站最挣钱
  • 在线构建网站爱聊网站
  • 深圳网站建设吗旅游网站建设流程
  • 视频网站开发研究背景wordpress 内页模板
  • 郑州汉狮公司做网站pc蛋蛋游戏体验网站建设
  • 网站做seo有什么作用新手自己建网站
  • 微信网站怎么做的好名字动漫制作专业专科学校
  • 广州建网站的公司有哪些文化传媒有限公司 网站建设
  • 外贸soho建站公司一般建设网站的布局
  • 花生壳动态域名做网站推广平台的句子