怎么学好nosql,怎么学好地理
零基础自学大数据要学哪些内容?
1. EXCEL、PPT(必须精通)
成都创新互联是一家专注于成都做网站、网站建设、外贸营销网站建设与策划设计,兴安网站建设哪家好?成都创新互联做网站,专注于网站建设10年,网设计领域的专业建站公司;建站业务涵盖:兴安等地区。兴安做网站价格咨询:18982081108
数据工作者的基本姿态,话说本人技术并不是很好,但是起码会操作;要会大胆秀自己,和业务部门交流需求,展示分析结果。技术上回VBA和数据透视就到顶了。
2. 数据库类(必须学)
初级只要会RDBMS就行了,看公司用哪个,用哪个学哪个。没进公司就学MySQL吧。
NoSQL可以在之后和统计学啥的一起学。基本的NoSQL血MongoDB和Redis(缓存,严格意义上不算数据库),然后(选学)可以了解各类NoSQL,基于图的数据库Neo4j,基于Column的数据库BigTable,基于key-value的数据库redis/cassendra,基于collection的数据库MongoDB。
3. 统计学(必须学)
如果要学统计学,重要概念是会描述性统计、假设检验、贝叶斯、极大似然法、回归(特别是广义线性回归)、主成分分析。这些个用的比较多。也有学时间序列、bootstrap、非参之类的,这个看自己的意愿。
其他数学知识:线性代数常用(是很多后面的基础),微积分不常用,动力系统、傅里叶分析看自己想进的行业了。
4. 机器学习(数据分析师要求会选、用、调)
常用的是几个线性分类器、聚类、回归、随机森林、贝叶斯;不常用的也稍微了解一下;深度学习视情况学习。
5. 大数据(选学,有公司要求的话会用即可,不要求会搭环境)
hadoop基础,包括hdfs、map-reduce、hive之类;后面接触spark和storm再说了。
6. 工具类
语言:非大数据类R、Python最多;大数据可能还会用到scala和java。
其他框架、类库(选学):爬虫(requests、beautifulsoup、scrapy),日志分析(常见elk)。
怎样学习大数据?
首先我们要了解Java语言和Linux操作系统,这两个是学习大数据的基础,学习的顺序不分前后。
Java :只要了解一些基础即可,做大数据不需要很深的Java 技术,学java SE 就相当于有学习大数据基础。
Linux:因为大数据相关软件都是在Linux上运行的,所以Linux要学习的扎实一些,学好Linux对你快速掌握大数据相关技术会有很大的帮助,能让你更好的理解hadoop、hive、hbase、spark等大数据软件的运行环境和网络环境配置,能少踩很多坑,学会shell就能看懂脚本这样能更容易理解和配置大数据集群。还能让你对以后新出的大数据技术学习起来更快。
Hadoop:这是现在流行的大数据处理平台几乎已经成为大数据的代名词,所以这个是必学的。Hadoop里面包括几个组件HDFS、MapReduce和YARN,HDFS是存储数据的地方就像我们电脑的硬盘一样文件都存储在这个上面,MapReduce是对数据进行处理计算的,它有个特点就是不管多大的数据只要给它时间它就能把数据跑完,但是时间可能不是很快所以它叫数据的批处理。
Zookeeper:这是个万金油,安装Hadoop的HA的时候就会用到它,以后的Hbase也会用到它。它一般用来存放一些相互协作的信息,这些信息比较小一般不会超过1M,都是使用它的软件对它有依赖,对于我们个人来讲只需要把它安装正确,让它正常的run起来就可以了。
Mysql:我们学习完大数据的处理了,接下来学习学习小数据的处理工具mysql数据库,因为一会装hive的时候要用到,mysql需要掌握到什么层度那?你能在Linux上把它安装好,运行起来,会配置简单的权限,修改root的密码,创建数据库。这里主要的是学习SQL的语法,因为hive的语法和这个非常相似。
Sqoop:这个是用于把Mysql里的数据导入到Hadoop里的。当然你也可以不用这个,直接把Mysql数据表导出成文件再放到HDFS上也是一样的,当然生产环境中使用要注意Mysql的压力。
Hive:这个东西对于会SQL语法的来说就是神器,它能让你处理大数据变的很简单,不会再费劲的编写MapReduce程序。有的人说Pig那?它和Pig差不多掌握一个就可以了。
Oozie:既然学会Hive了,我相信你一定需要这个东西,它可以帮你管理你的Hive或者MapReduce、Spark脚本,还能检查你的程序是否执行正确,出错了给你发报警并能帮你重试程序,最重要的是还能帮你配置任务的依赖关系。我相信你一定会喜欢上它的,不然你看着那一大堆脚本,和密密麻麻的crond是不是有种想屎的感觉。
Hbase:这是Hadoop生态体系中的NOSQL数据库,他的数据是按照key和value的形式存储的并且key是唯一的,所以它能用来做数据的排重,它与MYSQL相比能存储的数据量大很多。所以他常被用于大数据处理完成之后的存储目的地。
Kafka:这是个比较好用的队列工具,队列是干吗的?排队买票你知道不?数据多了同样也需要排队处理,这样与你协作的其它同学不会叫起来,你干吗给我这么多的数据(比如好几百G的文件)我怎么处理得过来,你别怪他因为他不是搞大数据的,你可以跟他讲我把数据放在队列里你使用的时候一个个拿,这样他就不在抱怨了马上灰流流的去优化他的程序去了,因为处理不过来就是他的事情。而不是你给的问题。当然我们也可以利用这个工具来做线上实时数据的入库或入HDFS,这时你可以与一个叫Flume的工具配合使用,它是专门用来提供对数据进行简单处理,并写到各种数据接受方(比如Kafka)的。
Spark:它是用来弥补基于MapReduce处理数据速度上的缺点,它的特点是把数据装载到内存中计算而不是去读慢的要死进化还特别慢的硬盘。特别适合做迭代运算,所以算法流们特别稀饭它。它是用scala编写的。Java语言或者Scala都可以操作它,因为它们都是用JVM的。
如何学习及选择大数据非关系型数据库NoSQL
是的,NoSQL(非关系型数据库)简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系组成的一个数据组织。 NoSQL最普遍的解释是“非关系型的”,强调Key-Value Stores和文档数据库的优点,而不是单纯的反对RDBMS。
非关系型数据库特点
1.可以处理超大量的数据。
2.运行在便宜的PC服务器集群上。PC集群扩充起来非常方便并且成本很低,避免了“sharding”操作的复杂性和成本。
3.击碎了性能瓶颈。NoSQL的支持者称,通过NoSQL架构可以省去将Web或Java应用和数据转换成SQL友好格式的时间,执行速度变得更快。
4.没有过多的操作。
5.支持者来源于社区。因为NoSQL项目都是开源的,因此它们缺乏供应商提供的正式支持。这一点它们与大多数开源项目一样,不得不从社区中寻求支持。
怎么学习nosql
首先,根据你的需要选定一种NoSQL数据库。因为NoSQL数据库类型比较多,而且不像SQL那样有统一的国际标准。
找到选定的NoSQL数据库的官方网站,下载软件和文档
搭建NoSQL数据库环境
在搭建的环境上完成Demo(一般都有样例)
按照指定的二次开发接口进行应用开发。
当前文章:怎么学好nosql,怎么学好地理
分享链接:http://scjbc.cn/article/dsecogd.html