本文正在参加“最佳上云实践”评选,来给我们投票吧:(编号6)
我们背靠北京大学,业务范围覆盖印刷、传媒、大数据、出版、字库、数字教育等领域,致力于为客户提供先进的信息处理技术、产品、解决方案及增值服务,使最终用户能随时随地通过各种终端设备体会移动互联网时代的信息化生活。自2006年以来,我们一直专注于大数据产品的研发与应用,并取得了大数据相关专利上百余项,拥有强大的技术研发能力。多年来,我们秉承着“技术为本、应用为先”的经营理念,为各行各业的用户提供先进的大数据整体解决方案,有力地提升了政府管理能力、机构决策水平以及企业市场竞争力。截至目前,我们大数据整体解决方案已服务国内外用户超过200家。
智胜企业互联网大数据系统实现对互联网信息进行精准提炼,以事实为依据、用数据说话,帮助企业倾听互联网声音,想(分析)消费者之所想、做(决策支持)企业之所需,以品牌为核心,实现行业趋势、负面舆情感知,危机公关监测和商业情报挖掘分析。
从自建平台到混合云
我们于2003年率先进行信息检索与文本挖掘等基础技术的研究。相继推出互联网舆情监控系统、微博监测分析系统,形成全面成熟的舆情整体解决方案,完成多个大型项目的建设,持续领跑舆情行业。并且在2011年率先尝试以多租户方式(SaaS)服务于不同行业。致力于云计算、大数据技术的研究与应用,完成自有大数据服务中心建设(机房内服务器数量达300台之多),搭建了自己的Hadoop、Spark、Storm等对应的大数据处理平台;在数据库方面,采用MySQL、MongoDB等主流数据库,研制并推出了互联网大数据信息服务平台,为不同行业用户提供大数据应用解决方案。
在2015年,接触阿里云之后,逐渐采用阿里云的产品,从ECS、RDS、OTS到MaxCompute等等,目前我们形成了混合云的模式,既我们的大数据服务中心数据推送+阿里云系统应用部署模式。
云端迁移之路
智胜企业互联网大数据系统中的前端程序基于java语言编写,可直接部署在阿里云的ECS中。此外,前端程序使用的Redis和MySQL服务,可直接替换为阿里云的云数据库Redis版和RDS版,并且不需要定制的客户端连接程序。因此,我们的前端程序直接部署在了阿里云的ECS中,未进行端服务连接方式修改。
由于阿里云RDS兼容MySQL客户端,结构化数据在迁移中未遇到任何困难,非常平滑的完成了迁移。对于非结构化数据,我们将其统一进行格式化之后,存储于阿里云的TableStore实例中。基于TablesStore存取方式,以及我们数据接收、上载程序定义的数据存取接口,快速完成了数据读取操作的过度。
通过阿里云OpenSearch同TableStore配合使用,可直接对存储在TableStore中的海量数据建立全文索引,方便对海量的数据进行搜索操作。
我们基于MapReduce编程模型的机器学习程序,直接部署在了阿里云的MaxCompute大数据开发套件和机器学习平台上,完成舆情数据自然语言处理、聚类、分类等操作。
架构分析
下面是智胜企业互联网大数据系统架构图:
通过智胜企业互联网大数据系统中,将企业用户配置的关键词、微博主等信息,同步到我们的数据中心以及阿里云的公众趋势分析系统后,我们的数据中心会持续向相关的数据推送到指定的阿里云服务器中,并且我们还会定时从公众趋势分析系统中获取数据,完成相关数据的原始积累。原始数据转换为数据上载程序要求的格式,从而开始进行数据上载操作。
数据上载主要任务是,完成数据的预处理过程,比如使用机器学习平台完成自然语言处理、文本聚类、分类等操作,以及数据TableStore保存,历史数据保留指定天数后即删除。
对于热点事件的挖掘、相关事件的发现等功能,由机器学习模块完成。通过对于数据进行自然语言处理、分类、聚类以及情感度分析,可及时发现热点事件以及相关数据,并对此事件进行持续跟踪和数据挖掘。
智胜企业互联网大数据系统的前端模块,通过调用TableStore服务和OpenSearch服务,完成大数据的查询功能。通过MySQL数据库完成业务数据的操作功能,最终以Web交互页面的形式展示给用户,供用户使用。Redis主要完成缓存功能。
微博、微博用户相关的分析功能,通过定时调取公众趋势分析系统的接口,完成数据的获取并存储到MySQL数据库中,供智胜企业互联网大数据系统的前端模块使用。
智胜企业互联网大数据系统目前已接入阿里云市场,我们作为阿里云市场的isv,可通过阿里云市场对用户购买我们产品的付费行为做出响应,以账号的形式供用户使用,而阿里云市场则为我们提供了交易管理界面,方便后续的用户运营等。
目前数据上载每小时处理数据量约1GB左右,TableStore平均写延时在15ms左右,读延时在5ms左右,可以满足需求。MySQL数据库容量使用保持在20GB左右。
目前业务中大量的计算操作集中在数据的统计方面。在目前数据量下,机器学习模块利用已有的数据模型以及算法,可以满足每小时约1GB左右数据量的处理工作。在目前数量下,OpenSearch响应时间约为100ms左右,通过定期将数据导入MySQL进行更加细致的统计操作,以统计结果的形式保存,减少重复检索行为和压力。此外通过对SQL脚本的持续改进,使得系统响应延时基本保持在一个可用范围内,并随时可通过服务器数量的横向扩展,应对访问容量的增加。
上云前后
单从性能上讲一方面阿里云服务器安全和易维护,并且由于基于虚拟化技术和阿里强大的云服务器硬件资源,云主机的磁盘IO性能相比我们自己的大数据中心机房更有优势,能够应付互联网海量数据采集与分析环节频繁的随机读写和连续读写,满足上层数据全文检索和大数据分析等应用。另一方面云服务器硬件配置升级方便,性价比高,另外阿里云BGP多线技术和分发缓存技术,对于互联网大数据SAAS应用,在成本方面优势非常明显,灵活的收费方式可以节约很多成本,同时也为不同细分用户市场提供更加灵活价格区间及应用功能。
最后
由于阿里云操作的便捷性,在上云过程中并未遇到太多的问题,主要时间花费在了各项服务的初始化以及各个系统的部署、调试上。此外,依靠阿里云提供的性能监测、报警功能,方便了运维人员及时发现系统异常,并及时采取措施。