MySQL+關聯(上)

weixin_34075551發表於2016-07-14

飛谷雲 MySQL 第3講

MySQL+表連線

課程概要:

  • 回顧第二講
  • 表關聯
  • 檔案關聯
  • 把資料匯入Spark-SQL (DataFrame)

一、回顧第二講

1、資料庫基本內容

      • 主鍵
      • 索引

2、資料匯入(出)

  • mysql
    • sql 命令
    • 工具(mysqldump,mysqlimport)
    • 客戶端
  • python
    • pd.read_csv(path/file)

二、表關聯

  • 表關聯型別
    • 內連線(內連線):
      • 僅顯示滿足條件的行
      • 下面兩種寫法:
      • From T1, T2 where T1.ID=T2.ID
      • From T1 inner join T2 ON T1.ID=T2.ID
  • 左連結(左連線):
    • 顯示左表T1中的所有行,並把右表T2中符合條件加到左表T1中
    • From T1 left outer join T2 ON T1.ID=T2.ID
  • 右連結(左連線):
    • 顯示左表T1中的所有行,並把左表T1中符合條件加到右表T2中
    • From T1 right outer join T2 ON T1.ID=T2.ID
  • 全連線
    -顯示左表T1、右表T2兩邊中的所有行,即把左聯結果表+右聯結果表組合在一起,然後過濾掉重複的
  • From T1 full outer join T2 ON T1.ID=T2.ID

三、檔案關聯

  • 檔案關聯型別:
    • 與表關聯一樣
      • 通過主鍵或一些欄位
    • 如何實現
      • 通過一列或多列

四、把資料匯入Spark-SQL

  • Spark-SQL 簡介:
    • Hadoop+MapReduce -> hive -> Shark -> Spark-SQL
  • RDDDataFrame
    • DataFrame 是以 RDD 為基礎的分散式資料集
    • DataFrame 類似於傳統資料庫的表
    • DataFrame 帶有 Schema後設資料(類似表結構資訊)
    • 操作 RDDDataFrame: Transformationaction
  • 生成 DataFrame
    • 初始化環境,例項化 SparkContext(sc)得SQLContext(物件)
    • 建立 DataFrame(源於 RDD或其他資料來源)
    • 呼叫 DataFrame操作

相關文章