• 雏鹰训练营第三次作业


    一、热身

    1、安装VMware

    https://pan.baidu.com/s/1G_vOoWCn-8wG4SAgRkeAlw#list/path=%2F
    提取码:hyn2

    2、安装ubuntu系统

    我安装的是16.04.5

    安装成功

    3、写helloworld程序

    首先在ubuntu终端编程的需要vim编辑器和gcc
    安装vim编辑器
    终端输入
    sudo apt-get install vim


    这里检测到gcc已经安装就无需再次安装了

    安装gcc:
    sudo apt-get install gcc

    以上准备完之后,开始写程序,这里我用c语言。
    先打开编辑器(输入vim helloworld.c)


    按下i键进入insert模式,开始编辑。
    代码如下:

    最后按esc键退出,并按:wq保存代码。

    二、新技术

    1、了解sketch

    • **定义:Sketch是一种紧凑的用于流量数据统计亚线性数据结构,其使用哈希将数据映射到Sketch。 **
    • **优点:能进行大流和异常流的检测 不占用过多的计算和空间资源 **
      (因为采用抽样技术选取部分报文来推断网络流量总体的性能参数)
    • 缺点:数据的不完整性对测量结果的准确性造成了很大影响

    2、count-min-sketch

    • 算法:

    创建一个长度为 x 的数组,用来计数,初始化每个元素的计数值为 0;
    对于一个新来的元素,哈希到 0 到 x 之间的一个数,比如哈希值为 i,作为数组的位置索引;
    这是,数组对应的位置索引 i 的计数值加 1;
    那么,这时要查询某个元素出现的频率,只要简单的返回这个元素哈希望后对应的数组的位置索引的计数

    • 注意事项:

    对于低频的元素,估算值相对的错误可能会很大。

    3、在虚拟机跑通count-min-sketch

    **在虚拟机中跑通cms前,需先将测试文件导入虚拟机里,这里就涉及到共享文件,安装vmtools等。
    方法参考:https://www.cnblogs.com/woodyoilove/p/8479458.html
    我的安装过程

    共享成功

    最后,这是我在GitHub上找到cms.c的代码

    最后没跑出来,error是找不到countminsketch这个函数
    原因:没有安装countminsketch。
    终极原因:我还没找到安装cms的方法。

  • 相关阅读:
    链表逆序输出 ---九度1511
    java 通过ssh连接linux服务器的测试代码
    C/C++时间函数总结
    C,C++,windows api, linux api 操作文件总结
    基于大数据计算思想的分布式数据库
    手机定位的方式
    矩阵取数问题
    回文字符串
    linux shell重定向总结
    apache flink 入门
  • 原文地址:https://www.cnblogs.com/211806152Erika/p/11941575.html
Copyright © 2020-2023  润新知