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

旅游景点网站设计太原西北建设有限公司网站

旅游景点网站设计,太原西北建设有限公司网站,四川网络推广,北京网站上排名在进行数据查询性能测试的过程中#xff0c;我的同事幺加明对 ES#xff08;Elasticsearch#xff09;和 MySQL 进行了相对较大数据量的测试#xff0c;并整理了相关结果。在得到其授权的情况下#xff0c;我将此对比案例分享给大家#xff0c;在此再次向幺加明表示感谢。…在进行数据查询性能测试的过程中我的同事幺加明对 ESElasticsearch和 MySQL 进行了相对较大数据量的测试并整理了相关结果。在得到其授权的情况下我将此对比案例分享给大家在此再次向幺加明表示感谢。 一、结论 通过对es和mysql相对较大数据量的测试得出结果在Mysql查询使用到合适的索引的条件下通过mysql得到相应结果的速度要明显优于Es。 二、通过es实现 Es 文档数据模型 type Content struct {ContentId int64 json:id // 内容idPermissionType int json:permission_type // 权限类型 0:公开1:仅自己可见2:部分可见3:不给谁看TopicId int json:topic_id // 话题idAllowUser []User json:allow_user // 允许的用户BlockUser []User json:block_user // 屏蔽的用户 }type User struct {Id int64 json:id // 用户id } 测试数据量及条件 测试 ES 数据量为 2000 万的作品数5000 的用户量此用户量与实际情况有出入理论上应有至少 20 万的用户量。当设置给部分人可见时AllowUser 内有 30 个元素同样当设置不给谁看时BlockUser 内也是有 30 个元素。所以对应的总数据量在 3 亿条左右。 查询条件如下 1、单独查询公开可见数据 查询时间在275毫秒左右 2、单独查询部分可见数据耗时70毫秒左右 3、单独查询部分不可见数据耗时255毫秒左右 4、合并三次查询未一次查询就得到结果的话耗时428毫秒左右 综上所述 采用 Es最快的响应时间为并行执行每次查询耗时在300毫秒以内。 三、通过mysql实现 Mysql 表结构如下 CREATE TABLE content_permission_1 (id int unsigned NOT NULL AUTO_INCREMENT COMMENT 主键自增,content_id int NOT NULL DEFAULT 0 COMMENT 内容id,permission_type tinyint NOT NULL DEFAULT 0 COMMENT 权限类型 0:公开1:仅自己可见2:部分可见3:不给谁看 ,topic_id int NOT NULL DEFAULT 0 COMMENT 话题id,user_id int NOT NULL DEFAULT 0 COMMENT 权限针对的用户id,PRIMARY KEY (id) USING BTREE,KEY idx_content_id (content_id) USING BTREE,KEY idx_user_id_content_id (user_id,content_id) ) ENGINEInnoDB AUTO_INCREMENT1 DEFAULT CHARSETutf8mb4 COMMENT内容权限表可见设置 测试条件及数据量 测试 MySQL 数据量为 1000 万的作品数据总共 1.5 亿权限相关数据。 查询条件如下 1、查询公开数据耗时21毫秒左右 使用到的索引为 idx_content_id 2、查询部分人可见 耗时48毫秒左右 使用到的索引为 idx_user_id_content_id 3、查询部分人不可见耗时13毫秒左右使用到的索引为 idx_content_id 综上所述 采用 mysql最快的响应时间为并行执行每次查询耗时在50毫秒以内 总结 1.mysql建立合适的索引避免回表的情况下其查询性能还是非常优异的。 2.对于 ES 的测试结果其实并不令人意外。不过对于 ES 在字典中查找对应 keyword 的具体方式我充满了好奇。目前我在思考它是否基于二分法进行查找呢毕竟在面对庞大的数据量时如果采用二分法可能会在一定程度上影响查询速度。遗憾的是目前我还没有找到关于 ES 底层查询原理的详细资料所以这仅仅是我的一种猜测罢了。倘若让我来编写这样一个程序在没有更多信息的情况下二分法或许是我首先能想到的一种实现方式。但我深知ES 作为一款成熟的搜索引擎其查询原理必定更加复杂和高效肯定不仅仅局限于简单的二分法。我期待着深入了解 ES 的底层查询机制以便更好地理解和应用它在实际项目中的强大功能。这个问题有时间再做深入研究。 通过这次对比测试我们可以看出在特定的查询场景下MySQL 在性能上有着明显的优势。然而ES 也有其独特的应用场景如全文搜索等。在实际应用中我们需要根据具体的需求来选择合适的数据库技术以达到最佳的性能和效果。
http://www.hkea.cn/news/14393310/

相关文章:

  • 提供中山精品网站建设建设网站的好处和优点
  • 个人建设网站需要什么证件吗百度手机应用市场
  • 昆明建设工程质量备案在哪个网站小学文化学网站开发
  • 郑州做网站优化电话新网站如何推广
  • 网站建设shundeitphp和wordpress
  • 怎样做运营一个网站做微商网站的软文
  • 天津河西做网站vps网站无法通过ip访问
  • 网站需求说明佛山网站建设推广服务
  • 免费seo网站诊断免费flashfxp上传了网站
  • 在哪里可以改动网站标题深圳做网站小程序
  • 特乐网站建设企业宣传软文
  • 免费建站网站有哪些网站收录最好的方法
  • 找手工活做注册网站水果网络营销方案
  • 专做化妆品的网站wordpress的mip改造
  • 用vis做的简单网站wordpress 招商系统
  • flash网站代码下载微信公众号怎么做商城
  • 商城类网站建设多少钱微信 网站 织梦
  • 网站建设及优化的策划书中国兰州
  • 信息服务类网站建设方案聚名网评价
  • 网站备案前置审批表格wordpress 自动提交表单
  • 太原网站设计费用官方网站弹幕怎么做
  • 双语网站建设公司简单的电影网站模板
  • 视频播放网站怎么做电脑培训零基础培训班
  • 上海装修做网站的倒闭了storefront wordpress
  • 建设项目前期收费查询网站3d建模一般学多久
  • 个人网站的留言板数据库怎么做wordpress媒体库注册
  • 事业单位网站后台建设方案好的案例展示网站
  • 深圳企业网站开发国外创意摄影网站
  • 做直播导航网站本机做网站如何访问
  • 郑州做网站外包的公司有哪些企业网站的分类