在典型的大数据解决方案里,除了以ODPS这样的离线分布式计算引擎为核心,周边还需要日志收集、开发IDE、工作流调度、数据质量监控、BI报表等等一系列配套机制。因此ODPS用户往往还会对SLS和DPC等服务感兴趣。
先说SLS(简单日志服务),这是阿里云提供的针对日志收集、存储、查询和分析的云服务。用户只需简单地配置日志产生的位置和格式等信息就能实时查询海量日志。用户也可以把SLS日志归档保存到ODPS中做更多数据分析。
简单来说,SLS提供一个名为Logtail的客户端,把它部署到需要监控的机器上(阿里云云主机默认安装),配置好以后,Logtail会定时把本地的日志文件(例如Web Sever的access_log或DB的bin-log)上传到后端的RESTful API,然后用户就可以在后台利用SLS对日志进行简单的实时过滤和处理。CNZZ就基于SLS进行全网日志数据的收集。更多SLS细节请参考官方主页。
SLS在ODPS里面有一个project名叫sls_log_archive,用户打开推送功能后,SLS会定时把数据推到特定名字的表里(Project+Category),用户可以再执行一个简单的SQL把数据拖到自己的Project里。可以参考这篇用户文档。然后用户就可以写SQL把数据导入自己的Project,下面是个简单的SQL例子,第一句是在自己project创建一个表,第二句是创建相应时间段的partition,第三句是导入数据
CREATE TABLE mylog LIKE sls_log_archive.XXXXXXX; ALTER TABLE mylog ADD PARTITION(__partition_time__=‘2014_06_24_12_00′); INSERT OVERWRITE TABLE mylog PARTITION (__partition_time__=‘2014_06_24_12_00′)? |
日志数据导入ODPS,就可以利用它的强大能力深入分析SLS收集上来的日志。这里有一篇BLOG很值得推荐。
接下来介绍DPC,它是基于ODPS的DW/BI的工具解决方案。DPC提供全链路的易于上手的数据处理工具,主要提供如下四种能力:
1.把各种数据源的数据(例如RDS)拖拽到ODPS
2.提供IDE开发界面和SQL代码管理能力
3.任务调度功能
4.通过拖拽和可视化的方式进行数据分析,并通过BI报表进行数据可视化展现。
有了DPC,可以大大降低ODPS用户在数据仓库和商业智能项目上的实施成本,加快实施进度。天弘基金、高德地图的数据团队基于DPC完成他们的大数据处理需求。 更多DPC细节可以参考官方主页
有了ODPS+SLS+DPC小伙伴,就可以支持典型的大数据工作场景了:日志收集、数据开发和定时生产。还有更多ODPS小伙伴正在开放的路上,例如流计算和实时查询,请大家关注阿里云网站。