华为云GaussDB的数据深耕,推动离散制造企业服务化转型【玩转华为云】
背景
伴随着互联网技术全面融入社会生活,庞大的数据信息量已经积累到了一个开始引发全面变革的阶段。信息化的快速发展,不但让世界充斥着更多的数据,而且数据增长速度也在加快。
对于这一社会现象,《大数据时代》的作者维克托(Viktor)给出了这样的评论:
大数据是人们在大规模数据的基础上可以做到的事情,而这些事情在小规模数据的基础上是无法完成的;大数据是人们获得新的认知、创造新的价值的源泉;大数据还是改变市场、组织结构以及政府与公民关系的方法。
美国信息技术研究分析公司 Gartner Group 在2014年给出了“技术成熟度曲线",在该曲线中,“大数据”技术与2011年出现,在2012年时处于上升中途的位置,隔年达到技术炒作区域的顶点。而从到2014年时,已经处于下降阶段了。
图1-1 Gartner Group 的“技术成熟度曲线"
大数据技术被广泛应用于很多领域产业,尤其是与智能城市相关的产业,包括关注商品生产的制造业以及金融、保险、交通等现代服务业。
在制造业中,大数据需要建立、集成、结构化和有序化,才能有效地满足技术创新、批量定制和绿色制造等多重需求。
离散制造业与大数据技术的结合,是产业发展的必然趋势。然而产业的高速发展中不可避免的出现了新问题。
离散制造业的新问题
在离散制造业中,围绕着“大数据”技术带来的变更,引发了一系列产业发展问题:
- 大数据的焦点在于“技术”还是“商业模式”?
- 传统的结构化数据如果规模庞大,属不属于大数据?
- 如何保障隐私的保护,确保隐私不会被二次利用?
- 如何实现海量数据或实时数据的处理,更好的解决产业发展方向性的问题?
- 如何实现跨部门、跨业务领域、跨流程、跨企业、跨产业链的整合优化?
- 如何更为高效的帮助推动离散制造企业从产品开发制造到产品服务的转型?
上述的一系列产业发展问题,想要解决离不开大数据技术。
离散制造业的服务化转型
服务化转型是当前制造业的一个重要发展趋势。
离散制造业想要实现服务化转型,数据是基础也是前提。
在离散制造业中,产业发展与大数据是紧密结合在一起的。工业技术与大数据技术的融合,将成为上述的一系列产业发展问题的解决创造条件。
图1-2 产业发展与大数据
GaussDB:数据深耕
智能化产品和服务产生了海量数据,想要数据深耕进而据提高离散制造业的服务水平,并产生新的业务模式和盈利模式,需要大数据技术发挥关键性作用。
GaussDB的应用场景
GaussDB提供的应用场景中,大数据量、大并发的交易性应用十分贴合离散制造业的服务化转型场景。
数据深耕
对数据的深耕主要包含数据探查、数据集成、数据质量和数据屏蔽等。
- 数据探查:是对数据的内容本身和关联关系等进行分析。
- 数据集成:是数据平台构建的核心,指将数据从数据源头抽取、经过清洗、转换、关联等转换,并最终按照预先设计的数据模型将数据加载到数据仓库的过程。
- 数据质量:数据质量问题始终是每个数据相关人员的核心诉求。
- 数据屏蔽:它是关于对数据如何进行不可逆的处理,使得处理后的数据既能被开发测试和分析统计使用,又不会泄露任何信息的过程。
大表join大表优化
大表join大表优化,是实际业务场景中会出现的一种优化需求,在将本地数据库使用 GaussDB 上云之前,需要进行一下优化处理。
1、问题描述
当表的体积过大,超过1GB的大小,就会有大表join大表的问题。
2、解决方案
倍数B表,再取模join。
建立一个numbers表,其值只有一列int行,比如从1到10(具体值可根据倾斜程度确定),然后放大B表10倍,再取模join。
select
m.user_id
,sum(pay_ord_90d) as pay_ord_90d
,sum(case when m.s_level=0 then pay_ord_90d end) as pay_cnt_90d_s0
,sum(case when m.s_level=1 then pay_ord_90d end) as pay_cnt_90d_s1
,sum(case when m.s_level=2 then pay_ord_90d end) as pay_cnt_90d_s2
,sum(case when m.s_level=3 then pay_ord_90d end) as pay_cnt_90d_s3
,sum(case when m.s_level=4 then pay_ord_90d end) as pay_cnt_90d_s4
,sum(case when m.s_level=5 then pay_ord_90d end) as pay_cnt_90d_s5
from
(
select
a.user_id, a.seller_id, b.s_level, a.pay_ord_90d
from
(
select user_id, seller_id, pay_ord_90d
from table_A
) a
join
(
select /*+mapjoin(members)*/
seller_id, s_level, member
from table_B
join
members
) b
on a.seller_id=b.seller_id
and mod(a.pay_ord_90d,10)+1=b.number
) m
group by m.user_id
通过内网连接实例
根据我们的安全需要,选择“内网连接”的方式连接实例。通过内网连接实例,官网提供了详细的文档:《通过内网连接实例》。
其中需要额外注意几点。
1、客户端工具包相对位置为解压后位置
实际位置可能与案例提供的有出入,以实际解压位置为准。
cd /tmp/tools/GaussDB_driver/Centralized/Euler2.5_X86_64/
cp GaussDB-Kernel_VxxxRxxxCxx_EULER_64bit_Gsql.tar.gz /tmp/tools
2、需要连接的数据库名称
postgres为需要连接的数据库名称,如果是分布式实例,10.0.0.0为CN的IP地址,如果是主备版实例,10.0.0.0则为主DN的IP地址,root为登录数据库的用户名,8000为分布式版CN或主备版DN的默认端口号。
gsql -d postgres -h 10.0.0.0 -U root -p 8000
Password for user root:
总结
服务化转型是当前制造业的一个重要发展趋势。离散制造业想要实现服务化转型,数据是基础也是前提。
在离散制造业中,产业发展与大数据是紧密结合在一起的。
智能化产品和服务产生了海量数据,想要数据深耕进而据提高离散制造业的服务水平,并产生新的业务模式和盈利模式,需要大数据技术发挥关键性作用。选择云数据库——华为云GaussDB,可以进行数据深耕,满足服务化转型的业务场景。
未来,我准备继续摸索华为云GaussDB的更多场景化实践。
作者:非职业「传道授业解惑」的开发者叶一一
简介:「趣学前端」、「CSS畅想」系列作者,华夏美食、国漫、古风重度爱好者,刑侦、无限流小说初级玩家。
如果看完文章有所收获,欢迎点赞👍 | 收藏⭐️ | 留言📝。
- 点赞
- 收藏
- 关注作者
评论(0)