MongoDB基础语法学习 MongoDB学习一.登录和退出mongo命令直接加MongoDB服务器的IP地址(比如:mongo 10.77.20.xx),就可以利用Mongo的默认端口号(27017)登陆Mongo,然后便能够进行简单的命令行操作。至于退出,直接exit,然后回车就好了。[plain]$ mongo 10.77.20.xx MongoDB shell version: 2....
Java中的23种设计模式详解及代码和图解 设计模式(Design Patterns) ——可复用面向对象软件的基础设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化...
hive分区 hive分区方便查询分区表指的是在创建表时指定的partition的分区空间。1.Hive 分区表在Hive Select查询中一般会扫描整个表内容,会消耗很多时间做没必要的工作。有时候只需要扫描表中关心的一部分数据,因此建表时引入了partition概念。分区表指的是在创建表时指定的partition的分区空间。2.hive分桶1.简介桶是通过对指定列进行哈希计算来...
java各种排序算法的稳定性和时间复杂度小结 选择排序、快速排序、希尔排序、堆排序不是稳定的排序算法,冒泡排序、插入排序、归并排序和基数排序是稳定的排序算法。 冒泡法: 这是最原始,也是众所周知的最慢的算法了。他的名字的由来因为它的工作看来象是冒泡: 复杂度为O(n*n)。当数据为正序,将不会有交换。复杂度为O(0)。直接插入排序:O(n*n)选择排序:O(n*n)快速排序:平均时间复杂度log2(n)*n,所有...
排序算法你会多少种,时间复杂度和稳定性是怎样的? 内部排序法的性能快速排序法的平均执行时间较少,但是在最坏的情况下它的性能会发生退化,这时不如用堆排序和归并排序法效率高。当序列长度较短时,可采用容易实现的选择排序、插入排序或者冒泡排序法。当序列长度较长时,宜采用快速排序、堆排序或者归并排序。...
进程和线程的区别 进程和线程的区别: 答: 进程:是并发执行的程序在执行过程中分配和管理资源的基本单位,是一个动态概念,竞争计算机系统资源的基本单位。线程:是进程的一个执行单元,是进程内科调度实体。比进程更小的独立运行的基本单位。线程也被称为轻量级进程。一个程序至少一个进程,一个进程至少一个线程。为什么会有线程?每个进程都有自己的地址空间,即进程空间,在网络或多用户换机下,一个服务器通常需要接收大量不确...
jvm垃圾回收机制 jvm 垃圾回收机制 答:垃圾回收机制是 Java 非常重要的特性之一,也是面试题的常客。它让开发者无需关注空间的创建和释放,而是以守护进程的形式在后台自动回收垃圾。这样做不仅提高了开发效率,更改善了内存的使用状况今天本文来对垃圾回收机制进行讲解,主要涉及下面几个问题:a.什么是堆内存?b.什么是垃圾?c.有哪些方法回收这些垃圾?d.什么是分代回收机制?什么是 Java 堆...
spark:将list里的数据保存到本地文件案例 spark:将list里的数据保存到本地文件案例代码:package sparkQLimport org.apache.spark.sql.SparkSessionobject jsonTest { case class Person(id:Int,name:String,age:Int) def main(args: Array[String]): Unit = {...
spark:将list里的数据保存到本地文件案例 spark:将list里的数据保存到本地文件案例代码:package sparkQLimport org.apache.spark.sql.SparkSessionobject jsonTest { case class Person(id:Int,name:String,age:Int) def main(args: Array[String]): Unit = {...
spark:单表关联案例 spark单表关联 题目:求孙子和祖父母的关系列表数据:child parentTom LucyTom JackJone LucyJone JackLucy MaryLucy BenJack AliceJack JesseTerry ...
spark之二次排序案例:要求先按账户排序,在按金额排序 一.Spark 二次排序:当排序的过程中,假如按照key排序使用sortByKey算子的时候,经常有很多key相同的数据,但是我们需要再次根据其他指标将相同key的数据再次细致的进行第二次的排序,这个时候我们就需要用到二次排序。并且很多场景需要三次排序,四次排序,五次甚至更多次的排序。二.案例:要求先按账户排序,在按金额排序数据如下:hadoop@apache ...
spark案例:给定一组键值对("spark",2),("hadoop",6),("hadoop",4),("spark",6),键值对的key表示图书名称,value表示某天图书销量 案例:给定一组键值对("spark",2),("hadoop",6),("hadoop",4),("spark",6),键值对的key 表示图书名称,value表示某天图书销量,请计算每个键对应的平均值,也就是计算每种图书的每天平均销量。 spark代码:import org.apache.spark.{SparkConf, SparkContext}o...
spark排序案例:定义三个文件对文件内容进行排序(数字) 1.排序: 定义三个文件对文件内容进行排序(数字)数据:1.txt788996672.txt808284863.txt88996677 spark代码: import org.apache.spark.{HashPartitioner, SparkConf, SparkContext}object paix...
spark集群模式的部署 1.Spark 介绍 【1】.spark处理大数据的统一分析计算引擎; a.速度:在迭代循环的计算模型下,spark比Hadoop快100倍; b.易用性:spark提供多种语言的API,如Java、Python、Scala、R、SQL等 c.扩展性:在spark RDD基础上,提供一整套的分析计算模型:spark SQL、spark Str...
案例:Scala之Akka分布式编程 【Akka分布式编程】1. Akka框架 akka框架是actor模型的最佳实践 Akka是使用Scala语言编写的,基于Actor模型的框架。可以用来开发高并发、分布式、基于消息驱动的应用程序。 它被应用在Spark中以实现节点之间的通信。 Akka必须先导入包,Scala支持Maven,也有个sbt(国内支持不是很好)...
scala之高阶函数 Scala基本类型说明------------------------------ 1.scala2.10版本以上将不采用八进制对整数赋值;支持十进制和十六进制(0x或0X) 2.浮点数文本是由十进制数字,可选的小数点和可选的E或e及指数部分组成的函数式编程------------------------------ 函数式编程的特点 函数...
Java基础总结(超详细) 这是本人在学习Java基础时的笔记,仅供参考。如有错误,请指出,谢谢啦!目录【1】接口、包、类、异常等 一、接口:二.异常:【2】字符串一.StringBuilder:可变字符串类型:二.构造器:三.查找字符串中的字符/子字符串的位置四.截取子字符串的方法:【3】面向对象、数组一.面向过程:C,Basic,Pascal二.类:用来...
在Scala中val与var的区别 Scala有两种变量:val和var。val不能重新赋值了。var可以在它生命周期中被多次赋值。 【例子】scala> val a= 3a: Int = 3scala> a=434<console>:12: error: reassignment to val a=434 ^scala> var xzt ...
案例:使用XPath的爬虫(把某贴吧的照片保存到本地) 案例:使用XPath的爬虫现在我们用XPath来做一个简单的爬虫,我们尝试爬取某个贴吧里的所有帖子,并且将该这个帖子里每个楼层发布的图片下载到本地。# tieba_xpath.py#!/usr/bin/env python# -*- coding:utf-8 -*-import osimport urllibimport urllib2from lxml import etr...
案例:使用正则表达式的爬虫(爬取段子网的关键信息) 案例:使用正则表达式的爬虫现在拥有了正则表达式这把神兵利器,我们就可以进行对爬取到的全部网页源代码进行筛选了。现在我们进入段子网:http://duanziwang.com/根据网页的信息,我们可以爬取段子网的段子内容,代码如下:#-*- coding:utf-8 -*-import urllib2import reclass Spider: """ ...