系统学习

Hadoop生态圈学习-1(理论基础)

懵懂的女人 提交于 2019-12-03 12:06:35
一.大数据技术产生的背景 1. 计算机和信息技术(尤其是移动互联网)的 迅猛发展和普及 ,行业应用系统的 规模迅速扩大 (用户数量和应用场景,比如facebook、淘宝、微信、银联、12306等),行业应用所产生的数据呈 爆炸式增长 。 2. 动辄达数数百PB甚至EB(1EB=1024PB=1024*1024TB) 规模 的数据已远 超出传统 计算机和信息系统的处理能力。 3. 有效的大数据处理技术、方法和手段已成为 迫切需求 。 Google的三驾马车 为大数据的发展奠定 十分重要的基础 . Google的三驾马车(非常重要):三篇论文---> 思想、原理 1、GFS:google file system ---> HDFS:Hadoop Distributed File System 都是分布式文件系统,用于解决大数据的存储问题。 什么是倒排索引?Reverted Index 倒排索引: 假如要在搜索关键词"大数据",如果只有正向索引 , 那可能需要耗费非常多的时间全表扫描 ,然后关键词为"大数据"的记录 , 数据量庞大的情况下这个过程慢的无法让人发指, 所以有了倒排索引,搜索引擎会将正向索引重新构建为倒排索引,即把文件ID对应到关键词的映射转换为关键词到文件ID的映射,每个关键词都对应着一系列的文件,这些文件中都出现这个关键词。 通俗说: 通过数据,找地址 2

浅谈学习掌握linux系统的优势

非 Y 不嫁゛ 提交于 2019-12-03 10:34:04
Linux系统让我们懂得了共享、开放、自由可以让人类生活的更加美好,开源精神是一种让每个从事Linux行业的技术人员从骨子里自豪的情怀,开源产品的兴盛受益于开源社区的强壮根基。Linux真的给了我很多,不仅仅是科技之美,更是生命之美。接下来我希望更加切实的谈一谈Linux,让我为你揭开Linux系统这贵妇的面纱,一探究竟,希望能够与你们产生共鸣! Linux操作系统最初是在1991年10月份由芬兰赫尔辛基大学的在校生Linus Torvalds 所发布的。是他,是他,就是他,我们的Linux之父Linus Torvalds!我看过很多的Linux书籍,在感谢语的部分,必须都得先感谢linus Torvalds,毕竟娶了女儿还得要感谢岳父不是吗?最初发布的Linux0.02版因其高质量与开放的源代码,迅速引起了一大批黑客的“围观”,而今虽然有数百计的Linux发行版,但依然都统一的使用Linus Torvalds开发/维护的系统内核,时代虽然变化,但留下了真正珍贵的东西---Linux的内核。 让我们看看Linux的优秀之处,我相信你们在学习或使用过程中会有深切的感受,无不感叹道:"Linux简直太好用了",你可以在这里下载并学习到Linux系统 http://www.linuxprobe.com/ ,Linux相对于windows具有以下的优点。 l 稳定且有效率 l

推荐系统学习之评测指标

﹥>﹥吖頭↗ 提交于 2019-12-03 04:10:35
1.处理数据集:将用户行为数据集按照均匀分布随机分成M份,挑选一份作为测试集,剩下的M-1份作为训练集 import random def splitData(data,M,k,seed): test={} train={} random.seed(seed) for user,item in data: if random.randint(0,M)==k: test.append([user.item]) else: train.append([user.item]) return test,train 2.评测指标 ①准确率和召回率 对用户u推荐N个物品(记为R(u)),令用户u在测试集上喜欢的物品的集合为T(u),召回率和准确率可以用来评测推荐算法的精度,计算公式为 def Recall(train,test,N): hit=0 all=0 for user in train.keys(): Tu=test[user] rank=GetRecommendation(user,N) for item,pui in rank: if item in Tu: hit+=1 all+=len(Tu) return hit/(all*1.0) def Precision(train,test,N): hit=0 all=0 for user in train.keys(): Tu

大数据学习之路

匿名 (未验证) 提交于 2019-12-03 00:39:02
一直在努力学习大数据大数据相关的技术,很想了解众多老司机的学习历程。因为大数据涉及的技术很广需要了解的东西也很多,会让很多新手望而却步。所以,我就在自己学习的过程中总结一下学到的内容以及踩到的一些坑,希望得到老司机的指点和新手的借鉴。 目前正在学习分布式理论和ZooKeeper 大数据学习QQ群:716581014 前言 在学习大数据之前,先要了解他解决了什么问题,能给我们带来什么价值。一方面,以前IT行业发展没有那么快,系统的应用也不完善,数据库足够支撑业务系统。但是随着行业的发展,系统运行的时间越来越长,搜集到的数据也越来越多,传统的数据库已经不能支撑全量数据的存储工作;另一方面,数据越来越多,单机的计算已经成为瓶颈。因此,基于分布式的大数据系统崭露头角。那么大数据系统里面都有什么东西呢?可以参考下面的图 在存储上,hdfs的分布式存储可以任意水平扩展,可以解决数据存储的难题。在计算上,从最初的MapReduce,把任务水平拆分,多台机器并行计算,再汇总结果;到基于Spark的内存计算,改造Mapreduce每次数据落盘以及编程方式的痛点。 有了存储和计算框架,周边就衍生出了很多管理、缓存相关的技术,比如: yarn解决多租户资源调度的难题, flume解决数据传输的难题, sqoop解决分布式存储数据与传统DB数据之间的转换, oozie解决了大数据计算任务的调度,

系统学习Docker,CI/CD践行DevOps理念(笔记)

匿名 (未验证) 提交于 2019-12-03 00:22:01
what is docker what’s the difference between docker and VM? 简化配置 整合服务器 代码流水线管理 调适能力 提高开发效率 多租户 隔离应用 快速部署 what is DevOps? 部署慢 成本高 资源蓝给 难于迁移扩展 限定厂商 转载请标明出处: 系统学习Docker,CI/CD践行DevOps理念(笔记) 文章来源: 系统学习Docker,CI/CD践行DevOps理念(笔记)

系统学习Docker践行DevOps理念

匿名 (未验证) 提交于 2019-12-03 00:22:01
网盘地址: https://pan.baidu.com/s/1bulSbduzSPrKfOk3iCVxSA 密码: kf7y 备用地址(腾讯微云): https://share.weiyun.com/5G9KXvP 密码:kngy9y Docker代表的容器技术是近两年的大热技术,和人工智能、区块链等热点不同,容器技术的门槛并不高,每一个开发、测试、运维人员都能在日常工作中掌握和使用,是当今IT从业人员的必备技能之一。 本课程会带大家系统学习什么是容器,如何创建容器、管理容器;学习容器技术的各个细节(网络/存储/服务编排/监控),学习如何通过容器进行CI/CD持续集成,持续部署。学习Docker,让你成为更加优秀的IT工程师。 文章来源: 系统学习Docker践行DevOps理念

[学习笔记] Numpy基础 系统学习

匿名 (未验证) 提交于 2019-12-03 00:15:02
#%% #------------------------------2019.9.23 NumPy----------------------------- import numpy as np # 1.NumPy在一个连续的内存块中存储数据 # 2.性能差异 my_arr = np.arange(100000) my_list = list(range(10000)) print(my_arr) #%% # 1.ndarry:一种多维数组对象 data = np.random.randn(2,3) print(data,'\n') print(data*10,'\n') print(data+data,'\n') # 1.1.ndarry通用的同构数据多为容器――所有元素必须是相同类型的 # .shape 返回表示各维度大小的元组 # .dtype 返回类型 print(data.shape) print(data.dtype) #%% # 1.2.创建ndarry # 1.2.1.用array函数直接创建,dtype自动判定 data_list = [1,1.5,2] arr1 = np.array(data_list) print(arr1) data2 = [[1,2,3,4],[5,6,7,8]] arr2 = np.array(data2) print(arr2

机器人ROS系统学习随笔->2 RPLIDAR激光雷达使用

匿名 (未验证) 提交于 2019-12-03 00:06:01
一、驱动的安装。 SLAMTEC官网下载激光雷达资料: http://www.slamtec.com/ 本人用的是RPLIDAR-A1的激光雷达 在下载界面下载相应的资料,sdk与固件及其他。 二、安装。 1、建立工作空间并编译(也可以使用现有的空间)。 mkdir - p ~ /turtlebot_ws/ src cd ~ /turtlebot_ws/ src git clone https : //github.com/ncnynl/rplidar_ros.git 2、编译(返回上层)。 cd .. catkin_make 3、添加环境变量(也可以直接在~/.bashrc中设置,在下次打开时就不用在设置了)。 echo “ source ~ /turtlebot_ws/ devel / setup . bash ” >> ~/. bashrc 4、端口配置。 检查端口权限 ls - l / dev | grep ttyUSB 赋予端口权限 sudo chmod a + rw / dev / ttyUSB0 三、运行。 1、打开roscore roscore 2、进入工作空间运行rplidar和rviz cd ~/ turtlebot_ws . devel / setup . bash roslaunch rplidar_ros view_rplidar . launch

Elasticsearch系统学习(十一)-mapping

匿名 (未验证) 提交于 2019-12-02 23:57:01
1、搜索结果各项含义 GET / _search { "took" : 6 , #整个搜索请求花费了多少毫秒 "timed_out" : false , #是否超时,可以手动指定超时时间 "_shards" : { #默认一个搜索请求,会打到index的所有primary shard上去,每个primary shard都可能会有一个或多个replic shard,所以请求也可以到primary shard的其中一个replica shard上去。 "total" : 6 , "successful" : 6 , #shards fail的条件(primary和replica全部挂掉) "failed" : 0 }, "hits" : { "total" : 10 , #本次搜索,返回了几条结果 "max_score" : 1 , #本次搜索的所有结果中,最大的相关度分数是多少,每一条document对于search的相关度,越相关,_score分数越大,排位越靠前 "hits" : [ #默认查询前10条数据,完整数据,_score降序排序 { "_index" : ".kibana" , "_type" : "config" , "_id" : "5.2.0" , "_score" : 1 , "_source" : { "buildNum" : 14695 } } ] } }

系统学习消息队列分享(六) 如何确保消息不会丢失?

匿名 (未验证) 提交于 2019-12-02 23:56:01
对于刚刚接触消息队列的同学,最常遇到的问题,也是最头痛的问题就是丢消息了。对于大部分业务系统来说,丢消息意味着数据丢失,是完全无法接受的。 其实,现在主流的消息队列产品都提供了非常完善的消息可靠性保证机制,完全可以做到在消息传递过程中,即使发生网络中断或者硬件故障,也能确保消息的可靠传递,不丢消息。 绝大部分丢消息的原因都是由于开发者不熟悉消息队列,没有正确使用和配置消息队列导致的。虽然不同的消息队列提供的 API 不一样,相关的配置项也不同,但是在保证消息可靠传递这块儿,它们的实现原理是一样的。 这节课我们就来讲一下,消息队列是怎么保证消息可靠传递的,这里面的实现原理是怎么样的。当你熟知原理以后,无论你使用任何一种消息队列,再简单看一下它的 API 和相关配置项,就能很快知道该如何配置消息队列,写出可靠的代码,避免消息丢失。 检测消息丢失的方法 我们说,用消息队列最尴尬的情况不是丢消息,而是消息丢了还不知道。一般而言,一个新的系统刚刚上线,各方面都不太稳定,需要一个磨合期,这个时候,特别需要监控到你的系统中是否有消息丢失的情况。 如果是 IT 基础设施比较完善的公司,一般都有分布式链路追踪系统,使用类似的追踪系统可以很方便地追踪每一条消息。如果没有这样的追踪系统,这里我提供一个比较简单的方法,来检查是否有消息丢失的情况。 我们可以利用消息队列的有序性来验证是否有消息丢失