一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

白話數(shù)據(jù)產(chǎn)品(二)

 魔法小強(qiáng)圖書館 2018-07-25

作為數(shù)據(jù)產(chǎn)品,一項(xiàng)基礎(chǔ)工作即是為需求方取數(shù)據(jù),一般來(lái)說(shuō)簡(jiǎn)單的取數(shù)數(shù)據(jù)產(chǎn)品是要兼顧的,復(fù)雜的取數(shù)才會(huì)升級(jí)到研發(fā)來(lái)取,畢竟研發(fā)們都很忙嘛,小事我們自己也可以搞定的。

一、SQL思路3分鐘入門

SQL可以實(shí)現(xiàn)的功能很多,建表、刪表、插入數(shù)據(jù)、查詢數(shù)據(jù)…這里主要介紹查詢數(shù)據(jù)的SQL一般寫法,SQL語(yǔ)言的主要邏輯也是在查詢語(yǔ)句這一塊。

傳統(tǒng)MySQL類數(shù)據(jù)庫(kù)或大數(shù)據(jù)中,用到的Hive數(shù)據(jù)庫(kù)是按行索引的,可以理解為一條一條的記錄,而且大數(shù)據(jù)用到的HSQL其實(shí)跟傳統(tǒng)SQL語(yǔ)句基本是一致的。

我們常見(jiàn)的對(duì)數(shù)據(jù)的處理主要是這么幾種:根據(jù)條件篩選數(shù)據(jù),將記錄字段橫向合并,將記錄縱向合并,而這對(duì)應(yīng)的就是SQL語(yǔ)句中的查詢/子查詢、各種JOIN、UNION ALL。那種看似很長(zhǎng)很復(fù)雜的SQL代碼,其實(shí)也就是這三種操作的結(jié)合體。

如下圖所示:可以理解為數(shù)據(jù)庫(kù)查詢就是將多份數(shù)據(jù)查出來(lái),互相關(guān)聯(lián)合并,生成一張新的表單,然后可以在新的表單的基礎(chǔ)上進(jìn)行查詢或者再跟其他數(shù)據(jù)關(guān)聯(lián)合并。

  • 子查詢:通過(guò)條件從一張或多張表中選取出數(shù)據(jù),你可以理解多張表的查詢,其實(shí)就是像圖中所示加了一些join和union all的連接操作。如果只是從一張表中查詢,那么就只用關(guān)心這張表的記錄結(jié)構(gòu),是否有重復(fù)記錄等。
  • JOIN:相當(dāng)于是對(duì)兩份數(shù)據(jù)進(jìn)行取并集、交集或其他集合方式的操作,是對(duì)兩張表的字段進(jìn)行了橫向拼接,需要指定拼接的連接關(guān)系是用的哪個(gè)字段。比如:同一個(gè)用戶,在一張表里記錄了他的年齡,在另一張表里記錄了他的性別,那么通過(guò)join操作就可以把這兩個(gè)字段放到同一張新的表中,然后可以在這張新的表的基礎(chǔ)上再進(jìn)行其他操作。
  • UNION ALL:相當(dāng)于是把記錄縱向疊加,比如:因?yàn)閿?shù)據(jù)量比較大,業(yè)務(wù)庫(kù)進(jìn)行了拆表操作,將1-6月份數(shù)據(jù)放在表A,將7-12月份數(shù)據(jù)放在表B。因?yàn)槭峭瑯拥挠涗?,字段都是一致的,通過(guò)union all就可以做成一張新的表,同時(shí)包含A和B的數(shù)據(jù)在里面。

這里我都沒(méi)有使用具體的SQL舉例,因?yàn)檎归_(kāi)來(lái)將可能會(huì)有很大的篇幅。想要進(jìn)一步深入的同學(xué),可以去查看相關(guān)的SQL教程,按照上面介紹的思路去學(xué)習(xí),就不會(huì)感到迷茫了。

2. HSQL vs SQL

數(shù)據(jù)工作中,既要用SQL語(yǔ)句去業(yè)務(wù)庫(kù)里查詢對(duì)比數(shù)據(jù),又要會(huì)使用HSQL在自己的平臺(tái)(一般是Hue中的Hive)中查詢。兩種語(yǔ)言除了個(gè)別函數(shù)不通用,基本是一致的。

這里舉一些例子說(shuō)明:

  • Hive中不支持not in操作,一般使用not exists代替,或者left outer join。
  • Hive的切片機(jī)制(上一篇有解釋)導(dǎo)致取數(shù)需要加上條件使用的是哪天的數(shù)據(jù)。
  • Hive的分層機(jī)制(同樣上一篇有解釋)導(dǎo)致在不同層級(jí)進(jìn)行取數(shù),邏輯是大不相同的。ODS層同一條id記錄可能有大量不同時(shí)間更新的“重復(fù)數(shù)據(jù)”,要注意進(jìn)行按一定順序的去重處理。
  • Hive中某些層級(jí)的數(shù)據(jù)中對(duì)時(shí)間的存儲(chǔ)可能為unix timestamp格式,表現(xiàn)為一長(zhǎng)串?dāng)?shù)字而不是常見(jiàn)的時(shí)間格式,需要在使用中進(jìn)行轉(zhuǎn)化。
  • Hive中可以使用多種數(shù)據(jù)計(jì)算框架,比如:MapReduce、Spark等,在不同情況下選用可以獲得更好的效率。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    欧美精品久久一二三区| 亚洲国产欧美久久精品| 欧美精品久久99九九| 青青操日老女人的穴穴| 九九热国产这里只有精品| 国产91色综合久久高清| 日韩女优视频国产一区| 在线免费看国产精品黄片| 久久香蕉综合网精品视频| 在线观看视频日韩成人| 人妻内射在线二区一区| 日韩一区二区三区久久| 国产日韩欧美专区一区| 国产人妻精品区一区二区三区| 亚洲欧美日韩精品永久| 日本加勒比中文在线观看| 嫩草国产福利视频一区二区| 欧美激情区一区二区三区| 视频在线免费观看你懂的| 国产精品熟女乱色一区二区| 九九热这里有精品20| 99秋霞在线观看视频| 黄片在线免费看日韩欧美| 伊人久久五月天综合网| 国产成人精品一区二三区在线观看| 国产精品免费视频久久| 超薄丝袜足一区二区三区| 成人国产激情福利久久| 伊人色综合久久伊人婷婷| 日韩精品综合福利在线观看| 色好吊视频这里只有精| 日韩一区二区三区嘿嘿| 欧洲日韩精品一区二区三区| 成人午夜爽爽爽免费视频| 一区二区三区国产日韩| 国产超薄黑色肉色丝袜| 麻豆看片麻豆免费视频| 国产精品一区二区视频| 老鸭窝精彩从这里蔓延| 欧洲亚洲精品自拍偷拍| 日韩人妻少妇一区二区|