抽取数据模型
概要
抽取数据模型其实是一个简单的ETL的过程。 E指的是(extract)、T指的是转换(transform)、L指的是加载(load)。
抽取的定义
抽取是将数据从一个表复制到另外一个表的过程。有数的抽取是将用户数据库的表拷贝到有数mpp的过程(mpp可以把他看成分布式的数据库).因此抽取是一个数据库隔离的过程。
如图可知:
TABLE-A是用户数据库的表,当采用抽取,会把TABLE-A表拷贝进入有数的mpp中形成一个叫TABLE-A-COPY的表。
抽取的适用场景
正常情况下,对数据实时性要求不高的数据(即为离线数据)都可以采用抽取。如:今天分析昨天的数据。
如何实现数据同步?
抽取只是将数据进行拷贝。 正常情况下用户的数据库数据是实时变化的,如果我们把数据模型变成抽取,那么意味拷贝只发生一次。那么对于变化的数据我们变无法获取。所以此时如何实现数据同步变得至关重要。
目前有数提供两种同步模式:一种是定时同步,一种是触发同步。
定时同步
定时同步,类似设置一个时间管理器。如定时任务:设置每天9点抽取。那么有数系统会在每天的9点执行抽取计划。 这种方法的优势是:设置简单。缺点是:如果用户源头数据有问题,导致数据延迟。那么同步的数据准确性会有问题。
同步
触发同步,是有数提供接口,用户直接调度接口去同步。优点是:自主性和规则可以自己设定,可以保证数据准确性。缺点是:使用难度较高,对于用户需要具备一定的开发经验。
抽取的意义
1.可以对数据进行隔离,避免在用户库上频繁操作。 2.可以实现跨数据库建模。 3.提供性能优越的查询库。