partition

Ai公益深度学习

喜夏-厌秋 提交于 2020-02-14 23:35:04
softmax的基本概念 下面的连接是我自己记录的softmax和交叉熵的笔记。 模型的训练和预测 softmax丛林开始实现 import torchvision import numpy as np import sys sys . path . append ( "/home/kesci/input" ) import d2lzh1981 as d2l print ( torch . __version__ ) print ( torchvision . __version__ ) 获取训练集数据和测试集数据 batch_size = 256 train_iter , test_iter = d2l . load_data_fashion_mnist ( batch_size ) 模型参数初始化 num_inputs = 784 print ( 28 * 28 ) num_outputs = 10 W = torch . tensor ( np . random . normal ( 0 , 0.01 , ( num_inputs , num_outputs ) ) , dtype = torch . float ) b = torch . zeros ( num_outputs , dtype = torch . float ) W . requires_grad_ (

Kafka简介及安装部署

耗尽温柔 提交于 2020-02-14 23:17:04
Kafka概述 1、什么是Kafka 在流式计算中,Kafka一般用来缓存数据,Storm通过消费Kafka的数据进行计算。 1)Apache Kafka是一个开源消息系统,由Scala写成。是由Apache软件基金会开发的一个开源消息系统项目。 2)Kafka最初是由LinkedIn公司开发,并于2011年初开源。2012年10月从Apache Incubator毕业。该项目的目标是为处理实时数据提供一个统一、高通量、低等待的平台。 3)Kafka是一个分布式消息队列。Kafka对消息保存时根据Topic进行归类,发送消息者称为Producer,消息接受者称为Consumer,此外kafka集群有多个kafka实例组成,每个实例(server)称为broker。 4)无论是kafka集群,还是consumer都依赖于zookeeper集群保存一些meta信息,来保证系统可用性。 2、为什么需要消息队列 1)解耦:   允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。 2)冗余: 消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险。许多消息队列所采用的"插入-获取-删除"范式中,在把一个消息从队列中删除之前,需要你的处理系统明确的指出该消息已经被处理完毕,从而确保你的数据被安全的保存直到你使用完毕。 3)扩展性:

Oracle学习笔记(十)分区索引失效的思考

允我心安 提交于 2020-02-14 17:11:34
此处只说索引失效的场景(只会影响全局索引): 结论:全局索引truncate 分区和交换分区都会导致索引失效果 局部索引truncate分区不会导致索引失效。 drop table part_tab_trunc purge; create table part_tab_trunc (id int,col2 int,col3 int,contents varchar2(4000)) partition by range (id) ( partition p1 values less than (10000), partition p2 values less than (20000), partition p3 values less than (maxvalue) ) ; insert into part_tab_trunc select rownum ,rownum+1,rownum+2, rpad('*',400,'*') from dual connect by rownum <=50000; commit; create index idx_part_trunc_col2 on part_tab_trunc(col2) local; create index idx_part_trunc_col3 on part_tab_trunc(col3) ; --

MapReduce的shuffle过程详解

筅森魡賤 提交于 2020-02-14 13:40:43
shuffle概念   shuffle的本意是洗牌、混洗的意思,把一组有规则的数据尽量打乱成无规则的数据。而在MapReduce中,shuffle更像是洗牌的逆过程,指的是将map端的无规则输出按指定的规则“打乱”成具有一定规则的数据,以便reduce端接收处理。其在MapReduce中所处的工作阶段是map输出后到reduce接收前,具体可以分为map端和reduce端前后两个部分。在shuffle之前,也就是在map阶段,MapReduce会对要处理的数据进行分片(split)操作,为每一个分片分配一个MapTask任务。接下来map()函数会对每一个分片中的每一行数据进行处理得到键值对(key,value),其中key为偏移量,value为一行的内容。此时得到的键值对又叫做“中间结果”。此后便进入shuffle阶段,由此可以看出shuffle阶段的作用是处理“中间结果”。 此处应该想一下,为什么需要shuffle,它的作用是什么? 在了解shuffle的具体流程之前,应先对以下两个概念有所了解: block块(物理划分)   block是HDFS中的基本存储单位,hadoop1.x默认大小为64M而hadoop2.x默认块大小为128M。文件上传到HDFS,就要划分数据成块,这里的划分属于物理的划分(实现机制也就是设置一个read方法

spark梳理

强颜欢笑 提交于 2020-02-13 01:47:14
​大数据组件,离线用过hadoop,实时用过spark。 Hadoop现在比较稳定了,面试主要就是问Spark。 包括我工作这么多年,都没搞清过底层到底是怎么运行的,但是有些东西 懂的人一说就通了,优化起来也会有思路。 我下面给spark梳理一下。做个基本概要,方便面试。 一、spark运行原理: 1.提交spark任务,构建spark application运行环境,启动sparkContext。 2.sparkContext向资源管理器(可以使Standalone,Mesos,Yarn)申请运行Executor资源,并启动StandaloneExecutorbackend(后台监控程序)。 注: a.每个节点可以起一个或多个Executor。 3.Executor向SparkContext申请Task。 注: a.每个Executor由若干core组成,每个Executor的每个core一次只能执行一个Task。 b.每个Task执行的结果就是生产了目标RDD的一个partition。 c.这里的core是虚拟机的core而不是机器的物理CPU核,可以理解为就是Executor的一个工作线程。 d.Task被执行并发度(并发度不等于task数量)=Executor数目*每个Executor核数(=core总个数) e.partition数目在map阶段保持不变

Kafka是如何实现高性能的

最后都变了- 提交于 2020-02-10 17:45:47
原创:享学课堂讲师 转发请注明出处 Kafka是一个单机支持百万吞吐的高效中间件,在互联网领域经常将它用作消息队列,那么Kafka是如何实现这么性能的呢? 宏观架构层面利用Partition实现并行处理 Kafka中每个Topic都包含一个或多个Partition,不同Partition可位于不同节点。同时Partition在物理上对应一个本地文件夹,每个Partition包含一个或多个Segment,每个Segment包含一个数据文件和一个与之对应的索引文件。在逻辑上,可以把一个Partition当作一个非常长的数组,可通过这个“数组”的索引(offset)去访问其数据。 一方面,由于不同Partition可位于不同机器,因此可以充分利用集群优势,实现机器间的并行处理。另一方面,由于Partition在物理上对应一个文件夹,即使多个Partition位于同一个节点,也可通过配置让同一节点上的不同Partition置于不同的磁盘上,从而实现磁盘间的并行处理,充分发挥多磁盘的优势。 具体实现层面高效使用磁盘特性和操作系统特性 将写磁盘的过程变为顺序写 Kafka的整个设计中,Partition相当于一个非常长的数组,而Broker接收到的所有消息顺序写入这个大数组中。同时Consumer通过Offset顺序消费这些数据,并且不删除已经消费的数据,从而避免了随机写磁盘的过程。

day20kafka

给你一囗甜甜゛ 提交于 2020-02-10 07:50:00
Storm 上游数据源之 Kakfa PS:什么是kafka,为什么要学习它? http://blog.csdn.net/zcf_0923/article/details/70859535http://blog.csdn.net/SJF0115/article/details/78480433PS :kafka他不仅仅只是一个消息队列PS:发布与订阅系统一般会有一个broker,也就是发布消息的中心点PS:kafka的数据单元被称为消息, 可以理解为数据库的一条记录PS: def 批次 5.3 Kafka 集群部署 PS:启动kafka时,要先启动zookeeper 5.3.1 、下载安装包 http://kafka.apache.org/downloads.html 在 linux 中使用 wget 命令下载安装包 wget http://mirrors.hust.edu.cn/apache/kafka/0.8.2.2/kafka_2.11-0.8.2.2.tgz 5.3.2 、解压安装包 tar -zxvf kafka_2.11-0.8.2.2.tgz -C /apps/ cd /export/servers/ ln -s kafka_2.11-0.8.2.2 kafka 5.3.3 、修改配置文件 cp /export/servers/kafka/config/server

完美解决 开机无法启动 提示0xc000000e

拈花ヽ惹草 提交于 2020-02-08 08:15:32
注:昨天装系统碰到这个问题,这个方法说的较详细,我的是WIN7系统,开机提示引导文件错误,代码为0xc000000e 无法进入系统,使用PE进入后,在运行里输入CMD,然后按下文红字开始操作 完美解决 开机无法启动 提示0xc000000e 问题 摘要:本文提供0xc000000e问题的解决方法和原理解释,保证完美修复启动菜单,启动菜单不会变成英文还是中文,且所有启动项都可以正常使用。 关键词:Windows Vista SP1 Ghost 开机 0xc000000e 无法 启动 不了 问题描述: 用 Ghost 还原镜像文件到C盘,第一次开机正常,重启后却出现黑底白字,提示语为: File: \Windows\system32\winload.exe Status: 0xc000000e Info: The selected entry could not be loaded because the application is missing or corrupt. 解决方法: 注意:千万不要按提示用 Windows Vista SP1 的系统碟修复,不然启动菜单会变成英文,且无法改变成中文。而且只能修复 Windows Vista 这个启动项,不能修复 Windows XP 和 一键Ghost 等启动项。   用 Ghost 还原镜像文件到 C 盘后,如果第一次启动就进入

Windows下设置引导Ubuntu

若如初见. 提交于 2020-02-08 07:55:08
新买的thinkpad自带的是Vista,不喜欢于是重新装了Ubuntu(9.0.4),一个礼拜后把两个剩余盘装了XP,启动机器后发现Ubuntu不在引导中。 Windows的引导非常特殊,不论你之前装的是什么系统,只要再次装Windows,它会把你机器的Grub文件删掉重新写入它的信息,启动时只能找到Window,上网查阅资料,通过软件解决了。 首先下载grub4dos,笔者使用的是grub4dos-0.4.4,解压后将grldr与grldr.mbr拷贝至Windows系统盘根目录下,打开boot.ini,修改里面的代码(根据您的系统情况而定) [boot loader] timeout=10 default=multi(0)disk(0)rdisk(0)partition(3)\WINDOWS [operating systems] multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect C:\GRLDR.MBR="Ubuntu 9.0.4" [boot loader] timeout=10 default=multi(0)disk(0)rdisk(0)partition(3)\WINDOWS [operating

Spark核心概念

倖福魔咒の 提交于 2020-02-08 03:21:23
1、Application 基于spark的用户程序,包含了一个Driver Program以及集群上中多个executor; spark中只要有一个sparkcontext就是一个application ; 启动一个spark-shell也是一个application,因为在启动shark-shell时就内置了一个sc(SparkContext的实例); 2、Driver Program 运行Application的main()函数并且创建SparkContext的程序 。通常用SparkContext代表Driver Program; 3、Cluster Manager 在集群上获取资源的外部服务 。如:standalone、yarn、mesos;   各种不同的集群的区别:只是任务调度的粗细粒度不同,对学习spark没有影响,自己在学习时使用standalone即可; 4、Worker Node 集群中任何一个可以运行Application代码的节点 ; 可以在Worker Node启动Executor进程; 5、Executor 在Worker Node上为某Application启动一个 进程 ,该进程负责运行任务,并且负责将数据存在硬盘或者内存中; 每个Application都有各自独立的executors ; 比如:应用A在一个Node上启动Executor