大数据存储技术选型(一)——数据库介绍

我们来谈谈数据库选择。
我记得几年前,当我在工作中做一个项目时。
当时,选择数据库是一件令人头疼的事情。
我们先来说说DB2 在老银行之外,这个东西用得不多。
它通常随 AIX 一起出售和提供。
性能方面,处理千万级数据时速度非常快。
处理千万级数据仅需一分钟。
这是非常令人印象深刻的。
但在管理方面,却远远落后于Oracle。

我们来谈谈Mysql,它是开源的。
由于被Oracle收购,5 .7 版本比5 .6 要好很多。
安装过程中几乎没有什么陷阱,适合初学者。
但从性能优化的角度来看,配置文件中的某些参数在数据库启动过程中是不能更改的。
更改系统参数需要重新加载或重新启动数据库,这有点繁琐。
锁定机制非常有趣。
有插入锁、更新锁、行锁、表锁,非常有研究价值。

接下来,我们有SqlServer。
这基本上运行在 Windows 服务器上。
虽然它消耗了大量的系统资源,但它提供的许多服务主要是为企业服务的。

开源的PostgreSQL在管理方面与Oracle类似,在使用方面与Mysql类似,但涉及的程度更高一些。
它结合了Mysql和Oracle的特点,非常有趣。

Oracle,性能、存储、管理、优化各方面都达到专业水平。
还有很多特色功能,如垃圾机制、优化器、事务管理等。
不过,对于没有经验的人来说使用起来有点困难,而且安装也比较复杂,需要root用户。

Teradata,它技术先进,并且很早就进行了集群研究。
服务器集群、模型、调度都不错,服务支持也不错,但是价格有点高。

Hadoop 是开源的。
其核心组件是HDFS和MapReduce。
它拥有庞大的生态系统和许多工具。

虽然都叫数据库,但是各有各的特点。
您选择哪一种取决于您的具体需求。
由于我对这个领域接触比较多,所以我想说几句。
至于Redis、MongoDB等其他特性,我不太了解,也没有勇气去废话。
哈哈哈,我们就先不说这里了。

mysql数据库有啥用

记得有一次,我在一个周末下午帮助一个朋友建立了一个简单的博客网站。
当时,我们选择WordPress作为我们的内容管理系统,MySQL负责存储所有用户数据、文本内容和评论。
当我看着网站从无到有的成长时,我意识到了 MySQL 在数据存储和管理方面的强大功能。

当天,我们总共上传了5 0篇文章。
每篇文章都有标题、正文和发布时间等字段。
有超过2 00条用户评论,这些数据需要MySQL来有效存储和管理。
为了通过外键约束保证数据的一致性,我们准备了用户表、文本表和评论表。
在文章表中,我们使用了索引,以便用户可以快速找到自己想要的内容。

构建完成后,我尝试使用SQL语句来查询文章的阅读率,每篇文章的平均阅读率达到了2 00次。
这个数字让我感到惊讶,也让我对MySQL查询优化技术有了更深入的了解。

等等,我突然想到,还有一件事。
如果有一天网站用户数量增加,MySQL还能保持高效的数据存储和管理吗?或许,这个时候,你应该考虑数据库的大小。

mysql数据库是什么

现在说起MySQL,当时它非常流行。
2 008 年,Sun Microsystems 收购了 MySQL AB。
次年,Oracle 收购了 Sun Microsystems,MySQL 成为 Oracle 的一部分。
当时,社区有点恐慌,担心零售价格和开源支持。
结果,维基百科和其他人开始使用 MariaDB。
不过,MySQL仍然很稳定,大家都更喜欢使用它。

现在想想,MySQL的功能还是蛮多的。
首先,它是跨平台的,可以在 AIX、Linux 或 Windows 上运行。
还支持许多编程语言,包括 C、Java 和 Python。
性能优化也做得很好,充分利用了多线程架构和CPU资源。
部署也很灵活,可以独立运行或嵌入其他软件中。
我们还拥有广泛的国际支持,支持中文和日语等语言。
有多种连接协议可供使用,包括 TCP/IP、ODBC 和 JDBC。

从应用场景来看,MySQL广泛应用于Web开发、中小型网站,甚至一些大型系统。
例如,谷歌和Facebook很早就使用了它。
有两个版本:免费社区版和付费企业版。
社区版遵循GPL协议,可以免费使用、修改和分发。
企业版提供技术支持、高级工具和闭源修复,但需要付费。

尽管甲骨文收购后调整了业务策略,但MySQL凭借其稳定性、低成本和社区活跃度,已成为全球最受欢迎的开源数据库之一。
尽管MariaDB崛起,但MySQL在性能优化和商业支持方面仍然非常有竞争力。
哇,这个真的很耐用。

MySQL数据库连接池是什么_如何配置提高并发性能?

哎呀,我们来说说MySQL数据库连接池吧。
这个东西就像一个大水库,专门用来存储数据库连接的。
要知道,数据库连接就像我们平时打电话一样:打完一个电话就挂断,然后再打另一个电话。
来来回回是相当乏味的。
但连接池解决了这个问题。
它从一开始就建立了一系列的联系。
当我们需要的时候,我们可以直接从池子里取出来,用完之后再放回去,省去了很多麻烦。

当我第一次接触这个东西的时候,我完全是一头雾水。
但后来我发现这东西闻起来真的很香。
例如,HikariCP 的配置快速且简单。
SpringBoot使用它。
还有 Druid,它具有一整套功能,包括监控和日志记录。

配置连接池就像向水库引水一样。
一定要注意方法。
例如,最大连接数对应于水库可容纳的水量。
你不能拥有太多或太少。
一般来说 5 0 到 1 00 就足够了,具体取决于数据库的耐用性。
还有一个最少数量的闲置端口,这就像在水库里留一些水来应对突然发生的洪水。

考虑连接超时和空闲恢复策略也很重要,这与连接可用性和资源利用率有关。
另外,尤其是在生产环境中,需要注意检查连接的有效性,确保得到的连接是好的。

但说实话,这件事不能盲目对待。
例如,最大连接数不能简单地增加,而必须根据实际情况而定。
连接池大小与数据库中的最大连接数并不对应,还必须考虑来自其他来源的连接。
监控也很重要,Druid的监控面板相当不错。
最后,不同的服务需要独立配置连接池,避免相互干扰。