大数据学习目录

背景

最近有很多朋友问我,该怎么转大数据? 这个问题太大了,不是一句两句话能说清楚的,毕竟每个人情况不一样,每个公司的情况不一样,技术栈也不一样。而且大数据这个范围太大了,也有很多个方向。所以,我只能以我了解的维度,从一个JAVA开发转大数据开发的技术栈,做一个系列给大家讲一讲。这篇文章,主要是我的大数据技术栈。大家可以参考目录,去学习自己想了解的知识。由于本人水平有限,如有错误,欢迎联系Wx: woaiqiandaxian 加以批评指正。本目录也将随着个人成长,持续更新下去。

教程代码:
https://github.com/qiandaxian/bigdata-learn


说道现如今的大数据技术,很多重要思想,起源于谷歌的三篇论文,所以想要学习大数据,最好先了解谷歌的三篇论文:

继续阅读大数据学习目录

分享一个数学计算

前几天群里不认识的一个哥们,需要计算一下:
A+B=C,其中 C 不包含 A,B 中任意数字的集合
一时闲来无事,正好练练手,用python写了下,代码如下:

# -*- coding: utf-8 -*-
import time

'''
A+B=C,C不包含A,B中任意数字
'''

'''按位切分数字,返回字典{0-9,0-1}
ex{
  0:1,
  9:1
} 说明结果中包含0,9两个数字
'''
def spiltNumber( num ):
    n = num
    result = {}
    while (n > 0):
        if(n % 10 not in result):
            result[n % 10] = 1
        n = n / 10
    return result

# 2个字典取并集,为空说明不重复
def checkDictContains(dict1,dict2):
    return len(dict.fromkeys([x for x in dict1 if x in dict2])) == 0

def getList(start, end):
    list = range(start, end)
    return list

def getResult(start,end):
    # 返回的结果列表
    result = []
    # 迭代的次数
    z = 0
    for i in range(start, end):
        print("执行矩阵运算 x:%d,y:(%d~%d)..." % (i,i,end))
        for j in range(i, end):
            z += 1
            # 将左侧乘数转成倒排索引
            leftNumberDict = dict(spiltNumber(i), **spiltNumber(j))
            # 结果转换成倒排索引
            count = i + j
            countDict = spiltNumber(count)
            if (checkDictContains(countDict, leftNumberDict)):
                result.append(" %d + %d = %d" % (i, j, count))
                print("匹配结果: %d + %d = %d" % (i, j, count))
    print("匹配的结果数:%d" % (len(result)))
    print("迭代总次数:%d" % (z))

if __name__ == '__main__':
    startTime = time.time()
    getResult(100,999)
    print("执行时间:%d s" % (time.time()-startTime))

执行结果如下:

...
执行矩阵运算 x:992,y:(992~999)...
执行矩阵运算 x:993,y:(993~999)...
执行矩阵运算 x:994,y:(994~999)...
执行矩阵运算 x:995,y:(995~999)...
执行矩阵运算 x:996,y:(996~999)...
执行矩阵运算 x:997,y:(997~999)...
执行矩阵运算 x:998,y:(998~999)...
匹配的结果数:55509
迭代总次数:404550
执行时间:4 s

继续阅读分享一个数学计算

使用ambari2.7.0搭建hdp3.0集群

base

本文参考自:https://docs.hortonworks.com/HDPDocuments/Ambari-2.7.0.0/bk_ambari-installation/content/ch_Getting_Ready.html
文中所有安装配置,基于centos7。

ambari安装步骤

  1. 配置服务器

操作系统版本 centos7.4,我的配置是:

hostname ip 内存
server1 192.168.50.60 4G
server2 192.168.50.61 4G
server3 192.168.50.62 4G
server2 192.168.50.63 4G
server3 192.168.50.64 4G

虚拟机请配置成桥接模式,保存每台设备,都有独立的局域网IP,便于局域网访问

继续阅读使用ambari2.7.0搭建hdp3.0集群

linux下zookeeper集群安装配置

官网:http://zookeeper.apache.org/

1下载

wget http://ftp.jaist.ac.jp/pub/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz

2解压

tar -zxvf  zookeeper-3.4.10.tar.gz
  • bin目录
    命令目录,zk的操作命令。
  • conf目录
    配置目录,zk的配置信息。

继续阅读linux下zookeeper集群安装配置