mysql怎样能建一个可以存储上亿条记录的数据库求答案

mysql怎样能建一个可以存储上亿条记录的数据库求答案,第1张

如果单讲存储,那只要你的硬盘够大都可以,但如果要讲效率就得想办法,如根据年份把数据放到不同的表里,或不同的机子上,因为一个表放这么多数据效率会很低的,但如果分开放又会出现统计、去重这类 *** 作的麻烦,所以设置数据库不能只考虑三级范式,难的是设置的有效率。

1、处理数据离不开优秀的程序代码,尤其在进行复杂数据处理时,必须使用程序。

2、对海量数据进行分区 *** 作十分必要,可以按年进行分区,不同的数据库有不同的分区方式,不过处理机制大体相同。

3、对海量的数据处理,对大表建立索引是必行的,索引的填充因子和聚集、非聚集索引都要考虑。

mysql在常规配置下,一般只能承受2000万的数据量(同时读写,且表中有大文本字段,单台服务器)。现在超过1亿,并不断增加的情况下,建议如下处理:

1、分表。可以按时间,或按一定的规则拆分,做到查询某一条数据库,尽量在一个子表中即可。这是最有效的方法。

2、读写分离。尤其是写入,放在新表中,定期进行同步。如果其中记录不断有update,最好将写的数据放在 redis中,定期同步。

3、表的大文本字段分离出来,成为独立的新表。大文本字段,可以使用NOSQL数据库。

4、优化架构,或优化SQL查询,避免联表查询,尽量不要用count(), in,递归等消耗性能的语句。

5、用内存缓存,或在前端读的时候,增加缓存数据库。重复读取时,直接从缓存中读取。

当需要在Excel中对数据进行分类计算时,除了使用数据透视表,还可以使用分类汇总命令。与数据透视表不同的是,它可以直接在数据区域中插入汇总行,从而可以同时看到数据明细和汇总。下面是分类汇总的使用方法:

在进行分类汇总前,需保证数据具有下列格式,即数据区域的第一行为标题行,数据区域中没有空行和空列,数据区域四周是空行和空列,如下图是几种商品在一些城市的销售数据。另外,如果数据区域在应用分类汇总前已被设置成Excel 2003列表或Excel 2007表,需将其转换为普通区域。因为对于Excel 2003列表或Excel 2007表无法使用分类汇总。

一、仅对某列进行分类汇总

例如上例中需要对各城市的销售量进行分类汇总,方法如下:

1 首先对数据按需要分类汇总的列(本例为“城市”列)进行排序。

选择“城市”列中的任意单元格,在Excel 2003中单击工具栏中的排序按钮如“A→Z”。在Excel 2007中,选择功能区中“数据”选项卡,在“排序和筛选”组中单击“A→Z”按钮。

2 选择数据区域中的某个单元格,在Excel 2003中单击菜单“数据→分类汇总”。如果是Excel 2007,则在“数据”选项卡的“分级显示”组中单击“分类汇总”。

3 在d出的“分类汇总”对话框中,在“分类字段”下选择“城市”,在“汇总方式”中选择某种汇总方式,可供选择的汇总方式有“求和”、“计数”、“平均值”等,本例中选择默认的“求和”。在“选定汇总项”下仅选择“销售额”。

4单击确定,Excel将按城市进行分类汇总。

二、对多列进行分类汇总

如上例中需要同时对“城市”列和“商品名称”列进行分类汇总,可以插入嵌套分类汇总。

1对数据进行多列排序,即进行多关键字排序。

首先选择数据区域中的某个单元格。

在Excel 2003中,单击菜单“数据→排序”。d出“排序”对话框,其中主要关键字选择“城市”,次要关键字选择“商品名称”,其他选择默认。

如果是Excel 2007,在“数据”选项卡的“排序和筛选”组中单击“排序”命令,在d出的“排序”对话框中,单击“添加条件”按钮添加次要关键字排序条件,然后主要关键字选择“城市”,次要关键字选择“商品名称”,其他选择默认。

2对“城市”列进行分类汇总(外部分类汇总)。

按上述方法打开“分类汇总”对话框,在“分类字段”下选择“城市”,在“汇总方式”中选择默认的“求和”,在“选定汇总项”下仅选择“销售额”。单击“确定”。

3对“商品名称”列进行分类汇总(嵌套分类汇总)。

再次打开“分类汇总”对话框,在“分类字段”下选择“商品名称”,取消选择“替换当前分类汇总”,单击“确定”。

这时Excel将按“城市”列和“商品名称”列对“销售额”进行分类汇总。

如果不需要显示明细数据,可以单击左侧的分级显示符号,如本例中右上角的数字和左侧的减号来隐藏明细数据。

三、删除分类汇总

在“分类汇总”对话框中,单击“全部删除”即可。

1数据量太大,比如上亿,就用oracle,优点上亿数据对Oracle来说轻飘飘的,也不用太多优化配置,缺点安装比较麻烦,上手比较慢。

2数据量较大,比如千万级,用postgresql,它号称对标Oracle,处理千万级数据还是可以的,也是易学易用。

3数据量一般,比如百万级,用mysql,这个级别的数据量mysql处理还是比较快的。

4数据量较小,比如十万以下,sqlite、access都可以。

上面是基于单表 *** 作的数据量,你看着选。

简单易用的数据库哪个比较好?这个要具体看你的用途,如果数据量比较少(10万左右),追求简约简单,免费开源的sqlite就行,如果数据量比较多,考虑到高并发、分布式,可以使用专业的mysql、postgresql,下面我分别简单介绍一下,感兴趣的朋友可以尝试一下:

小巧灵活sqlite

这是基于c语言开发的一个轻量级关系型数据库,短小精悍、免费开源,个人使用无需繁琐的配置,只需一个简单的运行库便可直接使用,针对各种编程语言都提供了丰富的API接口, java、 python、c#等都可轻松 *** 作,如果你存储数据量不多,只是本地简单的 *** 作(读多写少),可以使用一下这个数据库,占用内存非常少,轻便灵活,当然,在高并发、数据量大的情况下就不合适了:

专业强大mysql

这是目前应该广泛使用的一个关系型数据库,免费开源跨平台,在信息系统开发方面一直占据着主力位置,如果你从事于web开发或者网站后台建设,那么这个数据库一定非常熟悉,支持高并发、分布式,存储数据量相对于sqlite来说,更多也更安全,索引、触发器、存储过程等功能非常不错,支持数据导入导出、恢复备份,只要你熟悉一下基本使用过程,很快就能掌握和运用:

免费开源postgresql

这是加州大学计算机系开发的一个对象-关系型数据库(自由软件),免费、开源、跨平台,支持流计算、全文检索、图式搜索、并行计算、存储过程、空间数据、K-V类型,相比较mysql来说,在复杂查询、高并发下更稳定、性能更优越,可扩展性、可维护性非常不错,但也有劣势,例如新旧版本不分离存储,没有Coverage index scan等,总体使用效果来说还不错:

当然,除了以上3个数据库,还有许多其他数据库,像mssql、oracle等也都非常不错,对于存储和处理数据来说绰绰有余,只要你熟悉一下基本使用过程,很快就能入门的,网上也有相关教程和资料,介绍的非常详细,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。

最符合初学者理解和入门的是Access,因为它和Excel本来就是一个套件,相互转化容易,复制粘贴即可,非常好理解库、表、字段、键的概念。

如果数据量不大,强烈推荐试试Filemaker,脚本化编程,自由定制输入界面、工作流程,非常便捷高效。

最近杀出来的airtable,更是简单高效,界面美观, *** 作与电子表格相当,发展势头也非常迅猛。

二者侧重点有所不同,用户可根据需要选择

作为一个软件开发人员,长期需要和数据库打交道,个人更加青睐于MySQL。虽然可能基于你的Excel原因,有些人会建议你使用Access数据库,但是基于我个人的 意见,我并不建议你那样做。采用MySql的具体理由如下:

1MySQL具有普遍性,在国内的环境中,绝大多数的互联网企业采用的是MySQL。有了广大的用户基础后,针对于各种问题网上也能更好地找到解决方案。

2MySQL相对于Oracle而言,更加轻量化,针对于从Excel量级的数据,没必要使用Oracle。同时MySQL是完全免费的,不用担心版权及费用问题,无论对个人还是对预算有限的企业而言都是很好的选择。

3MySQL高度兼容标准SQL,这对于以后迁移到其他数据库而言,也能很大程度地降低学习成本。

希望我的回答能够对你有所帮助!!![耶][耶][耶]

Excel办公确实便利,可以做一些简单的数据分析,但涉及大量复杂的数据运算,就会遇到和题主一样的问题,运算速度慢,如果主机性能不是很好,还有可能面临电脑死机,数据丢失等问题。

遇到这种情况,我们该如何解决呢?数据库的重要性显而易见!

现在, 我将用3分钟的时间,与您探讨该选择何种数据库,以及选择它的理由,是否有更优的解决方案呢?

MySQL数据库,90%的企业都会选择它

数据库选得好,企业的数据安全,资产安全,也就得到了保障。那么该如何选择数据库呢?这个跟你的业务量和业务服务行业,密不可分。

如果你只是上班打卡,用SQL server就可以了;

如果你要储存会话信息,用户配置信息,购物车数据,建议使用NoSQL数据库;

不过90%的企业或个人,首选数据库都是MySQL数据库。

为什么这么说?

因为,它集 低成本、高可用、可靠性强、易用性强、体积小、速度快开放源码 等特性于一身,所以在金融、财务、网站、 数据处理 等应用领域,它占据着独一无二的优势。

这也是几乎所有企业都选择它,来存储数据的原因。

加之MySQL数据库,支持多种存储引擎,支持大型数据库,可以处理成千上万条记录,还提供用于管理、检查、优化数据库 *** 作的工具。

因而,MySQL尤其受个人,以及中小企业的推崇。

虽然MySQL数据库简单易用,但我还是不会部署该怎么办?

别担心,现在市面上已经出现了,一种自带数据库的新型办公软件。

比如说,云表企业应用平台,一款兼容excel功能,但功能更为强大的办公软件,它就内嵌了MySQL数据库。 (文末有免费获取方式)

云表内嵌的MySQL数据库,有何优点?

1 性能更加优化,更加兼容系统。因为云表的研发人员,时刻更新维护MySQL数据库。

2 省去自己手动部署的麻烦。但如果你熟悉部署数据库,想把数据库改成Oracle或SQL server等数据库,也可以设置。(不过,我建议IT小白还是 “拿来即用” 就好)

3 快速实时计算。数据分析实时交互,完全满足管理决策中的临时性分析,多变的业务需求,以及频繁的结果刷新。

4 通过自带的内存计算引擎,无需事先建立CUBE,IT部门将告别报表延时报表分析,亿级数据秒级响应。

内嵌的MySQL数据库是否可靠

云表不仅是一款办公软件,同时还是一款开发工具。

通过它,你将解决以下问题:

复杂的数据运算,精确到行列的权限管控,以及工作流,海量用户同时在线办公,数据透视,制作像销售单,洽谈合同等表单报表,一份制作,即可重复录用

你还可以通过它,与电子称、地磅等进行对接,与用友金蝶等三方系统集成,生成条形码,扫码出入库,生成移动端APP 基本上业务所需的功能,你都可以放心交给它做。

它最大的亮点就是,你可以 用使用excel的手法,用它来开发业务应用。

而且,可视化的 拖拉拽 之后,开发出来的ERP、WMS、OA、进销存等业务应用,还秉承了MySQL数据库增删改查的功能特性。

没错,用云表开发出来的业务应用,是允许二次开发的,而且功能可以随时增删改查,轻松满足大集团精细化的数据控制需求。

不过,大家最关心的应该是数据安全问题吧。

数据存放在云表内嵌的MySQL数据库,是安全不丢失的,它提供了多种数据存储的方式,本地部署,云端部署,混合部署,任君挑选!

正因如此,像 恒逸石化、许继电气、航天科工委、中铁、中冶、云南小松 等大型集团,才鼓励内部员工去学习云表。

篇幅所限,只说到这里,说太多你也不会看。

免费 的软获取方式在下方:

数据库的用处可大着呢,不仅可以实现数据共享,减少数据冗余度,还能实现对数据的集中控制,保持数据的一致性和可维护性。选取简单易用的数据库,你有什么好的建议呢,留言让我们看到噢!

题主强调了简单易用。所以推荐最简单三个。

1Access。

2Excel。

3飞书文档、腾讯文档、石墨文档等的表格。

如果要做分析,数据量才比较大,建议Access,还是专业的更好一些。网上教程也很多,比较容易学。而且建议用早一点的版本,比如2003或者2007,Access这些年微软一直想从office里去掉,奈何用的人还是很多,所以不敢去掉,但是采取了一种比较恶心的方法让用户放弃,就是每发布一个新版本,就去掉一些好用的功能,所以说Access是越早的功能越强。

还一个推荐就是Sql Server Express版本,是SQL Server的免费版本,不要钱,基本功能都有,要比sqllite等强大的多

这要结合你个人实际情况来定,有计算机基础,懂一点数据库的话那么市场上的那些软件都可以用,常用有oracle,sqlserver,mysql等,要上手快还是sqlserver比较快,界面 *** 作也比较直观;如果一点基础都没有,但是又要分析数据的话可以用微软自带的一个access,这个上手比较快。决定用哪一种之后还是要买点教材看,简单的sql查询要会,熟练之后也能提高工作效率。

个人使用数据库的话,只存数据不做分析,SQLite就足够了。

以上就是关于mysql怎样能建一个可以存储上亿条记录的数据库求答案全部的内容,包括:mysql怎样能建一个可以存储上亿条记录的数据库求答案、在建成数据库以后,200亿条的数据如何处理、一张表数据量过亿怎么追数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9541487.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存