这几款开源的数据库客户端工具,你们都用过吗?
在日常开发工作中,肯定是离不开数据库的,Java开发的话,一般用Mysql较多一些,当然,有很多强大的客户端工具,可惜它们都要收费,比如Navicat Premium,它可以连接多种流行的数据库,但是我就喜欢开源免费的东西,所以,这里就列举一些在Github找的一些开源工具来分享一下。
想必很多人都听说过甚至用过DBeaver,是的,它很强大,支持众多流行和非流行数据库,几乎囊括完了,这里就不一一列举,有开源免费版和商用版。我现在就是用的这个免费版
这里需要提的建议是,最好去窗口->首选项->连接->驱动->Maven,配置一下阿里的镜像仓库,不然,可能有时候会下载驱动包失败
这工具也挺不错的,轻量级绿色免安装的数据库客户端工具,支持结果导出Execl、CSV还可以直接复制,目前支持:
- SQLite
- MySQL
- MariaDB
- Postgres
- CockroachDB
- SQL Server
- Amazon Redshift
它也是免费开源的数据库客户端工具,也支持主流的数据库连接,目前Github有4.8kStar
从图中我们可以看到,它已经有近三年没有更新过了,但是它有个比较有意思的功能是可以把结果渲染成图表,类似于Redash,但是我感觉没什么实际意义
它是基于Electron绿色免安装跨平台的轻量级数据库客户端工具,支持目前市场上的主流数据库
其实目前用得比较多的应该只有DBeaver,这款工具我也在用。其它工具我还没有在实际工作中用到过。
几款常用database的性能对比
建模三件套,database,algorithm,training data。
这个科普文章,让我们来对比一下市面上常见的DB的性能以及其特殊的工作方式。
市面上常见的有很多,但其中大厂用得比较多的主要还是这几个:mysql、oracle、MongoDB还有HBase。
我们一个一个来看,首先是MySQL,免费的开源资源,用的也是最多的。不仅性能强大,扩展了SQL语言的实际应用,而且非常简洁,同时又是开源资源,不需要前期软件资源上的投资,通常中小企业都可以使用的。
由于是C和C++编写的,所以对于操作系统的应用也是非常广泛,Windows,MAC还有Linux都是可以适应的。
而且作为一个关系型数据库,通过关系模型构建的数据库,这种数据库灵活性高,而且速度快,还支持多线程,所以可以充分利用CPU资源,效率是杠杠滴。
它的特点是既可以作为一个应用程序嵌入到网络环境中,也可以作为一个库夹在语言中。这也是展示了他的灵活性。
但是问题存在于它只能局限于一种操作系统,比如处理分布式系统的问题时,sql server只能处理windows下的终端,而我们下面讲的Oracle在这一点上可以处理多个操作系统的分布式问题,也算是美中不足的一点吧~
接下来我们来看Oracle,相较于同为关系型数据库却免费的MySQL,Oracle拥有出色的是他的开放性,应该说是同等条件下最好的开放性DB平台了。
给予他可以提供高吞吐量,所以大中小微型产业都可以使用他。
就受众群体来说,还是很广泛的,再加上对于分布式系统的完美契合,可以说灵活指数是几款DB里最高的。
下一个是MongoDB。
这个database也是基于分布式系统的,应用的语言很广泛,主要有Python,PHP,Ruby,Java,C,C#,Javascript,Perl及C++语言的驱动程序。和上面两款不同的是,MongoDB不是一款关系型数据库,而是基于文档类型的数据库。
这就带来了一个问题,就是他只适合处理单一文档的数据,而不是中和多方面的。
总的来说MongoDB可以处理的,MySQL基本上也可以解决。
最后让我们来一起看HBase。
Hbase在海量存储方面做到了炉火纯青,在PB层面上也可以采用廉价的PC存储。极易扩展也是它的特点之一,而且具有比MySQL更好的高并发性能,是一个真正意义上的分布式数据库系统。
可以说得上是解决高并发问题的选项之一,在面临分布式系统的架构中占有一席之地。
以上就是四种常见数据库的特点分析,希望可以让你了解一点常见数据库的优劣与不同。
还有什么想看的知识,欢迎在评论区留言点赞,我们下期见面~
本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com
文章为作者独立观点不代本网立场,未经允许不得转载。