现在的位置: 首页 > 自动控制 > 工业·编程 > 正文

马如悦:不写代码的架构师不是好架构师

2016-01-02 21:42 工业·编程 ⁄ 共 1851字 ⁄ 字号 暂无评论

马如悦,百度大数据部主任架构师,负责百度分析型数据库方向和在线数据服务架构方向。 在大会召开前夕,笔者有幸采访到了马如悦,请他分享Palo在百度内部的应用实践。在他看来,不写代码的架构师都不是好的架构师,没有主导实际项目的架构师也不是好的架构师。

值得一提的是,在2015年11月19-21日召开的SDCC 2015(软件开发者大会)上,马如悦将在新一代数据库调优实战论坛中带来《Palo分析型数据库在百度内的应用实践》的主题分享,欢迎前来现场聆听【点击这里抢票】。

CSDN:首先请简单介绍下自己、公司以及目前所负责的领域。

马如悦:我当前在百度大数据部,负责百度在线数据服务架构团队,我们团队主要为公司提供在线高性能数据访问服务,包括3个产品方向,一个是SimpleDB方向,主要存储KV类型的数据,满足高并发的一些在线查询需求,很多数据通过离线批量和实时导入;另一个是SqlDB方向,主要作为结构化的数据分析数据库,内部产品名称为Palo;另一个是SearchDB方向,主要作为对非结构化的数据分析数据库。

CSDN:目前百度主要使用的数据库有哪些?他们各自的优势是什么?

马如悦:OLTP的主要是分布式MySQL、NoSQL,百度有自己研发的MolaDB,OLAP的主要使用Palo。

CSDN:百度自主研发的分析型数据库Palo主要承担着怎样的角色?它的主要特性是什么?其开发架构是怎样的?适合什么样的开发场景?

马如悦:Palo是一套面向大规模数据分析的并行数据库系统。主要目标是支撑稳定的、在线的、交互式的数据报表(Reporting)和数据多维分析(OLAP)服务。Palo 的一个很大的特色是:将会满足报表和OLAP分析这两类不同的需求。

Palo在整个分析体系中所承担的是数据库的角色,只是这个数据库是并行的、面向分析的数据库系统。然后在这个数据库系统上,通过支撑现有的(BIEE、Pentaho等)或者百度自己研发的BI应用套件来提供全套的报表和分析应用。

Palo单一系统,即可解决Impala+HDFS,Sparksql+HDFS,Impala+HBase,传统分析数据库Greenplum等,Google dremel、 Google mesa, 以及当前最新的Impala+Kudu。用户可以使用一个Palo,上面的所有需求都可满足,这就是Palo最大的不同。Palo的核心特点就是通用性要好一些,部署简单易用。

CSDN:在开发Palo期间没有遇到过困难点?又是如何克服的?你们目前的开发团队有多少人?

马如悦:Palo开发期间遇到的最大困难就是周边很多人不认可这个方向,认为使用Impala + HDFS/HBase,或者Sparksql就能解决问题。但是我们还是坚信这些开源的方案不是特别理想,比如部署复杂,依赖过多,性能不高等等,所以最后我们还是相信了自己内心,没有使用蹩脚的开源技术。事后,从Cloudera公司当前开始研发Kudu,可以看到,我们的当初选择领先了社区2到3年。

我们的团队当前有7,8人投入Palo开发。

CSDN:你目前还会关注哪些新技术?

马如悦:目前对Julia语言痴迷,具有Python的简单,有C语言一般的执行速度,有R语言一样的数据分析库支持,也满足很多对函数编程人的幻想,我坚信Julia在5年内势必成为数据分析事实上的语言。Julia和Spark的结合是我当前正在努力做得一些事情,我一直认为Spark使用Scala是一大错误,期待有一天我实现一个使用Julia编写的Spark。当前的分布式计算技术还是太复杂了,希望未来能简化一些。

CSDN:你认为一名优秀的技术管理者应该具备怎样的素质?

马如悦:优秀的技术管理者要充当两个角色,一个是方向引领者,一个是好的后勤。很多人事实喜欢冲到一线指指点点,那样的话,我认为你是一个好的程序员,但不是一个好的技术管理者。引领好方向,制定好目标,放手让聪明人的人去公关,遇到问题,要给其出谋划策。

CSDN:在你看来技术人如何成长为一名优秀的架构师?

马如悦:记住一点,不写代码的架构师都不是好的架构师,没有主导实际项目的架构师也不是好的架构师;还有一点,在外演讲多于在公司解决问题的,那根本不是架构师,那是布道师。

CSDN: 在本次SDCC 2015上想分享的话题是?

马如悦:Palo的实践体会。

CSDN:你最期待在本次SDCC 2015上听到哪些内容?

马如悦:其它公司都是怎么解决分析型数据库这些问题的。主要想听听大家踩过的坑,以及当前的痛点。

给我留言

留言无头像?