消费一个礼拜的日把开好数目及时按照开看罢了,书不是大注重,200几近页。(写读书笔记又花费了自一个礼拜的时刻……………)

1.PHP程序员玩转Linux系列-怎么设置使用CentOS

就如前言里说道的那么,书里并没有涉及到绝多余技术有关的始末,感觉比较遗憾,

2.PHP程序员玩转Linux系列-lnmp环境之搭建

 

3.PHP程序员玩转Linux系列-搭建FTP代码开发环境

书共分为了4单部分

4.PHP程序员玩转Linux系列-备份还原MySQL

率先片段 大数据的勃兴

5.PHP程序员玩转Linux系列-自动备份与SVN

老二有些 驾驭好数额:技术,流程及艺术

6.PHP程序员玩转Linux系列-Linux和Windows安装nginx

老三局部 驾驭好数目:人与办法

7.PHP程序员玩转Linux系列-nginx初家引导

季部分 整合:分析文化

8.PHP程序员玩转Linux系列-Nginx中的HTTPS

第一有的 大数据的起

9.PHP程序员玩转Linux系列-使用supervisor实现守护进程

 

10.PHP程序员玩转Linux系列-升级PHP到PHP7

哎呀是坏数据,大数据为什么要

 

坏数额有星星点点个比较好之概念,一个凡是依据麦肯锡全球数据数据解析研究所的概念:大数目是依大小超出了突出数据库软件工具集,储存,管理以及分析能力的数量集。

邮箱是工作中十分重要的一个工具,平常我还是应用foxmail软件还是直接登录web来操作邮件,现在自己一旦变种方法采取邮箱.使用邮箱都是通过pop协议收取邮件,使用smtp协议发送邮件,现在自我就是直当命令执行遭来操作一下邮箱.

旁一个凡Gartner公司的Merv
Adrian在相同首稿子上说之:大数目超过了常用硬件环境及软件工具在可领之时空内啊那个用户手机,管理与处理多少的力量。

pop服务器非SSL加密,一般的端口是110,例如:pop3.sina.net  端口:110

据此大数据的范围会趁机技术之迈入而转变,今天底不胜数量将不再是明的充分数额,

telnet pop3.sina.net 110

 

图片 1

颇数据的那个不仅体现在容量达到,还反映于多样性,速度计复杂度等方面

动USER指令,指定邮箱名

 

USER shihan2@appdev.sinanet.com

良数目遭到之大和数据还无是雅数额中最为着重之,重要的凡哪来使用这些大数目。

采用PASS指令,指定密码

 

PASS 密码xxx

死数据来结构化的,非结构化的和一半结构化的。

用STAT指令,查看邮箱统计,前一个凡是邮件数,后一个凡邮件所占有的半空中大小

 

STAT

成千上万大数据实际上并无紧要,某些信息具有长期的战略价值,某些信息只有拥有现的战术价值,而除此以外一些信息则不用价值。

运LIST指令,列有邮件列表,前一个凡邮件的号子,后一个凡是欠邮件所占的大大小小

征服大数额并无意味着一旦控制所有的数额,它就是比如从吸管中吸水一样,
仅仅吸取哪些重大之未正规就是可以了。

LIST

 

图片 2

特别数量最令人激动的一些是,当她同其他的数目做之后带的作业价值

 图片 3

 

使RETR指令,读取邮件详情,RETR 编号,读出来的就是信体内容了

网络数据:原始之杀数据

RETR 1

苦是有关网络数据的极要害的考虑,在制定这些数量如何给运用的政策时,一定要小心谨慎。这些政策一定要是给严厉的履与严守

图片 4

 

 

网数据令推荐视频,流失模型,响应型,顾客分类,顾客搜索以及在线广告分析等地方都赢得了双重好的力量

应用smtp发送邮件

 

利用如下命令

独立大数据源及其价值

telnet smtp.sina.cn 25
ehlo sina.cn
auth login
xxxxxxxxxxxxxxxxxxxx== #base64加密的邮箱
MjAzOTQ0LmNvbQ==       #base64加密的密码
mail from:<shihan@appdev.sinanet.com> #发件人
rcpt to:<630892807@qq.com>  #收件人
data
To:630892807@qq.com
From:shihan@appdev.sinanet.com
Subject:测试一下telnet发邮件

测试一下telnet发邮件测试一下telnet发邮件

.  #这个必须有

无线射频标签,即RFID标签

PHP代码实现收发信

 

<?php
try {
    define('PATH', dirname(__FILE__).'/emails/');
    //pop协议读取下载邮件
    $pop=new Pop();
    echo $pop->connect("pop3.sina.net",110);  
    echo $pop->user("shihan2@appdev.sinanet.com");
    echo $pop->pass("xxxx");
    echo $pop->stat();
    $pop->download($pop->lists());

    //smtp协议发邮件
    $dir = dir(PATH); 
    while($file = $dir->read()){ 
        if($file=="."|| $file==".."){
            continue;
        } 
        $smtp=new Smtp();
        echo $smtp->connect("smtp.sina.net",25);
        echo $smtp->helo("shihan2@appdev.sinanet.com");
        echo $smtp->auth();
        echo $smtp->user();
        echo $smtp->pass("xxxx");
        echo $smtp->mailFrom("shihan2@appdev.sinanet.com");
        echo $smtp->rcpt("shihan2@appdev.sinanet.com");
        echo $smtp->data();
        echo $smtp->send(file_get_contents(PATH.$file));
    } 
} catch (Exception $e) {
    echo $e->getMessage();
}
class Pop{
    private $socket;
    public function __construct(){
        ini_set('memory_limit', '200M');
        ini_set("auto_detect_line_endings", true);
    }
    public function connect($popServer,$popPort){
        $res=@fsockopen("tcp://".$popServer,$popPort,$errno,$errstr);
        if(!$res){
            throw new Exception($errstr, $errno);
        }
        $this->socket=$res;
        return $this->readLine();
    }
    public function user($email){
        $user="USER {$email}\r\n";
        fwrite($this->socket,$user);
        return $this->readLine();
    }
    public function pass($pwd){
        $pass="PASS {$pwd}\r\n";
        fwrite($this->socket,$pass);
        return $this->readLine();
    }
    public function lists(){
        fwrite($this->socket,"LIST\r\n");
        $lists=$this->read();
        return $this->parseList($lists);
    }
    public function retr($id){
        fwrite($this->socket,"RETR {$id}\r\n");
        return $this->read();
    }
    public function stat(){
        fwrite($this->socket,"STAT\r\n");
        return $this->readLine();
    }
    public function read() {
        $buf="";
        while ($ln = $this->readLine()) {
            if (trim($ln) == '.') {
                break;
            }
            $buf .= $ln;
        }
        return $buf;
    }
    public function download($emails){
        foreach ($emails as $key => $email) {
            $name=$email['id'].".eml";
            if(!is_dir(PATH)){
                mkdir(PATH,0777);
            }
            $path=PATH.$name;
            if(file_exists($path)){
                continue;
            }
            echo "{$name} email  is downloading... \r\n";
            $file=$this->retr($email['id']);
            file_put_contents($path, $file);
            echo "{$name} email  is ok! \r\n";
        }
    }
    public function readLine(){
        $result="";
        while(true){
            $buffer=@fgets($this->socket,10);
            $n = strlen($buffer);
            $result.=$buffer;
            if (!$n) {
                break;
            }
            if ($buffer[$n - 1] == "\n") {
                break;
            }
        }
        return $result;
    }
    private function parseList($list){
        $result=array();
        $emails=explode("\n", $list);
        foreach ($emails as $key => $v) {
            $emailId=explode(" ", $v);
            if(!is_array($emailId)||$emailId[0]=='+OK'||!isset($emailId[0])||!isset($emailId[1])){
                continue;
            }
            if($emailId[0][0]=='.'){
                break;
            }
            $temp=array();
            $temp['id']=$emailId[0];
            $temp['size']=$emailId[1];
            $result[]=$temp;
        }
        return $result;
    }
}
class Smtp{
    private $socket;
    private $email;
    public function __construct(){
        ini_set('memory_limit', '200M');
        ini_set("auto_detect_line_endings", true);
    }
    public function connect($smtpServer,$smtpPort){
        $res=@fsockopen("tcp://".$smtpServer,$smtpPort,$errno, $errstr);
        if(!$res){
            throw new Exception($errstr, $errno);
        }
        $this->socket=$res;
        return $this->readLine();
    }
    public function helo($email){
        $user="HELO {$email}\r\n";
        fwrite($this->socket,$user);
        $this->email=$email;
        return $this->readLine();
    }
    public function auth(){
        $pass="AUTH LOGIN\r\n";
        fwrite($this->socket,$pass);
        return $this->readLine();
    }
    public function user(){
        $pass=base64_encode($this->email)."\r\n";
        fwrite($this->socket,$pass);
        return $this->readLine();
    }
    public function pass($pwd){
        $pass=base64_encode($pwd)."\r\n";
        fwrite($this->socket,$pass);
        return $this->readLine();
    }
    public function mailFrom($from){
        $data="MAIL FROM:<{$from}>\r\n";
        fwrite($this->socket,$data);
        return $this->readLine();
    }
    public function rcpt($rcpt){
        $data="RCPT TO:<{$rcpt}>\r\n";
        fwrite($this->socket,$data);
        return $this->readLine();
    }
    public function data(){
        $email="data\r\n";
        fwrite($this->socket,$email);
        return $this->readLine();
    }
    public function send($data){
        $email="{$data}\r\n";
        $email.=".\r\n";
        fwrite($this->socket,$email);
        return $this->readLine();
    }
    public function read() {
        $buf="";
        while ($ln = $this->readLine()) {
            if (trim($ln) == '.') {
                break;
            }
            $buf .= $ln;
        }
        return $buf;
    }
    public function readLine(){
        $result="";
        while(true){
            $buffer=@fgets($this->socket,10);
            $n = strlen($buffer);
            $result.=$buffer;
            if (!$n) {
                break;
            }
            if ($buffer[$n - 1] == "\n") {
                break;
            }
        }
        return $result;
    }

}

汽车保险业:车载信息服务数量的价值

 

大抵独行业:文本数据的值

差不多只行业:时间数额及职务数据的价值

零售制造业:RFID数据的价

电力行业:智能电网数据的值

博彩业:筹码跟踪数据的价

工业发动机和配备:传感器数据的价值

视频游戏:遥测数据的价

电信业和其他行业:社交网络数据的价

 

虽各行各业都生广阔的十分数据源,但他们按有一些协办之主题,虽然目的不同,但各行各业都以了平等之底部技术,如RFID。

 

文本数据是太特别之,也是以最广泛的平等类似非常数据源。一般的话。一般的话,我们关心的是何许由文本数据被领到到重点之实,然后如何利用这些真相作为任何分享流程的输入。

 

亚有的
驾驭好数额:技术,流程以及艺术

 

分析可扩展性的多变

ETL过程是Extract(提取),Transform(转换)和Load(加载)

 

太初步,数据库都是以有一个一定目的或团队构建的,企业里常见有诸多见仁见智之涉嫌项目数据库。这些纯粹目的的数据库一般被叫作“数据会”。当广大店铺还当忙于在下数据会的常,一些遥遥领先的局张了将不同数额会集中到一个可怜系统的价值,这个深体系叫做企业级数据仓库
(Enterprise Data Warehouse)

 

当多少所处的地方开展解析,而未是把数量以到剖析的地方去,这就是是库内分析的定义

 

海量并行处理系统(Massively Parallel
Processing,MPP)打破了数量为单独具有一个CPU单元以及磁盘的中央服务器进行管理的限定。MPP系统中的多寡为切分导入一多重之服务器受到,储存在不同CPU单元管理之例外磁盘里

 

剖析专家可行使MPP数据库来就多少准备与评分,具体方法至少有4种,(1)直接付出SQL,(2)自定义函数(UDF),(3)嵌入式过程,(4)预测建模标记语言(PMML)

 

MapReduce是平栽互动的编程架构,是针对现有技术之互补

MapReduce里程序员们坐了有限独根本的处理过程:映射过程map以及综合过程reduce,类似于MPP系统,MapReduce也会见管多少分配至不同之通用设备上拓展拍卖,每一个MapReduce节点都见面利用同样的代码对好管理的那么有数码开展处理。区别在,MapReduce的节点内不见面发信息交互,甚至无明白彼此的存在。

 

MapReduce环境的一个突出特色是拍卖各种不组织化话文本的能力

 

MapReduce并无是数据库,它没有放置的平安机制,没有索引,没有查询或处理过程的优化机制,没有另外都到位任务的历史信息,也不懂得其他节点有所的数内容。

MapReduce提供了平栽灵活处理各类数据的章程,同时,它吧大有义务去规范定义或描述每一个处理过程中发生的数。

 

当驾驶好数量的分析生态环境中,海量并行关系项目数据库,云计算,MapReduce都得以发表要之来意,可以以立刻3宗技艺构成起来使用,并起很数额中取重新不行之值

 

公有云并无提供性应,数据安全要吃严格监管,因为数量现已淡出了店铺的直接决定

如企业内公有云被广大的用,使用公有云的血本将可能过内部元件的由生系统

 

私有云于一个有惊无险之条件下提供了灵活性,这对于大型商厦产生至关重要之义

 

网格计算好好部分无法直接交给单一数据库处理的超大型任务。网格计算以受越来越常见的运,且意义转移得更强劲。

 

剖析流程的形成

分析环境遭受沙箱就是一个资源组,沙箱还有一个名字称为敏捷分析称或数量实验室。

 

分析沙箱对于分析专家而言,有以下几只好处

独立

灵活性

效率

自由

速度

 

浅析沙箱对于IT人员出以下几单好处

集中化

流程作业

简化

控制

下降本钱

 

自商店数据仓库或数额会中分有同块区域形成的辨析沙箱,就是内分析沙箱

内沙箱的一个优势是,它可以动用现有的硬件资源和底蕴设备;能显下降本钱;最深的优势的可一直拿生条件的数据域沙箱的数额进行关联分析。

内分析沙箱也闹通病。第一,数据导入企业数仓库或数量会后,还要把多少导入沙箱中,这多了工作量。其次,沙箱会占有系统的仓储空间与CPU资源(可能是生非常的一律组成部分资源)

再有一个缺陷是,内部分析沙箱中生产环境管理策略和流程的限。例如,如果周一早晨生育报表的职责会占用全部系统资源,那么此时分析沙箱用户就是没足够的资源得以使了。

 

外表分析沙箱是一个屋里独立的分析环境,用于测试与出各类分析流程。

日常外部分析沙箱是混合式分布沙箱的一个部分。

表分析沙箱的不过可怜优势是其的架构简单,另一个亮点是抽了网负荷管理

表分析沙箱的重要弱点是用作沙箱平台的独自系统带来的资产加。另一个弱点是,外部分析沙箱需要展开数据迁移。

 

混合式分别沙箱是其中沙箱和表面沙箱的结。他同意分析专家用生产体系计算能力的灵活性,有保存的标系统可实施数据库难以完成某些高级探索任务的亮点

混合式分布沙箱最充分的长是以持有中沙箱和表面沙箱两个环境的亮点,还有处理某些复杂分析时无与伦比的油滑,另外的一个独到之处是以条分缕析流程就接近开发完成,生产系统进行全面布局前,

好构建一个小的“模拟生产体系”来展开测试。

混合是条件之欠缺相当给其中沙箱和外部沙箱缺点之汇总,此外尚加了片新的短。一个欠缺是要而管住保障中沙箱与外部沙箱两单条件,另一个短是,可能得树立两个不同的数额导入流程

立马多了系的纷繁。

 

解析数据集(Analytic Data
Set)是为支持有分析或模型如果集中于同的数目,且它的数码格式满足一定分析的渴求。

时任重而道远发生半点种植分析数据集

开分析数据集是永葆分析任务的ADS。它有解决问题或许要之百分之百变量,所以其见面大丰厚,但非会见怪非常。

生儿育女分析数据集刚好反而,它一般用于各种评分和范部署,它只是含有最终解决方案必须的一定数据,所以生产数据集不宽,但得会十分酷。

 

Enterprise Analytic Data
Set(EADS)企业分析数据集是不过共享的,可复用的,集中化的,标准化的,用于分析的数据集

EADS所开的从事即是拿成百成千个变量汇总到某些数据表和视图内。这些数据表和视图可供应分析专家,不同应用,不同用户一起采取。EADS的布局是一样摆很宽表,也可以是关联在一块的几近张表

EADS有利于协作,因为各个一个剖析专家还可共享同样的,一致的多寡。

EADS最着重之一个优点是管了不同分析工作之数的一致性。

 

柜分析数据集的重大特性包括以下几触及:

一个规范数据视图可以支持不同的剖析任务

无异于种能够明了加快数据准备进程的方法

同一栽啊分析流程提供了再也胜一致性,更可靠。更享有可视化的数的方

除以高级分析流程外,一个助应用程序和分析专家开新视图的措施

好给分析专家专注让分析自身

 

要你如果于某一个事务领域做大量之剖析,且分析还会愈发多,那么您便当创建公司分析数据集

 

浅析数据集的相同栽实现方式是建立一个凑合总表,另一样种实现方式是树立平等系列之大意视图来实时生成EADS

 

嵌入式评分过程可配备于沙箱环境或EADS环境外,并提供了评分顺序,这些程序可以死轻受各种用户和动用访问

 

嵌入式评分的贯彻过程包括SQL,UDF,嵌入式过程要PMML

 

要是商家开始广泛的使用模型,那么就相应树立模型和评分管理流程

 

型和评分管理网有4只基本点部件:输入分析数据集,模型定义,模型验证和报表制作,模型评分输出

 

剖析工具与方的演进

简简单单模型定义也平种植下跌部分预测效果因而加快模型构建过程的分析方法

 

重组型利用了群体的灵性,通过结合又措施的预计结果,最终收获了较诸种方式都使好的结果

 

简简单单模型的靶子的迅猛并尽可能自动化地付出一个敷好之模子,而模型是否太精美,所有的生命力是否用尽,这些并无是关注的要紧,

 

文件分析的一个宏伟的挑战是,仅仅词语我并无能够证实一切题材,因为于文书中尚无包含重音,语调和变调等信息

 

用户界面是分析专家提升生产力的家伙,前提是这些分析专家知道自己于召开什么,并确保该工具能“最适当的”工作,在自己的利用界面下实际还易把作业为砸

 

单点分析解决方案专注于一个切实可行领域的剖析,如蒙或要定价,并以拖欠领域内展开深刻剖析。这些家伙的影响力在时时刻刻的升官

 

R是一个开源分析工具,近年来让进一步多的利用,R的一个亮点的以软件受到益新算法的进度,它的一个缺陷是那个手上缺企业级的剖析可扩展性

 

多少可视化的基本点不是华丽的图纸,而是什么对数码进行展示,以获对分析结论还深刻的了解

 

 

 

其三有些 驾驭好数目:人以及章程

怎提供上乘分析

表不是分析。生成报表通常是分析的起来,如果叫正好的运用,分析和表格能够互相促进,相得益彰

 

概念报表的关键因素有:

表能够将所急需的数码报告让使用者

数量将因为标准的,预定义的格式呈现

当变化无常报表的历程中,除了通过报表要报表的使用者外,没有其他人与

表不足够灵活

 

概念分析的关键因素有:

分析提供问题之答案

剖析流程要履许多不可或缺的手续来博取问题之答案

为此,分析是啊釜底抽薪特定问题定制的

浅析需要一个指分析流程的人

分析流程是活的

 

分析的G.R.E.A.T原则

导向性(GUIDE)

相关性(RELEVANT)

可解释性(EXPLAINABLE)

可行性(ACTIONABLE)

及时性(TIMELY)

 

商家展开分析时最糟糕之同一种植办法是,只挑好的定论而忽视不利的下结论,这样的所作所为完全违背了分析的目的,也非会见带其它的值

 

分析最要害的片是,在作业时有发生前作出判断,能否建立针对科学问题之解析框架会直接影响及剖析工作之胜负

 

统计显著性不同为业务根本程度,不要通过统计测量方法来判断分析结果的重要性程度

 

统计显著性测试就是供了无可非议的几率。把显著性水平测试结果遭到比较小之那有概率与实际的谬误联系起

 

哪变成美好的分析专家

评比好之解析专家时,承诺,创造力,商业头脑,演讲能力及关系技巧,直觉还是关键因素,但这些元素往往会受人们看并无重要

 

可以的剖析专家关注的是如何完善业务,而不要是的全面,知道分析结果何时已得以支撑业务决策是殊重大的,然后着手解决下一个题材

 

精的剖析专家见面管所用的数码准确度和表决粒度完美的做起来,不完善的多少还是可使得的答多术问题

 

无限精彩之辨析专家不仅是掌握数据的科学家要多少处理的艺术家,这同沾可以被洋洋人数奇怪,不要低估艺术才华对于精美分析专家的关键程度

 

怎做大好的分析团队

大多数集体先从分布式的,职能型的解析团队组织开始,时间漫长了后,可以转化成集中式的要么混合式的团结构

 

足考虑以矩阵式结构来做分析类,矩阵式结构使发生一个有力的领导来监督每个类别成员的干活

 

解析管理人员要维持友好的技能,要能像星球大战里的尤达大师大洋,既可亲上阵,又可以管理组织

 

 

季片 整合:分析文化

促进分析创新

分析创新待考察于分析新的数据源,解决新的题材或双方的结,它不是对准现有过程要方法的大概扩展

 

冲定义,创新性的想法颇具高风险,并且无法被完全的知情,需要用迭代,灵活的方式教创新分析,并以执行进程根据需要不停地调整计划

 

永不设分析创新为主涉及生产过程,也并非为那个对证明了之原型进行完全的支出,分析创新中心的天职范围才限于原型

 

快速识别超出分析创新为主被的砸,这样分析团队可以延续研究其他的题材

 

营造创新和探究之文化氛围

起三条广为应用之法,适用于高级分析和充分数目,它们是:(1)打破思维一贯,(2)形成相关反应,(3)统一行动目标

 

依据思维一贯做事不显现得不得了,但是,你不能不常常挑战你的思一贯以确定之前的限制,这样才会幸免不必要的牢笼了团结

 

毫不把眼光集中在提升速度及,还要初步找以前非克下如现行足采取的初分析

 

也目标设定优先级也达愿景所动的韬略暨战术有酷充分的熏陶。确保于解析起来前就生矣肯定的优先目标