`
javasee
  • 浏览: 968563 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

坏的数据库设计会极度浪费电能

阅读更多

当前,全世界都在进行电力节能,海纳技术咨询通过多年的对国内互联网企业的跟踪调研,发现其实大部分的企业软件系统都在白白的浪费的电能,这种浪费是非常惊人的。

一个好的数据库表设计与坏的数据库表设计,对于同一个项目来说,可能耗费的电能相差几千倍,这绝对不是危言耸听。我们曾经为一个互联网进行过技术咨询,这家公司经常抱怨他们的系统最近很慢,要求我们进行优化。 设计开发一个叫做“好友列表”的模块时总是随着用户的增多而性能低下,请我们帮忙解决,经过研究发现,他们的这个好友表已经存储了2亿条记录。他们对用户id建立了索引,然后每次添加好友都是顺着这个表依次添加。

分析: 系统根据用户id在索引中查询到该id,然后指到对应的磁盘块读取对应的记录。可惜的是记录数的增大和数据存储的无规律特点,系统磁盘指针往往为了读到一个块,进行跳跃式操作,全程下来至少100次io操作。在这个过程中,浪费着无用的电能,也拖累的性能。

解决:经过需求分析,这家公司认为好友的个数不会大于100。我们的新设计开始了,首先,把这个用户id的所有最多100个好友存在一个连续地方,开辟了512*m字节大小作为存储100个好友信息的块大小。这样,在获取好友列表时,只需1次io操作即可全部获得。经过公司的测试部门压力测试验证,性能提高了大约40%,关键的是电能耗费大大降低。

提高后台系统的负载和并发量,优化io存取算法,数据结构等等都是解决之道。当前普遍的情况是,公司能够买大量的服务器作为压力分担,不会或很少考虑对系统进行算法优化。但是别忘了,为网民提供服务和自身盈利之外,为了节约电能,造福全球人类,难道不是一个进行算法优化的合法理由吗?节约电能,预防全球变暖,互联网公司做贡献了时候到了!

http://www.distributed-cluster.com/

分享到:
评论

相关推荐

    来自IEEE PES数据库的电能质量扰动数据源

    标题中的“来自IEEE PES数据库的电能质量扰动数据源”揭示了本文将要讨论的核心主题,即IEEE电力与能源学会(IEEE Power & Energy Society, PES)维护的一个专门用于电能质量研究的数据集。这个数据集包含了各种类型...

    电子式电能表设计毕业论文.doc

    《电子式电能表设计》是一项综合性的工程项目,旨在开发一款高效、准确的单相电子式电能表。本文档详细介绍了设计的核心理念、组成部分、技术细节以及实施过程中的调试和测试策略。以下是对该设计的主要知识点的深入...

    基于ssm+mysql的电能计量与客户服务管理系统的实现(本科毕业设计+数据库).zip

    基于ssm+mysql的电能计量与客户服务管理系统的实现(本科毕业设计+数据库).zip 基于ssm+mysql的电能计量与客户服务管理系统的实现(本科毕业设计+数据库).zip 基于ssm+mysql的电能计量与客户服务管理系统的实现...

    基于LabVIEW的电能质量分析系统设计

    《基于LabVIEW的电能质量分析系统设计》 在当今电力系统中,电能质量是衡量电力供应稳定性和可靠性的关键指标。电能质量分析系统能够有效地监测和评估电力网络中的电压、电流波动,谐波失真,瞬时中断等现象,确保...

    基于单片机的数字电能表 程序设计

    在电子技术领域,基于单片机的数字电能表程序设计是实现智能电网与能源管理的重要环节。这种电能表采用微控制器(即单片机)作为核心处理单元,能够进行精确、实时的电能量计量,并具备多种附加功能,如分时段计费、...

    基于单片机的智能电能表设计

    "基于单片机的智能电能表设计" 智能电能表是一种基于微处理器或微控制器芯片的智能仪器,可以存储大量的测量信息,并具有对测量结果进行实时分析、综合和做出各种判断能力的仪器。智能电能表一般具有自动测量功能,...

    毕业设计:基于SSM的mysql-电能计量与客户服务管理系统vue(源码 + 数据库 + 说明文档)

    毕业设计:基于SSM的mysql_电能计量与客户服务管理系统vue(源码 + 数据库 + 说明文档) 2 关键技术介绍 6 2.1 VUE简介 6 2.2 MYSQL简介 6 2.3 JAVA语言简介 7 2.4 MyEclipse开发平台 9 2.5 SSM 简介 10 3 需求分析...

    电能表的软件设计

    电能表的软件设计电能表的软件设计

    毕业设计:智能家居系统的移动终端,采用Qt编写,主要实现电能的监控和管理.zip

    毕业设计:智能家居系统的移动终端,采用Qt编写,主要实现电能的监控和管理.zip 毕业设计 系统开发 管理系统设计 C++ 数据库 源代码 毕业设计 系统开发 管理系统设计 C++ 数据库 源代码 毕业设计 系统开发 管理...

    基于MSP430FE427单相多功能电能表设计

    ### 基于MSP430FE427单相多功能电能表设计 #### 知识点一:多功能电能表概述 多功能电能表是一种能够精确测量多种电参数(如电压、电流、功率因数等)的智能电表。与传统的电能表相比,多功能电能表不仅能够实现...

    Q/GDW 10347-2016 电能计量装置通用设计规范

    Q/GDW 10347-2016 电能计量装置通用设计规范 为统一电能计量装置建设,减少设备型式,提高电能计量装置可靠性、准确性和安全性,制定本标准。

    电能质量波形.rar_MATLAB 电能质量_MATLAB电能质量_电能_电能质量扰动_电能质量波形

    在电力系统中,电能质量是衡量电力供应稳定性和可靠性的关键指标,它涉及到电压、电流和频率等电气参数的稳定性。本压缩包"电能质量波形.rar"提供了MATLAB环境下的电能质量仿真程序,帮助我们深入理解和分析电能质量...

    电能收集充电器设计报告

    为了实现这一目标,电能收集充电器的设计必须确保能够从直流电源中高效地提取能量,并将其转化为适合充电电池的电流。本文详细分析了电能收集充电器的设计报告,重点探讨了其核心组成部分和工作原理。 在电能收集...

    电能质量监测系统设计及应用 术语

    本篇将围绕"电能质量监测系统设计及应用 术语"这一主题,详细解析相关知识点。 一、电能质量监测系统 电能质量监测系统主要用于实时或周期性地检测电网中的电压、电流、频率、谐波、闪变、三相不平衡等参数,以确保...

    能耗数据库设计.doc

    能耗数据库设计是IT领域中关于数据管理和监控的重要环节,尤其在智能建筑和数据中心管理中扮演着关键角色。本文将详细解析文档中提到的能耗数据库设计的相关知识点。 首先,数据库表和字段前缀的设计遵循了一定的...

Global site tag (gtag.js) - Google Analytics