cassandra

11月最新出台!阿里内部PPT涵盖研发篇、算法篇、Java后端架构、spring、微服务、分布式等

 ̄綄美尐妖づ 提交于 2020-11-19 20:22:26
我只截图不说话,PPT大全,氛围研发篇、算法篇、大数据、Java后端架构!除了大家熟悉的交易、支付场景外,支撑起阿里双十一交易1682亿元的“超级工程”其实包括以下但不限于客服、搜索、推荐、广告、库存、物流、云计算等。 Java核心技术栈:覆盖了JVM、锁、并发、Java反射、Spring原理、微服务、Zookeeper、数据库、数据结构等大量知识点。 需要免费领取阿里全部资料的朋友麻烦帮忙转发一下文章+评论+收藏+关注我,然后加小猪理VX:wjj2632646 研发篇部分截图一览,感谢大佬们的分享 算法篇部分截图一览,直接上目录 机器算法大集合 PPT内容还有很多!涵盖阿里巴巴的全部技术栈! 需要免费领取阿里全部资料的朋友麻烦帮忙转发一下文章+评论+收藏+关注我,然后加小猪理VX:wjj2632646 阿里巴巴开发手册1.4.0(终极版) 编程规约 异常日志 单元测试 安全规约 MySQL数据库 工程结构 Java核心知识PDF JVM JAVA集合 JAVA多线程并发 JAVA基础 Spring 原理 微服务 Netty与RPC 网络 日志 Zookeeper Kafka Rabbi tMQ Hbase MongoDB Cassandra 设计模式 负载均衡 数据库 一致性算法 JAVA算法 数据结构 加密算法 分布式缓存 Hadoop Spark Storm YARN

857页Alibaba“Java学习进阶笔记”开源!分布式/微服务/Spring框架/JVM/数据结构与算法啥都有

做~自己de王妃 提交于 2020-11-13 11:36:26
笔记作者: 来自于阿里P8级架构师: Mark 笔记特点: 条理清晰,含图像化表示更加易懂。 内容概要: 包括 Java 集合、JVM、多线程、并发编程、设计模式、Spring全家桶、Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、MongoDB、Redis、MySQL、RabbitMQ、Kafka、Linux、Netty、Tomcat等大厂面试题等、等技术栈! 由于整个文档比较全面,内容比较多,篇幅不允许,下面以截图方式展示 。 即可免费获取 JAVA集合 接口继承关系和实现 List ArrayList(数组) Vector(数组实现、线程同步) LinkList(链表) Set HashSet(Hash表) TreeSet(二叉树) JVM JVM就是java虚拟机,它是一个虚构出来的计算机,可在实际的计算机上模拟各种计算机的功能。JVM有自己完善的硬件结构,例如处理器、堆栈和寄存器等,还具有相应的指令系统。 线程 JVM内存区域 JVM运行时内存 垃圾回收与算法 JAVA 四种引用类型 GC分代收集算法 VS 分区收集算法 GC垃圾收集器 JAVA IO/NIO JVM 类加载机制 JAVA多线程并发 JAVA并发知识库 JAVA线程实现/创建方式 4种线程池 线程生命周期(状态) 终止线程4种方式

Flink 之 Data Sink

泪湿孤枕 提交于 2020-11-08 12:26:42
首先 Sink 的中文释义为: 下沉; 下陷; 沉没; 使下沉; 使沉没; 倒下; 坐下; 所以,对应 Data sink 意思有点把数据存储下来(落库)的意思; Source 数据源 ---- > Compute 计算 -----> sink 落库 如上图,Source 就是数据的来源,中间的 Compute 其实就是 Flink 干的事情,可以做一系列的操作,操作完后就把计算后的数据结果 Sink 到某个地方。(可以是 MySQL、ElasticSearch、Kafka、Cassandra 等)。 这里我说下自己目前做告警这块就是把 Compute 计算后的结果 Sink 直接告警出来了(发送告警消息到钉钉群、邮件、短信等),这个 sink 的意思也不一定非得说成要把数据存储到某个地方去。 其实官网用的 Connector 来形容要去的地方更合适,这个 Connector 可以有 MySQL、ElasticSearch、Kafka、Cassandra RabbitMQ 等。 Data Source 介绍了 Flink Data Source 有哪些,这里也看看 Flink Data Sink 支持的有哪些: 看下源码有哪些呢? 可以看到有 Kafka、ElasticSearch、Socket、RabbitMQ、JDBC、Cassandra POJO、File、Print 等

Calcite技术研究

大兔子大兔子 提交于 2020-11-02 05:34:42
原文作者:王长春,来自平安银行零售大数据团队 概述 Apache Calcite是一个基础的软件框架,它提供了查询处理、查询优化以及查询语言支持的能力。很多流行的开源数据处理系统例如Apache Hive,Apache Storm,ApacheFlink,Druid等都采用了它。 下图是采用Apache Calcite的开源数据处理系统,以及Calcite能连接到的数据源。 大多数数据处理系统是使用Calcite来做SQL解析和查询优化。还有部分使用Avatica(Calcite的子项目)来构建自己的JDBC driver。还有部分使用Calcite来重写查询请求以使用物化视图。 最近十几年来,出现了很多专门的数据处理引擎。例如列式存储、流处理引擎、文档搜索引擎等等。这些引擎宣称他们在特殊方面能提供更高“性价比”的性能,并且宣称“one size fits all”范式的时代已经终结了。Spark、Storm、Flink、Elasticsearch、Druid等多种引擎的流行确实说明了这一点。 这些数据处理引擎都面临着一些共同但是难以解决的问题。 一是数据处理引擎都要做查询优化以及提供sql查询语言或者其他DSL查询语言。 二是使用者可能使用了多个专门的数据引擎,例如使用了ES、Spark、Druid.那么使用者很可能会有在异构数据源上支持查询以及查询优化的需求。 Apache

流数据处理

我的梦境 提交于 2020-10-30 06:46:57
大数据界很早以前就意识到了批处理的不足,实际应用中对于实时查询和流处理的需求越来越迫切。近年来涌现出了很多解决方案,像Twitter的Storm,Yahoo的S4,Cloudera的Impala,Apache Spark, 和 Apache Tez 等。本文试着去研究这些流式处理技术,溯寻这些技术与批量处理以及OLTP/OLAP之间的关联,并探讨如何用一个统一的查询引擎来同时支持流处理、批处理和OLAP。 在Grid Dynamics(作者工作的公司名),我们需要建立一个每天要处理80亿条数据的流式数据处理系统,并且要有良好的容错性和严格的事务约束,数据不允许丢失或者重复。这个系统要作为对已有的基于hadoop系统的补充,hadoop系统的数据延迟以及维护成本都太高了。这个需求以及系统本身都是极具通用性和典型性的,我们提出了一个模型来来抽象这类问题。 工作环境如下图: 可以看出,这是一个非常典型的场景:分布在多个数据中心的应用产生数据,然后被采集系统传递到hdfs上,用hadoop系列工具(MapReduce, Pig, Hive)对原始数据进行聚合和分析,结果储存在hdfs或者NoSQL里,再导入到OLAP数据库或者提供给各种应用使用。我们现在要增加一个流处理引擎(如下图所示),可以对数据进行预处理,这样可以减少hadoop上原始数据的数量并减少重量级批处理作业的数量

听说,你的Loki还是单体?(下篇)

自作多情 提交于 2020-10-28 08:18:28
正文共729字 预计阅读时间:2分钟😂 相信大家看过 《听说,你的Loki还是单体?(上篇)》 之后对Loki的分布式架构有了一定的认识 ,那么本篇主要就是对上篇内容的实践。小白主要提供 docker-compose 和 helm 两种方式将部署Loki集群的Demo版本。 在正式部署之前,我们还是先来看下Loki整体架构如下图: 我们本次部署清单里面主要涉及到的组件如下: 组件 副本数 说明 Cassandra 1 Loki Index存储 Minio 1 Loki S3存储 Consul 1 Loki 组件状态和哈希环存储 Redis 1 Loki 缓存 Gateway 2 Loki 网关 Distributor 3 Loki 组件 Ingester 3 Loki 组件 Querier 3 Loki 组件 Query-Frontend 2 Loki 组件 Table-Manager 1 Loki 组件 下载部署代码 $ git clone https://github.com/CloudXiaobai/loki-cluster-deploy.git 声明:以下部署均适用于demo环境,大家切勿直接用于生产环境 对于生产环境,请务必先解决Cassandra和Consul服务的高可用 通过docker-compose部署 启动服务 $ cd loki-cluster-deploy

睡前必读 | 如何系统性地学习分布式系统?

荒凉一梦 提交于 2020-10-28 00:07:33
点击上方“朱小厮的博客”,选择“设为星标” 后台回复"书",获取 导语:本文的缘起是回答知乎圆桌会议「分布式系统之美」的问题「如何系统性地学习分布式系统?」,后面稍微整理了一下,形成了这一篇文章(知乎 ID:kylin)。 前 言 学习一个知识之前,我觉得比较好的方式是先理解它的来龙去脉:即这个知识产生的过程,它解决了什么问题,它是怎么样解决的,还有它引入了哪些新的问题(没有银弹),这样我们才能比较好的抓到它的脉络和关键点,不会一开始就迷失在细节中。 所以,在学习分布式系统之前,我们需要解决的第一个问题是:分布式系统解决了什么问题? 分布式系统解决了什么问题? 第一个是单机性能瓶颈导致的成本问题,由于摩尔定律失效,廉价 PC 机性能的瓶颈无法继续突破,小型机和大型机能提高更高的单机性能,但是成本太大高,一般的公司很难承受; 第二个是用户量和数据量爆炸性的增大导致的成本问题,进入互联网时代,用户量爆炸性的增大,用户产生的数据量也在爆炸性的增大,但是单个用户或者单条数据的价值其实比软件时代(比如银行用户)的价值是只低不高,所以必须寻找更经济的方案; 第三个是业务高可用的要求,对于互联网的产品来说,都要求 7 * 24 小时提供服务,无法容忍停止服务等故障,而要提供高可用的服务,唯一的方式就是增加冗余来完成,这样就算单机系统可以支撑的服务,因为高可用的要求,也会变成一个分布式系统。