数据可视化在目前的企业IT信息化领域的需求日渐增加,这得益于多年企业信息系统和基础平台建设的完善,企业有大量亟待挖掘的数据资产,需要通过可视化工具进行挖掘、分析和展示,通过数据指导企业经营决策。
数据可视化项目一般有数据存储、数据处理加工、数据可视化展示三大核心环节组成。业内专业称为:数据仓库、ETL、数据可视化。
三大环节目前均有标准成熟的商业化解决方案。包括国际大厂IBM、微软、SAP、Oracle等,均有自己的解决方案和产品线。目前国内企业也纷纷加入,其中不乏很多优秀的厂商和解决方案供应商。
当然,在开源领域,商业智能(BI)和数据可视化也是企业应用的重点,各大优秀的开源厂商向开源社区提供了丰富且功能强大的开源工具。针对有自己信息中心实施能力,或者预算有限、前期摸索的企业,不妨可以了解下开源方案。
本文重点推荐数据可视化项目三剑客:
数据存储:PostgreSQL
ETL:kettle
数据可视化:SuperSet
Postgres
PostgreSQL (也叫 Postgres)是一个自由的对象-关系数据库服务器(数据库管理系统),它在灵活的 BSD-风格许可证下发行。它提供了相对其他开放源代码数据库系统(比如 MySQL 和 Firebird),和对专有系统比如 Oracle、Sybase、IBM 的 DB2 和 Microsoft SQL Server的一种选择。
PostgreSQL 不寻常的名字导致一些读者停下来尝试拼读它,特别是那些把SQL拼读为"sequel"的人。PostgreSQL 开发者把它拼读为 "post-gress-Q-L"。(Audio sample, 5.6k MP3)。它也经常被简略念为 "postgres"。
PostgreSQL 使用名为 PostgreSQL 的许可证,该许可证与 BSD/MIT 类似。
为什么选择Postgres
1、完善的DB功能
SQL标准支持较好
支持PL/pgSQL等多种过程语言
支持视图、分析函数、CTE等高级特性
2、OLAP性能超过MySQL
复杂SQL性能高10倍+
基于cost的SQL优化,调优手段更多
部分索引,函数索引,cluster索引
3、插件式的功能扩展
已有访问Mysql、Redis、文本等外部数据源插件
4、TB级数据库备份与恢复(基于zfs快照技术)
速度快,对上TB的数据做快照耗时小于1秒
占用空间小,新生成的快照几乎不占空间
支持快照增量备份,支持快速rollback
目前腾讯、阿里等大厂均提供了基于Postgres的云数据仓库,自身的分析服务数仓也基于Postgres搭建。对于企业用户来说,如果基于Postgres来作为数仓载体,现有的Oracle、Mysql等关系型数据库运维人员即可胜任。
Kettle
Kettle 是一款国外开源的 ETL 工具,纯 Java 编写,绿色无需安装,数据抽取高效稳定(数据迁移工具)。Kettle 中有两种脚本文件,transformation 和 job,transformation 完成针对数据的基础转换,job 则完成整个工作流的控制。
Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。
Kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。
Kettle常用功能
KETTLE常用在处理关系型数据库(RDBMS):mysql、oracle、gbase、国产达梦等各种数据库,也可以处理非关系型数据库:elasticsearch、hdfs等数据存储。主要是对数据进行处理操作,个人常用的功能如下:
(1)全量数据迁移:
就是将某个或多个表或库中的数据进行迁移,可以跨库,也可以同库迁移。速度比较快,性能稳定。
(2)增量数据迁移:
就是对某个表中的数据按照一定的设计思路,根据int的自增主键或datetime的时间戳实现增量数据迁移,并且可以统计增量数据量。速度比较快,性能稳定。
(3)解析xml文件(单个、批量):
可以通过读取本地或远程服务器中的单个、批量xml文件进行解析,高效率的实现xml数据解析入库。
(4)解析JSON数据:
可以零代码通过jsonPath快速完成JSON数据解析,高效率实现JSON解析数据入库。
(5)数据关联比对:
可以将多个数据库根据一定的业务字段进行关联,尤其是针对单表百万、千万级别上的数据比对,普通sql实现困难,可以通过KETTLE方便高效的完成数据关联比对功能。
(6)数据清洗转换:
可以通过KETTLE中设计一定的判断流程,在数据流中逐条对数据进行业务判断和过滤,实现数据清洗转换的功能
Superset
Superset 是 Airbnb (知名在线房屋短租公司)开源的数据探查与可视化平台(曾用名 Panoramix、Caravel ),该工具在可视化、易用性和交互性上非常有特色,用户可以轻松对数据进行可视化分析。Superset 也是一款企业级商业智能 Web 应用程序。
Superset 已捐赠给 Apache 软件基金会,目前处于孵化阶段。
核心功能:
快速创建数据可视化互动仪表盘
丰富的可视化图表模板,灵活可扩展
细粒度高可扩展性的安全访问模型,支持主要的认证供应商(数据库、OpenID、LDAP、OAuth 等)
简洁的语义层,可以控制数据资源在 UI 的展现方式
与 Druid 深度集成,可以快速解析大规模数据集
更多专业数据科学,请扫码关注:全栈数据