zoukankan      html  css  js  c++  java
  • 阿里云栖开发者沙龙-玩转数据库技术-20181201

    1.HBase 介绍以及典型场景分析

    (1)基本介绍

    为大数据而生:海量存储、非结构化数据、高扩展、灵活数据模型,在线与离线计算结合。

    PB级别海量数据存储,百万列

    底层基于hdfs

    压缩比10:1

    无模式,仅定义列簇即可

    基于rowkey检索

    高读写、低延迟

     HBase运维比较麻烦

    传统DB:亿行1T,100K TPS

     HBase:万亿行10PB,1000M TPS

     (2)基本架构

    Spark的 OLAP/流/批    mlib 

    SQL  KV  Graph 时空 时序

    HBase+solr:rowkey索引+全文索引/二级索引

    SSD   HDD  OSS

     (3)企业特性

    数据备份恢复:源仅支持全量备份,阿里支持全量+增量备份。

    实时数据同步:MySQL、prosgre等异步实时同步到HBase里,利用spark进行分析。延迟200ms以内。

    冷热分离:存储计算分离,热数据存在高效云盘(7毛/月),冷数据在OSS中(2毛/月,压缩比10:1)。读写API相同,写入QPS>20W,读取时冷数据低。

    主备多活异地容灾:两个集群主备,人工去做切换,延迟200ms以内,数据最终一致性。

    延迟

    类型   开源:停顿时间(不工作了)  开源:频率  阿里:停顿时间  阿里频率

    YGC  100ms+    5s  10ms  5s

    Cms   100-500ms  5Min  100ms  5h

    FGC   20s-180s  7-60days  

     诊断系统

    Hbase组件多,常见问题或错误(hbase  zk    hdfs)

     (4)hbase生态

    Phoenix –sql on hbase  SQL引擎、简单查询,无法做复杂查询。

    Spark:sql streaming,复杂查询,支持多源(hbase与oss的join)

    openTSDB:时序,满足物联网、传感器、监控、金融k线等时序应用场景。主要用途,就是做监控系统;譬如收集大规模集群(包括网络设备、操作系统、应用程序)的监控数据并进行存储,查询。

    Solr:基于Lucene全文索引,冗余非rowkey列,提供模糊查询、范围查找。

    GeoMesa:提供时空能力,轨迹查询

    HGraphDB:图,风控场景把套现相关人关联起来。

    (5)典型案例

    广告买流分析平台

    实时广告-兑吧

    今日头条

    小对象实时存取(10M内),如图片人脸。稀疏矩阵场景

    车联网案例(海量数据存储图)

    2.阿里云Apsara数据库

    国产数据库首次入选Gartner数据库魔力象限。阿里云自研关系型云原生数据库Polardb

    (1)数据库演化

    线下产品license(传统数据库)===> 线上自助服务(云数据库)===> 到分布式serverless(云原生数据库)。

    (2) 云服务高可用、可扩展、可靠性进化

    基于虚拟机的单数据库服务—便宜,应用广泛

    Active-Standby的高可用云数据库—主备数据库,提供高可用(资源浪费、数据同步)(主机复制到备机完成前,主机挂掉,切不切换,切可保业务响应难保数据一致性)

    读写分离(读请求比写多)(写时,主机数据同步多个读节点,压力山大)

    分布式共享存储active的高可用读写分离的severless云数据库服务

    (3)Apsara数据库

    计算存储分离,多活高可用读写分离,存储serverless的四维弹性(节点横向扩展、节点纵向扩展、存储自动伸缩,业务快速复制)。

    100%兼容MySQL,强弹性伸缩。

     (4)题外话

    拥抱新技术,最早技术红利套现

    github被微软收购。

    3.阿里云Redis技术架构

    (1)redis简介

    key-value存储系统

    易用性:丰富数据结构支持,Module(自定义数据结构)

    高性能:高效数据结构设计,全内存操作(单机性能10w+qps)

    可靠性:主备同步,持久化

     (2)阿里redis产品体系

    单节点-单机主备-集群-读写分离-同城容灾-异地多活

    更大容量、更高性能、更高可用性

    (3)6大管控系统

    HA控制系统、日志收藏系统、监控系统、在线迁移系统、备份系统

    a. 标准双副本架构,一主一从:纯缓存、数据持久化。性能8-10w qps  ,数据量不大GB级

    b. 集群双副本:数据量TB级,数据量大,性能100w qps

    c. 读写分离:读多写少,超大key,不要强一致性。

    d. 同城容灾:主备型多一个主备切换。数据可用性要求高,TO 大B用户。单机房故障无缝。

    e. 异地容灾多活:TO 大B可用,多点读写,就近读写。容忍N-1机房故障,最终一致性。

    4.MongoDB Best Practice

    Nosql

    MongoDB是一个基于分布式文件存储的数据库。

    HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统。

    5.去IOE

    (1)什么是去IOE

    I:IBM小型机、O:Oracle数据库、E:EMC中高端SAN存储

    去IOE:集中式架构==>分布式架构(云计算)

    (2)为什么去IOE

    原因:扩展能有限、处理海量数据性能不足

    Oracle RAC共享存储架构(Shared-disk),非常好的高可用特性,扩展能力有限。

    共享存储的IO能力和可用性决定了整个集群的可以提供的能力。节点数的不断增加,节点间通信的成本也会随之增加,会有上限。

    (3)实际操作

    阿里:部分海量数据应用,采用数据切分(sharding)策略,从集中式oracle切换到分布式MySQL集群,从纵向扩展到水平扩展,解决数据库扩展性问题。

    阿里去O的工具平台:ADAM(数据库和应用迁移服务)

    6.Fintech(金融科技)

    Fintech(金融科技)是 Financial + Technology 的合成词,即:金融和科技。

    以科技作为整体核心驱动力,将技术应用到金融中,从而提高公司的效率和收益。

    京东为了预防诈骗,通过大数据建立了属于自己的大数据和风控体系,在应用了一系列人工智能技术后,成功实现了京东白条的无人工审核和放款,对三亿用户的信用风险进行评估,从而让自身的金融不良率低于 1%,在节省人力的同时,大大提高了企业的服务效率。

    参考文档:

    HBase基础

  • 相关阅读:
    Thymeleaf中,将字符串作为js函数的参数
    测试开发面试题总结
    013_RomanToInteger
    Python列表中查找某个元素的索引(多个)
    Python“函数式编程”中常用的函数
    009_Palindrome Number
    Python字符串方法总结(一)
    007_Reverse Integer
    002_Add Two Numbers
    pycharm上传代码到github
  • 原文地址:https://www.cnblogs.com/badboy200800/p/10056660.html
Copyright © 2011-2022 走看看