oracle批量update数据_东方国信大数据面试真题
東方國(guó)信
學(xué)長(zhǎng)1
Hadoop工程師筆試題(金融事業(yè)部)
1)技術(shù)基礎(chǔ)題(共十題,每題5分)
(1)列舉在Linux系統(tǒng)下可以在看系統(tǒng)各項(xiàng)性能的工具(區(qū)分CPU、內(nèi)存、硬盤、網(wǎng)絡(luò)等)
(2)HDFS寫入數(shù)據(jù)的實(shí)現(xiàn)機(jī)制
(3)Yarn支持的調(diào)度器及管理硬件資源種類
(4)如何決定一個(gè)job的map和reduce的數(shù)量
(5)在map、reduce 迭代模型中,如何實(shí)現(xiàn)數(shù)據(jù)去重
(6)簡(jiǎn)單描述HBase的rowkey設(shè)計(jì)原則
(7)HBase海量歷史數(shù)據(jù)入庫方案
(8)Hive中內(nèi)部表與外部表的區(qū)別
(9)Hive中UDF、UDAF、UDTF的區(qū)別
(10)Spark Job運(yùn)行架構(gòu)
2)場(chǎng)景設(shè)計(jì)題(共二題,每題10分)
假設(shè)海量小文件使用HBase進(jìn)行管理,要求對(duì)一批文件進(jìn)行批量存儲(chǔ),并支持對(duì)單文件進(jìn)行更新操作,保留歷史版本信息。查詢時(shí)可根據(jù)批次號(hào)獲取該批次的全部文件內(nèi)容,也可根據(jù)文件標(biāo)識(shí)可獲取單文件內(nèi)容,支持最新版本及所有版本查詢。根據(jù)業(yè)務(wù)場(chǎng)景,設(shè)計(jì)HBase存儲(chǔ)方案。
學(xué)長(zhǎng)2
大數(shù)據(jù)工程師筆試題
1)理論題
(1)HDFS的存儲(chǔ)機(jī)制是什么?
(2)mapreduce的工作原理,請(qǐng)舉個(gè)例子說明mapreduce是怎么運(yùn)行的?Combiner的作用?
(3)簡(jiǎn)單介紹對(duì)Hadoop的理解,包括系統(tǒng)架構(gòu)和Hadoop整個(gè)生態(tài)系統(tǒng),詳細(xì)介紹工作中曾用到過的?
(4)對(duì)流式計(jì)算storm的認(rèn)識(shí)?其與Spark streaming有何區(qū)別?項(xiàng)目中應(yīng)用到storm的應(yīng)用場(chǎng)景簡(jiǎn)介。
2)實(shí)踐題
(1)利用Spark或者mapreduce或者h(yuǎn)ive(要求建表)編寫搜索日志分析:用戶在0點(diǎn)12點(diǎn)對(duì)各個(gè)APP的搜索量。搜索日志存放路徑為/input/data.txt.文件用豎線分割,第一列為時(shí)間字段,第三列為APP名稱。字段名及字段類型可自己定義。
日志內(nèi)容如下:
00:00:0012982199073774412|[網(wǎng)易新聞]|8|3
00:01:00|0759422001082479|[今日頭條|1|1
13:01:00|2982199073774412|[網(wǎng)易新聞]|1|1
14:30:00|07594220010824791|今日頭條]1|1
(2)現(xiàn)有圖書管理數(shù)據(jù)庫的三個(gè)數(shù)據(jù)模型如下:
圖書(數(shù)據(jù)表名:BOOK)
讀者(數(shù)據(jù)表名:READER)
借閱記錄(數(shù)據(jù)表名:BORROW LOG)
(1)創(chuàng)建圖書管理庫的圖書、讀者和借閱三個(gè)基本表的表結(jié)構(gòu)。請(qǐng)寫出建表語句。(Oracle實(shí)現(xiàn))
(2)找出姓李的讀者姓名(NAME)和所在單位(COMPANY)。(Oracle 實(shí)現(xiàn))
(3)查找“高等教育出版社”的所有圖書名稱(BOOK_NAME)及單價(jià)(PRICE),結(jié)果按單價(jià)降序排序。(Oracle實(shí)現(xiàn))
(4)查找價(jià)格介于10元和20元之間的圖書種類(SORT)出版單位(OUTPUT)和單價(jià)(PRICE),結(jié)果按出版單位(OUTPUT)和單價(jià)(PRICE)升序排序。(Oracle 實(shí)現(xiàn))
(5)查找所有借了書的讀者的姓名(NAME)及所在單位(COMPANY)。(Oracle實(shí)現(xiàn))
(6)求”科學(xué)出版社”圖書的最高單價(jià)、最低單價(jià)、平均單價(jià)。(Oracle實(shí)現(xiàn))
(7)找出當(dāng)前至少借閱了2本圖書(大于等于2本)的讀者姓名及其所在單位。(Oracle實(shí)現(xiàn))
(8)考慮到數(shù)據(jù)安全的需要,需定時(shí)將“借閱記錄”中數(shù)據(jù)進(jìn)行備份,請(qǐng)使用一條SQL語句,在備份用戶bak下創(chuàng)建與“借閱記錄”表結(jié)構(gòu)完全一致的數(shù)據(jù)表BORROW_LOG_BAK.井且將“借閱記錄”中現(xiàn)有數(shù)據(jù)全部復(fù)制到BORROW_1.0G_ BAK中。(Oracle實(shí)現(xiàn))
(9)現(xiàn)在需要將原Oracle數(shù)據(jù)庫中數(shù)據(jù)遷移至Hive倉(cāng)庫,請(qǐng)寫出“圖書”在Hive中的建表語句(Hive實(shí)現(xiàn),提示:列分隔符|;數(shù)據(jù)表數(shù)據(jù)需要外部導(dǎo)入:分區(qū)分別以month_part、day_part 命名)
(10)Hive中有表A,現(xiàn)在需要將表A的月分區(qū) 201505 中 user_id為20000的user_dinner字段更新為bonc8920,其他用戶user_dinner字段數(shù)據(jù)不變,請(qǐng)列出更新的方法步驟。(Hive實(shí)現(xiàn),提示:Hlive中無update語法,請(qǐng)通過其他辦法進(jìn)行數(shù)據(jù)更新)
7.SQL優(yōu)化題
(1)SELECT TAB_NAME FROM TABLES WHERE TAB_NAME =
(SELECT TAB_NAME FROM TAB_COLUMNS WHERE VERSION=604)AND DB_VER=(SELECT DB_VER FROM TAB_COLUMNS WHERE VERSION = 604),
考慮到過多子查詢?cè)斐蒘QL性能下降,請(qǐng)針對(duì)上述SQL.語句進(jìn)行優(yōu)化,提升執(zhí)行效率(Oracle實(shí)現(xiàn))
UPDATE EMP SET EMP_CAT =(SELECT MAX(CATEGORY)FROM EMP_CATEGORIES),SAL_RANGE=(SELECT MAX(SAL RANGE)FROM EMP_CATEGORIES)WHERE EMP_DEPT = 0020,在含有子查詢的SQL語句中,過多對(duì)表的查詢會(huì)造成SQL性能下降,請(qǐng)針對(duì)上述SQL.語句進(jìn)行優(yōu)化,提升執(zhí)行效率(Oracle實(shí)現(xiàn))
EMP表數(shù)據(jù)量很大,user_id存在空值,以下語句會(huì)造成數(shù)據(jù)處理結(jié)果存儲(chǔ)傾斜,請(qǐng)?zhí)峁﹥?yōu)化策略解決數(shù)據(jù)傾斜問題。(注:數(shù)據(jù)傾斜由關(guān)聯(lián)字段空值引起,Hive實(shí)現(xiàn))
SELECT* FROM EXP A JOIN DEPT B ON A.USER_ID= B.USER_ID
(2)Hbase 常用基本命令,創(chuàng)建表,添加記錄,查看記錄,刪除記錄。
文章來源:尚硅谷大數(shù)據(jù)培訓(xùn)
總結(jié)
以上是生活随笔為你收集整理的oracle批量update数据_东方国信大数据面试真题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java推送数据给安卓,java – 如
- 下一篇: vi编辑器常用命令