twt运营
作者twt运营·2016-08-25 09:24
软件开发工程师·twt

分享|基于Linux/Oracle的TB级数据实时查询,基础架构如何部署?

字数 2206阅读 2499评论 0赞 0

上个星期,社区组织了“基于Oracle数据库的TB级数据实时查询系统基础架构部署探讨”线上技术交流活动,一些观点和方法很有借鉴意义,今天就在这里分享给大家。

先说说组织这个活动的背景:

在零售行业的物流系统、制造行业的BI、ERP和SAP系统、能源行业ERP系统等,查询数据量超过TB级已经很常见了,同时生产系统的大查询涉及多个系统,实时性要求很高,很容易出现系统瓶颈。除了查询之外,往往还需要对数据进行预处理和清洗。

那么就带来了几个常见的部署问题,如扩展能力受限、资源调配能力不足、支持不了大的数据库单库、数据库流转效率低等等。

为此,社区邀请了北京物美、上海美特斯邦威、海通证券、京客隆集团、山东泰山钢铁集团、银泰百货、中国建材、中国大地财产保险、一汽集团、长城汽车以及IBM等公司的技术专家,交流和分享在这种情况下的基础架构部署探讨做法、经验。

由于前述系统大部分都基于Oracle数据库和Linux平台,探讨在此前提下进行。

以下内容可能是你比较关心的,来看看大家是如何分享的——

1解决TB级ORACLE数据库查询性能问题通常有哪些优化手段?

(刘建清 中国建材 系统运维工程师)

随着业务的不断扩展,对数据的分析、抽取、转换等操作越来越多,对TB级ORACLE数据库的性能依赖越来越高,请各们同仁说说如何解决数据库查询性能的问题?以及通常有哪些优化手段?

beatles_wang 大地财险 项目经理

查询性能的问题归根结底还是sql写的是否合适,可以分析下执行计划是否正确,通过建立合适的索引,对表建立合适的分区,修改sql的逻辑写法提高sql的执行效率。

olfisher Intime 产品经理

从两个方面入手,第一升级硬件,在数据量达到一定级别的时候,其实任何的软优化都于事无补,大数据会造成物理读,引起IO瓶颈,所以1.扩大内存,并调整SGA和PGA,11g以后的话直接可以让memery自动管理;第二普通硬盘换成SSD,或者有条件直接上内存数据库;第二当然就是优化SQL,通过awr等手段,结合实际的业务场景进行优化。

qiuhaoshu 柏科数据 技术经理

可以采用2种优化

1.物理的硬件升级

高性能设备+全闪存

2.数据的系类的优化

参数优化。

拆分表+集群架构(如RAC)

余静   北京物美 系统工程师

这个问题上面基本说完了,我总结一把

优化基本从两方面:

1、硬件

高性能的主机+闪存存储

2、系统和软件层面

补丁或者升级最新版本。

sql优化。

关系数据库和非关系数据库集合使用。

建立从库或者叫dg副本,查询等业务可以从dg端执行,减轻主库压力。

2高并发查询系统优化和基础架构设计,我的思路是这样的

(skiper 上海美特斯邦威服饰股份有限公司 技术经理)

以下是我们的情况:

1、企业BI数据分析平台,硬件架构构建在Linux服务器加高性能存储,数据库采用Oracle数据库

2、BI系统负责企业业务系统数据分析挖掘功能及报表展示功能,业务部门每天都要进行数据查询整理进行销售业绩分析,门店终端人员需要查询历史销售数据以进行销售分析,各种纬度查询需求需要系统及时进行处理。

3、目前系统存在数据同步周期较长,每天各个业务系统数据抽取需要浪费大量带宽和系统资源,报表计算周期较长,用户查询反馈较慢用户通过客户端进行查询时如果数据量较大就会出现卡顿情况。

解决思路:针对数据同步周期较长,分析业务系统同步频率、时间和数据量,对于耗费带宽业务尽量使用lanfree方式,避免对业务使用有直接影响,针对部署在一个区域的业务系统数据同步,可构建专用网络采用10G或者40G交换机进行互连,提高实时性,这样投资较小,也可以快速解决。当前问题。分析业务系统本身存在问题,如数据量较大,可建议进行数据归档、优化数据库索引,已提高数据查询速度,针对用户端查询较慢问题可以尝试优化中间层结构,增加中间层节点和负载均衡结构以降低查询消耗时间。

以上谈一点自己的问题以及思路,目的也是希望大家讨论,建议一些更好的方案以及你们的经验参考。

余静   北京物美 系统工程师:

我们公司面临的问题和你这个差不多

你上面的想法我们都做了,我还做了升级存储,闪存,把查询业务迁到dg端,把备份业务也分到dg端,这样主库压力减轻一部分,不过只是短期解决问题。

ibmlinfeng    IBM 系统架构师

认同前面专家的观点,可以考虑集中式部署。至少是数据级的集中,减少数据同步次数和保证数据的一致性。数据集中后,后续的运维成本和带宽的投入可以大大节省。集中后的平台需要面对来自各店面的查询,因此要求平台具有高并发查询能力。

可以考虑使用LinuxONE解决方案,LinuxONE是企业级的Linux服务器,其硬件架构基于IBM大型主机。而主机平台对高并发业务的支持,在国内各大银行已经被验证几十年。

------------------------------------------------

还有更多分享,如:

  • 对于TB级数据库,如何设计有效的备份策略及容灾策略?

  • TB级数据库,做双活数据中心该考虑些什么?

  • TB级实时数据查询系统出现性能瓶颈,原因可能出现在哪些方面?

  • TB级别数据实时查询还需要用ORACLE数据库吗?

欢迎大家点击链接浏览。

此处再介绍一个IBM针对上述问题提出的解决方案,供参考:

299368288488906471.jpg

155349445771574158.jpg

466336410145548215.jpg

130097413701279952.jpg

756057740239346667.jpg

759408536543924446.jpg

606532327717660477.jpg

因图片太多,不一一附上,请点击链接下载

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广