• <fieldset id="2mqau"></fieldset>
    <tbody id="2mqau"><tfoot id="2mqau"></tfoot></tbody>
    <option id="2mqau"><noframes id="2mqau"></noframes></option>
  • <input id="2mqau"></input>
  • 第五周----上課 Hbase shell

    2019-10-20 09:11:57


    image.png


    深圳塑膠模具廠,深圳市模具廠,深圳模具廠,深圳模具,深圳塑膠模具


    #hbase shell   

      進入 Hbase 的操作界面


    - 創(chuàng)建表 :    creat  ‘表名稱’ , ‘列名稱1’,‘列名稱2’,‘列名稱n'

    -添加記錄:   put  ’表名稱‘,’行名稱‘,’列名稱‘,’值‘

    -查看記錄: get '表名稱’,‘行名稱’

    -刪除記錄: delete  ‘表名稱’,‘行名稱’,‘列名稱’

    -刪除一張表: 分布式數(shù)據(jù)庫需要多步完成  

                             1、  disable  '表名稱’

                             2、 drop ‘表名稱’

    -查看所有的記錄:                               scan  ’表名稱‘

    -查看某個表,某個列的所有數(shù)據(jù):      scan  ’表名稱‘,{’列名稱‘}


    一般操作:

    1、  啟動 Hbase     #Hbase shell

    2、  看有多少內容    > list

    3、  看狀態(tài)               > status

    4、  Hbase 的版本    > version

    5、 要處理增刪改查的操作:

                                                      創(chuàng)建           > create ‘member','member_id','address','info'

                                                      查詢           > describe 'member'

         面向列族的,可以添加列族                   > alter 'member','id' 

         修改一個列族     > alter 'member',{NAME=>'member_id',method=>'delete'}                     刪除一個列族     > delete 'member' ,' debugo','info:age'  

         查看列的信息     >  get 'member','debugo','info:age'

         刪除整行信息     > deleteall 'member',’debugo‘

         查看整行信息     >  get  ’member','debugo' 

     查看是不是被禁用  >  is_enabled 'menber'

                                         is_disabled 'member'

     判斷是不是存在表  > exists 'member'   

        刪除表                 >disbale 'member'

                                       drop 'member'


    9、插入數(shù)據(jù)          >  put 'member' ,'debugo','id','11'

                                  >  put 'member' ,'debugo','info:age','27'

                                  > put  'member'.'debugo','info:birthday','1987-04-04'

                                  > put  'member'.'debugo','info:industry','it'

                                  > put  'member'.'debugo','info:city','beijin'

                                  .........        表              行            列族:列名稱

                                                  表             行            列族:


    10、 統(tǒng)計行數(shù)      > count ‘member’

    11、獲取一個ID的所有數(shù)據(jù):    > get  'member','sariel'

    12、查詢 一個ID 的一個列族中的所有信息    > get 'member','sariel','info‘

    13、查詢整個表格的所有信息   > scan  ’member'

    14、掃描整個列族  scan  ‘member',{column=>'info'}  

    15、指定掃描整個列            scan  ‘member',{column=>'info:birthday'}


    對于 Hbase 中的    增                              刪                      改                    查                        統(tǒng)計

                               create文件              delete記錄          alter記錄          list文件                  count 

                                 put 記錄               disable文件                                  get記錄

                                                               drop文件                                   scan記錄

                                                                                                                 status系統(tǒng)

                                                                                                                version系統(tǒng)

                                                                                                                describe記錄

                                                                                                                   exists文件

     

    hbase中沒有rename,所以改表名要很復雜,重命名主要通過hbase的快照功能來實現(xiàn)。

    -------------------------------------------------------------------------------------------------------------

    10:30-11:15 休息       這一節(jié): 

    https://pan.baidu.com/s/1u1B8fnMgVGJK5eZdoiXpqg      下載

    scala-2.11.8.msi   jdk-7windowx


    安裝  


    image.png

    JAVA 環(huán)境變量設置


    image.png



    下載軟件, 安裝到C盤   prografile /java  


    目前學習 Scala  的軟件, 安裝和配置 


    image.png


    image.png

    image.png


    image.png

    image.png




    Spark  的源碼, 全部都是   Scala來寫的。

    Scala 也是面對函數(shù)的,面對對象的。

              java  要寫  200-300行 ,  而 scala 只需要 2行, 也可以調取Java的接口。


    Scala 語法 :      


    VAL 聲明是不可變的變量,

    VAR 聲明是可變的變量。


    DOS>      scala> val content:String = "hello world"

                               val x,y =100

                               不可變的變量。


          在 Scala中 一切都可以看作是對象。


    Scala>     a+b          =======      a.+(b)

                    1 to 10     =======      1.to(10)                        這里的  。  指的就是對象

                    a func b   =======       a.func(b)


                    val x = if (a>0) 1 else -1

                    val b =if (x>0) 1 esle "error"      這個數(shù)據(jù)類型不一致, 也可以

                    邏輯判斷的結果賦值給變量,


                    val c = if (x>0) 1 else ()           

     

                   for (i <- 0  to 5 )  println(i)    這樣就可以打印出來。


                   for(i<- 0 unitl 10) println(i)


                   for (i <- 1 to 3; j<-1 to 3 if  i!=j) {pringtln((10*i+j)+" " }    循環(huán)增加條件變量


                   for (i<-1 to 10 if i%2==0)yield i


                   for (i<-1 to 10)yield i%3


    --------  下午   

    流程控制   

         1、條件判斷      val a = if (x>0) 1 else -1

                                   val b = if (x>0) 1 else "error"

                                   val c = if (x>0) 1 esle ()

          2、for 循環(huán)      for (i <- 0 to 5 ) println(i)

                                  for  (i <- 0 until 10) println(i)

                                  for (i <- 0 to 3;j <-1 to 3 if  i != j ){pringln((10*i)+j)+" "}

                                  for (i <-1 to 10 if i%2==0)yield i

                                  for ( i <-1 to 10) yield i%3

    這些是上午學習過的, 接下來,我們學習函數(shù)

    image.png

              def  fun(x:int):int = X+1            這樣就定義好了函數(shù);

              def fun(a:int,b:int=100)=a+b        默認參數(shù)的定義;

              def sum(args : int*)={

                               var result = 0  

                               for (i<-args) result +=i 

                               result

                               }


    image.png


    def fun2 (x:int):unit=(

    println(x)


    image.png


    沒有返回值的函數(shù)。      

    def  fac(n:int):int={if n <=0)1 else n*fac(n-1)

      

    遞歸函數(shù), 需要指定 輸入的類型  以及 結果的類型。


    注意:參數(shù)類型必須聲明, 返回值類型可以不聲明, 函數(shù)是遞歸的, 這必須聲明返回值類型。


    def fac(n:int):int= {

          if (n<=0) 1 else n*fac(n-1)

          }


    scala 函數(shù)定義規(guī)則: 

      1、以 def 開頭

      2、參數(shù)類型必須指定, 

       3、返回值的類型可以不指定。 


    沒有定義函數(shù)名字的函數(shù), 這是匿名函數(shù)

         (x:int)=>x+1

    可以將這個沒有名字的函數(shù)賦值給一個變量  

    val fun = (x:int) => x+1

    image.png


    接下來, 定義數(shù)組 

    val  arr1 = new array[int](3)    定長數(shù)組

                                                    字符串數(shù)組

    image.png

    image.png

    可以修改數(shù)組中的值

    arr3(1)="storm"      可以修改數(shù)組3種的 1單元的值 


    變長數(shù)組   

    image.png

    先要做這個 插件引入。

    image.png

    沒有 new  ,需要括號, 有new , 不需要括號。


    image.png


    image.png



    image.png

     image.png

    image.png

    image.png


    image.png

    image.png


    增強for循環(huán), 更加簡潔

    image.png

    image.png


    通過 yield  賦值給 e

    image.png


    image.png

    求和 ,   排序 , 最小值 ,  取值,  



    正序

    image.png

    倒序

    image.png



    image.png


    映射         Key   val      

    image.png

    image.png

    兩種方法的映射

    image.png



    取值:

    image.png

    image.png



    末尾追加

    image.png

    image.png

    刪除

    image.png


    鍵值對的交換   , 得到 鍵和值  KEY -  VAL 的前后交換

    image.png

    image.png


    元組  , 不同類型的元素集合

    image.png

    image.png


    生成大小寫分片元組

    image.png


    ------繼續(xù)   , 面向對象的 類的定義


    image.png


    image.png


    重載的構造器image.png


    有參和無參的構造器

    image.png


    接下來講   :object  

    --------------------------------------------------------------------------

    image.png

    可以使用 APPLY 實現(xiàn)。

    object 對象   與  apply() 方法

    image.png

    這個是  scala實現(xiàn)的 單一模式  

    image.png

    這個是  伴生對象和單例模式結合起來的東西


    樣例類和模式匹配 , 這個是 scala獨立的東西, 這個是可以用于模式匹配的。

    樣例對象是單例的, 也可以用于模式匹配。

    類似與  java 中  switch-cash 的加強版。

    image.png

    case class user (name: string,psw:string){}

    image.png

    如下方式, 可以用于搜索引擎中,  是比較簡單的

    image.png





    Option(T)類,  理解為一個容器 

    image.png

    還有一些高級特性, 比如說  高階函數(shù), 等于是函數(shù)的函數(shù)。 比如:

    def fun(f:double =>double)={

    f(100)

    }

    fun(X:double)=>28*x

    fun(sqrt_)

    val fun:int => (int,int)={

    x=>(x,x*2)

    }

    fun(100)


    Val fun:(x:double)=》(double,Int)={

    (x,y)=>(y,x)

    }

    image.png

    Scala 中特有的  柯里化

    image.png

    例子:

    def  m(x:Int)=(y:int)=>x*y


    Scala 中還有  隱式轉換和隱式參數(shù)


    其他:

    包   的引入    import      , private    都是  Scala的內容





    首頁
    產(chǎn)品
    新聞
    聯(lián)系
    国产精品美女久久久久AV爽,俺去俺来也在线WWW色官网,成年美女黄的视频网站,正在播放无套少妇出租屋 凤台县| 保德县| 阿瓦提县| 洛阳市| 宁明县| 长治县| 叶城县| 新宾| 柳河县| 仁布县| 乌拉特前旗| 辉县市| 布尔津县| 东城区| 武威市| 赤水市| 房产| 平定县| 张北县| 嵊泗县| 峡江县| 冀州市| 凉山| 北海市| 石屏县| 枣阳市| 岳普湖县| 昆明市| 华坪县| 平利县| 荣昌县| 景泰县| 康乐县| 泾源县| 永济市| 罗城| 年辖:市辖区| 棋牌| 大港区| 景泰县| 两当县|