论文部分内容阅读
经过多年的信息化建设,中石油四川成品油销售公司(下称四川销售公司)信息系统建设涵盖了公司经营管理各个层面,为数据仓库的建设提供了大量的数据源。
2008年,四川销售公司完成了ERP系统在全公司的全面推广,不仅实现了销售“一体化”管控,而且实现了财务业务无缝集成及物流、资金流、信息流的三流合一。2009年加油站管理系统在四川销售公司1400余座加油站部署实施,对加油站的采购、销售、结算、库存、客户、加油卡等进行全面的专业性管理,控制了零售业务的每一个环节,优化业务流程,提高运行效率和管理水平。2011年二次配送系统和油库系统在全公司推广运用,实现对油品品种、运输路径、运输车辆、油站库存、配送时间的统筹安排和优化,并对配送过程进行跟踪与监控,提高了配送效率和管理水平。2012年以ERP为核心的五大信息系统全面集成,油库、加油站、二次配送和ERP系统实现了信息数据自动流转,减少人为干预,提高了数据的准确性。2013年,销售应用集成系统将在四川销售公司试点运用,实现与各销售信息系统管理者视图的集成。
四川销售公司的各个信息系统几乎覆盖了公司的各项经营和管理的方方面面,这些业务操作型信息系统的上马和推广运用,不仅实现公司各个层面的管控信息化,而且为数据仓库建设提供了大量的历史数据源。
建设省级数据仓库的意义
四川销售公司建设省级公司的数据仓库是对中石油总部数据仓库数据支持功能的补充和完善,有利于提高信息系统数据利用效率,弥补总部数据仓库无法满足四川销售公司对精细化管理等方面信息数据挖掘利用需求的缺陷。
总部数据仓库“脏数据”过多。由于总部数据仓库涉及面广,涵盖了整个中国石油的勘探与生产、天然气与管道、炼油与销售、化工与销售和其他部分,因而数据非常庞大。假设仅仅以全国32家销售公司的数据在一起建立一个数据仓库,那么对于四川销售公司来说,不仅其他板块的数据甚至其他销售公司的大量数据基本上为“脏数据”(按32家来计算,96.8%的数据为脏数据)。大量的“脏数据”不仅牺牲了分析的效率,而且降低了分析质量。
总部数据仓库的数据粒度级过粗,无法满足四川销售公司个性化分析需求。全国中石油旗下加油站每日产生的可以作为客户分析价值高的卡交易记录,每日总共可达13亿条,平均每月记录过亿,所以在总部级数据上无法提供卡客户低粒度级的分析。在交易明细记录上,每年的记录数预计高达53亿条以上,在上亿条记录的数据库中做任何统计计算几乎都是要命的事,所以要总部数据仓库提供“购物篮分析”之类细粒度级的数据挖掘功能是不可行的。
总部级的数据仓库的主要服务对象不是销售公司一般管理者(特别是二级公司级以下的管理者)。总部级数据仓库对四川销售公司来说,还达不到提升管理和精细化管理的要求。2013年中石油总部推广运用的销售应用集成系统主要运用对象是销售公司、地区公司和地市公司的领导,提供日常办公、业务数据查询分析、业务决策、舆情监控和应急指挥等功能;而对于需要大量数据进行分析、挖掘的一般管理人员缺乏分析工具和支持。
数据仓库设计思路
建立四川销售公司的数据仓库不仅是总部数据仓库数据支持功能的补充和完善,而且是四川销售公司整合自行开发各类辅助管理信息系统,新增数据挖据分析、商务智能等需求的核心和基石。近年来,四川销售公司为了满足自身管理提升需要,陆续开发了加油站辅助管理系统、油库辅助管理系统、商品管理辅助管理系统、非油辅助管理系统等诸多管理系统。然而这些系统都相互孤立,信息数据没有集成共享,大部分数据靠人工干预,不仅大大增加了工作量,而且各类信息数据的完整性、正确性和及时性大打折扣,信息数据共享和挖掘功能无法真正发挥。“顶层设计”的总部数据仓库的数据主要来源于五大系统,虽然确保了不同销售企业执行同一管理标准,为系统顺利集成、统一应用、科学评价奠定了基础,但是无法满足因地区和管理差异而新增的个性需求。特别是涉及到与四川本地相关的数据上,总部数据仓库几乎是空白。例如分析四川销售公司及其各个二级的销售总量、增幅与四川省及其对应地市GDP的总量、增速、能耗的关系时,总部级数据仓库是无法提供的。如果四川销售公司有自己的数据仓库,就可以把四川省及其对应地市GDP的相关数据作为外部数据源进行采集分析。再如需要分析路网建设、竞争对手网点布局对公司自身销售的影响时,必须要有独立的数据仓库,才能快速地得到量化的、科学的分析结果。有了数据仓库,商务智能才成为可能。没有数据仓库,商务智能只能是一个理论。
综合上述多方考虑,结合中国石油四川内江销售公司的研究成果、业务经营管理现状和前期需求调研分析,四川销售公司的主题需求可分为油品销售分析、非油品销售分析、卡客户分析、商品管理分析、加油站配送分析、财务分析、人力资源分析和市场分析八个主题。根据四川销售公司信息系统运用状况,数据源将涉及内部信息系统的有ERP、HOS、FMIS、油库、二配、加油站管理等,其中市场分析涉及外部数据的采集。
数据仓库系统接口设计
将数据放置在数据仓库中既是建设的难点,也是起点。一般数据集成和转换的过程需要花费约整个数据仓库建设80%的开发资源。由于ERP、HOS、油库、FMIS等操作型系统是总部统一开发设计,接口的最佳方式是总部能够提供对应的数据接口。但是由于“顶层设计”需要,总部没有开放相关数据接口。如何建立ERP等系统和数据仓库之间的接口,如何构思编写ETL软件实现自动将ERP等操作系统历史数据到数据仓库中,是四川销售公司构建自己数据仓库的重点和难点,这也是数据仓库攻关的难点。
通过对当前使用的ERP等系统的调研和分析发现,对于所有系统的数据源可以分为三类。一类是有数据库访问方法的系统(例如加油站管理系统的站级系统);第二类是没有数据库访问方法的系统,但有统一的数据导出方式的系统(例如ERP、HOS、FMIS等);第三类是既没有数据库的数据源,也没有统一的数据导出方式的系统(例如外部系统数据)。第一类由于能直接访问数据库,ETL设计的重点是数据的清洗和集成;第二类有统一的数据导出方式,ETL设计的重点是数据的采集、纠错和集成;第三类只能依靠设计模版,人工统一导入相关数据。因此对不同系统数据采集接口需采用不同的方法。 数据的集成到清洗
数据集成、转换和清洗数据是提高数据集成和提高利用效率的必要步骤。数据在从操作型环境向数据仓库环境的传送过程中所经历的转换非常复杂,一是DBMS的变化,二是操作系统的变化,三是硬件体系结构的变化,四是语义的变化和编码的变化等,所以必然存在转化和清洗。在这个过程中首先要将数据集成,当数据进入仓库时,要对各个应用的不同值进行正确的译码,重新编码为合适的值;其次必须建立各个不同源字段到数据仓库字段的映射;然后还需将各个系统不同技术存储的数据必须转换到同一种技术下存储。
在数据的转换与再清洗过程中,可以将数据以一种称为“时间间隔”的方式装载进入数据仓库,操作型环境新更新的数据可以在操作型环境中停留达24小时,然后才转移到数据仓库。例如在加油站管理系统得TILLITEM(交易明细记录表)含有大量的控制类数据,我们取数主要取对应的交易序号、营业日期、油品、价格、数量、金额、折扣、支付方式、卡号、枪号、罐号、起泵、止泵等数据。
保证数据采集准确性
数据的正确性验证是提高数据仓库数据准确有效的必要措施。提高访问现有系统数据采集正确主要有五种方法:一是扫描在操作型环境中那些被打上时间戳的数据(例如采集ERP等系统的销售订单时以创建时间为准,因为创建时间是系统自动生成的时间,不能任意更改);二是只扫描增量文件(例如采集加油站管理系统的站级数据);三是对取数机制进行了程序自动纠错,对没有获取完全的数据自动重新获取;四是对后台数据载入清洗程序进行修正,增加容错机制,对数据临时变化等问题进行了日志记录;五是将有对应关系的数据采集后进行对比(例如HOS的油品销售日报与ERP系统的纯枪销售订单进行对比),这种方法相对麻烦、复杂。其纠错验证在导入数据仓库前的临时数据库里,一旦验证正确后,方才导入到数据仓库。
此外,外部数据的采集对于数据仓库的建设格外重要,因为可以在一定时间范围内将外部数据与内部数据进行比较,以便给管理者提供一个独特的视角。例如天气变化给公司销量的影响是多少,节假日对公司销量的影响是多少,各个二级公司销量与GDP总量的关系,各个二级公司销售增量与GDP增量的关系?对此,有必要针对主题需求,增加成品油价格行情,四川(各地区)天气记录,四川(各地区)GDP数据(总量、增幅、能耗等)等外部数据的录入。
细化数据粒度
数据的粒度与分区是进行数据仓库设计决策的两个最重要方面。保存所有细节数据是错误的,一是存储和处理的开销可能是个天价;二是大量数据是有效分析技术的一个障碍;三是前面做的细节分析不可复用。所以对于四川销售公司来说,采用双重粒度是非常有意义的。
根据测算,全四川省站级系统的交易明细记录表一年的总记录数超过亿条,卡交易明细记录表一年的总记录数也有千万以上。所以,必须要根据DSS(决策分析)主题需求,进行双重粒度设计和分区。例如可以对卡交易记录进行概要记录统计(例如开卡时间、总消费额、消费次数、最大消费额、最小消费额、消费品种、消费区域、最近消费时间),便于以后的卡客户的相关分析,而对交易明细进行海量存储;同时可以对数据进行分区设计,比如按照年度来分区。这样大大提高了数据近期数据的访问速度。
由于非油业务开展还处于初级阶段,预计一年的记录数据估计在几百万条,可以保存做类似“购物篮分析”的数据挖掘运用。所以需要对卡交易明细和非油交易明细进行不同粒度的设计,以尽可能低的数据粒度来满足四川销售公司DSS分析。
数据集市设计与构想
数据集市主要是针对数据仓库的主题进行设计。例如在数据仓库体系结构中将四川销售公司的主题需求分为油品销售分析、非油品销售分析、卡客户分析、商品管理分析、加油站配送分析、财务分析、人力资源分析和市场分析八个主题。其中每个主题对应一个数据集市,每个数据集市的数据来源于数据仓库。这样四川销售公司的辅助管理系统都可以从数据仓库中来获取数据,而且也可以根据后期需求不断调整。例如每次调价对四川销售公司销量的影响(上调、下调),地震对四川销售公司的销量的影响分析,卡客户购买非油货品的比例,卡客户购买非油货品中哪种商品最多,卸油时停止加油对公司的销量有多大影响,某个加油站从开业以来每天的销售数量的分析趋势图,某张加油卡在四川销售公司所有加油站的消费情况,新的激励机制出台后对公司销量的影响有多大等需求。只要对数据仓库设计时不断地完善与修正,数据做到准确、及时、完整,实现上诉需求科学量化的分析是完全可以的。 (作者单位:张中淋 中国石油内江销售公司;李亮、陈涛 中国石油四川销售公司)
2008年,四川销售公司完成了ERP系统在全公司的全面推广,不仅实现了销售“一体化”管控,而且实现了财务业务无缝集成及物流、资金流、信息流的三流合一。2009年加油站管理系统在四川销售公司1400余座加油站部署实施,对加油站的采购、销售、结算、库存、客户、加油卡等进行全面的专业性管理,控制了零售业务的每一个环节,优化业务流程,提高运行效率和管理水平。2011年二次配送系统和油库系统在全公司推广运用,实现对油品品种、运输路径、运输车辆、油站库存、配送时间的统筹安排和优化,并对配送过程进行跟踪与监控,提高了配送效率和管理水平。2012年以ERP为核心的五大信息系统全面集成,油库、加油站、二次配送和ERP系统实现了信息数据自动流转,减少人为干预,提高了数据的准确性。2013年,销售应用集成系统将在四川销售公司试点运用,实现与各销售信息系统管理者视图的集成。
四川销售公司的各个信息系统几乎覆盖了公司的各项经营和管理的方方面面,这些业务操作型信息系统的上马和推广运用,不仅实现公司各个层面的管控信息化,而且为数据仓库建设提供了大量的历史数据源。
建设省级数据仓库的意义
四川销售公司建设省级公司的数据仓库是对中石油总部数据仓库数据支持功能的补充和完善,有利于提高信息系统数据利用效率,弥补总部数据仓库无法满足四川销售公司对精细化管理等方面信息数据挖掘利用需求的缺陷。
总部数据仓库“脏数据”过多。由于总部数据仓库涉及面广,涵盖了整个中国石油的勘探与生产、天然气与管道、炼油与销售、化工与销售和其他部分,因而数据非常庞大。假设仅仅以全国32家销售公司的数据在一起建立一个数据仓库,那么对于四川销售公司来说,不仅其他板块的数据甚至其他销售公司的大量数据基本上为“脏数据”(按32家来计算,96.8%的数据为脏数据)。大量的“脏数据”不仅牺牲了分析的效率,而且降低了分析质量。
总部数据仓库的数据粒度级过粗,无法满足四川销售公司个性化分析需求。全国中石油旗下加油站每日产生的可以作为客户分析价值高的卡交易记录,每日总共可达13亿条,平均每月记录过亿,所以在总部级数据上无法提供卡客户低粒度级的分析。在交易明细记录上,每年的记录数预计高达53亿条以上,在上亿条记录的数据库中做任何统计计算几乎都是要命的事,所以要总部数据仓库提供“购物篮分析”之类细粒度级的数据挖掘功能是不可行的。
总部级的数据仓库的主要服务对象不是销售公司一般管理者(特别是二级公司级以下的管理者)。总部级数据仓库对四川销售公司来说,还达不到提升管理和精细化管理的要求。2013年中石油总部推广运用的销售应用集成系统主要运用对象是销售公司、地区公司和地市公司的领导,提供日常办公、业务数据查询分析、业务决策、舆情监控和应急指挥等功能;而对于需要大量数据进行分析、挖掘的一般管理人员缺乏分析工具和支持。
数据仓库设计思路
建立四川销售公司的数据仓库不仅是总部数据仓库数据支持功能的补充和完善,而且是四川销售公司整合自行开发各类辅助管理信息系统,新增数据挖据分析、商务智能等需求的核心和基石。近年来,四川销售公司为了满足自身管理提升需要,陆续开发了加油站辅助管理系统、油库辅助管理系统、商品管理辅助管理系统、非油辅助管理系统等诸多管理系统。然而这些系统都相互孤立,信息数据没有集成共享,大部分数据靠人工干预,不仅大大增加了工作量,而且各类信息数据的完整性、正确性和及时性大打折扣,信息数据共享和挖掘功能无法真正发挥。“顶层设计”的总部数据仓库的数据主要来源于五大系统,虽然确保了不同销售企业执行同一管理标准,为系统顺利集成、统一应用、科学评价奠定了基础,但是无法满足因地区和管理差异而新增的个性需求。特别是涉及到与四川本地相关的数据上,总部数据仓库几乎是空白。例如分析四川销售公司及其各个二级的销售总量、增幅与四川省及其对应地市GDP的总量、增速、能耗的关系时,总部级数据仓库是无法提供的。如果四川销售公司有自己的数据仓库,就可以把四川省及其对应地市GDP的相关数据作为外部数据源进行采集分析。再如需要分析路网建设、竞争对手网点布局对公司自身销售的影响时,必须要有独立的数据仓库,才能快速地得到量化的、科学的分析结果。有了数据仓库,商务智能才成为可能。没有数据仓库,商务智能只能是一个理论。
综合上述多方考虑,结合中国石油四川内江销售公司的研究成果、业务经营管理现状和前期需求调研分析,四川销售公司的主题需求可分为油品销售分析、非油品销售分析、卡客户分析、商品管理分析、加油站配送分析、财务分析、人力资源分析和市场分析八个主题。根据四川销售公司信息系统运用状况,数据源将涉及内部信息系统的有ERP、HOS、FMIS、油库、二配、加油站管理等,其中市场分析涉及外部数据的采集。
数据仓库系统接口设计
将数据放置在数据仓库中既是建设的难点,也是起点。一般数据集成和转换的过程需要花费约整个数据仓库建设80%的开发资源。由于ERP、HOS、油库、FMIS等操作型系统是总部统一开发设计,接口的最佳方式是总部能够提供对应的数据接口。但是由于“顶层设计”需要,总部没有开放相关数据接口。如何建立ERP等系统和数据仓库之间的接口,如何构思编写ETL软件实现自动将ERP等操作系统历史数据到数据仓库中,是四川销售公司构建自己数据仓库的重点和难点,这也是数据仓库攻关的难点。
通过对当前使用的ERP等系统的调研和分析发现,对于所有系统的数据源可以分为三类。一类是有数据库访问方法的系统(例如加油站管理系统的站级系统);第二类是没有数据库访问方法的系统,但有统一的数据导出方式的系统(例如ERP、HOS、FMIS等);第三类是既没有数据库的数据源,也没有统一的数据导出方式的系统(例如外部系统数据)。第一类由于能直接访问数据库,ETL设计的重点是数据的清洗和集成;第二类有统一的数据导出方式,ETL设计的重点是数据的采集、纠错和集成;第三类只能依靠设计模版,人工统一导入相关数据。因此对不同系统数据采集接口需采用不同的方法。 数据的集成到清洗
数据集成、转换和清洗数据是提高数据集成和提高利用效率的必要步骤。数据在从操作型环境向数据仓库环境的传送过程中所经历的转换非常复杂,一是DBMS的变化,二是操作系统的变化,三是硬件体系结构的变化,四是语义的变化和编码的变化等,所以必然存在转化和清洗。在这个过程中首先要将数据集成,当数据进入仓库时,要对各个应用的不同值进行正确的译码,重新编码为合适的值;其次必须建立各个不同源字段到数据仓库字段的映射;然后还需将各个系统不同技术存储的数据必须转换到同一种技术下存储。
在数据的转换与再清洗过程中,可以将数据以一种称为“时间间隔”的方式装载进入数据仓库,操作型环境新更新的数据可以在操作型环境中停留达24小时,然后才转移到数据仓库。例如在加油站管理系统得TILLITEM(交易明细记录表)含有大量的控制类数据,我们取数主要取对应的交易序号、营业日期、油品、价格、数量、金额、折扣、支付方式、卡号、枪号、罐号、起泵、止泵等数据。
保证数据采集准确性
数据的正确性验证是提高数据仓库数据准确有效的必要措施。提高访问现有系统数据采集正确主要有五种方法:一是扫描在操作型环境中那些被打上时间戳的数据(例如采集ERP等系统的销售订单时以创建时间为准,因为创建时间是系统自动生成的时间,不能任意更改);二是只扫描增量文件(例如采集加油站管理系统的站级数据);三是对取数机制进行了程序自动纠错,对没有获取完全的数据自动重新获取;四是对后台数据载入清洗程序进行修正,增加容错机制,对数据临时变化等问题进行了日志记录;五是将有对应关系的数据采集后进行对比(例如HOS的油品销售日报与ERP系统的纯枪销售订单进行对比),这种方法相对麻烦、复杂。其纠错验证在导入数据仓库前的临时数据库里,一旦验证正确后,方才导入到数据仓库。
此外,外部数据的采集对于数据仓库的建设格外重要,因为可以在一定时间范围内将外部数据与内部数据进行比较,以便给管理者提供一个独特的视角。例如天气变化给公司销量的影响是多少,节假日对公司销量的影响是多少,各个二级公司销量与GDP总量的关系,各个二级公司销售增量与GDP增量的关系?对此,有必要针对主题需求,增加成品油价格行情,四川(各地区)天气记录,四川(各地区)GDP数据(总量、增幅、能耗等)等外部数据的录入。
细化数据粒度
数据的粒度与分区是进行数据仓库设计决策的两个最重要方面。保存所有细节数据是错误的,一是存储和处理的开销可能是个天价;二是大量数据是有效分析技术的一个障碍;三是前面做的细节分析不可复用。所以对于四川销售公司来说,采用双重粒度是非常有意义的。
根据测算,全四川省站级系统的交易明细记录表一年的总记录数超过亿条,卡交易明细记录表一年的总记录数也有千万以上。所以,必须要根据DSS(决策分析)主题需求,进行双重粒度设计和分区。例如可以对卡交易记录进行概要记录统计(例如开卡时间、总消费额、消费次数、最大消费额、最小消费额、消费品种、消费区域、最近消费时间),便于以后的卡客户的相关分析,而对交易明细进行海量存储;同时可以对数据进行分区设计,比如按照年度来分区。这样大大提高了数据近期数据的访问速度。
由于非油业务开展还处于初级阶段,预计一年的记录数据估计在几百万条,可以保存做类似“购物篮分析”的数据挖掘运用。所以需要对卡交易明细和非油交易明细进行不同粒度的设计,以尽可能低的数据粒度来满足四川销售公司DSS分析。
数据集市设计与构想
数据集市主要是针对数据仓库的主题进行设计。例如在数据仓库体系结构中将四川销售公司的主题需求分为油品销售分析、非油品销售分析、卡客户分析、商品管理分析、加油站配送分析、财务分析、人力资源分析和市场分析八个主题。其中每个主题对应一个数据集市,每个数据集市的数据来源于数据仓库。这样四川销售公司的辅助管理系统都可以从数据仓库中来获取数据,而且也可以根据后期需求不断调整。例如每次调价对四川销售公司销量的影响(上调、下调),地震对四川销售公司的销量的影响分析,卡客户购买非油货品的比例,卡客户购买非油货品中哪种商品最多,卸油时停止加油对公司的销量有多大影响,某个加油站从开业以来每天的销售数量的分析趋势图,某张加油卡在四川销售公司所有加油站的消费情况,新的激励机制出台后对公司销量的影响有多大等需求。只要对数据仓库设计时不断地完善与修正,数据做到准确、及时、完整,实现上诉需求科学量化的分析是完全可以的。 (作者单位:张中淋 中国石油内江销售公司;李亮、陈涛 中国石油四川销售公司)