国产精一区二区_午夜视频99_免费白白视频_中文字幕一区免费

熱門文章> 數(shù)據(jù)庫工程師需要掌握哪些技術 >

數(shù)據(jù)庫工程師需要掌握哪些技術

36氪企服點評小編
2021-06-23 16:43
805次閱讀

       要想成為一名數(shù)據(jù)工程師,你必須理解數(shù)據(jù)庫的主要概念。這一概念不僅適用于數(shù)據(jù)工程師,也適用于使用數(shù)據(jù)庫的專業(yè)人士:數(shù)據(jù)科學家、機器學習工程師、軟件開發(fā)者等。接下來,小編就將介紹數(shù)據(jù)庫工程師需要掌握哪些技術,一起來看看吧。

數(shù)據(jù)庫工程師需要掌握哪些技術數(shù)據(jù)庫工程師需要掌握哪些技術

1.數(shù)據(jù)庫工程師需要掌握哪些技術

其主要概念有:

  • 關聯(lián)模型
  • 資料正規(guī)化處理
  • 主關鍵字
  • 指數(shù)
  • 資料庫交易
  • 重復
  • 分割

關聯(lián)模型

       Relationalmodel是對數(shù)據(jù)進行結構化和管理的一種方法。

       該模型中的數(shù)據(jù)被組織成表格。每一個表都有自己的模式,這意味著它有一個預定義的列名,只能把滿足模式的數(shù)據(jù)寫到表中。每個列有一個數(shù)據(jù)類型(數(shù)字、字符串、Boolean等)。表格中的列通常稱為字段,行稱為記錄。

       根據(jù)原來的數(shù)據(jù)庫理論,表格被稱為“關系”,關系模型就是從這里產(chǎn)生的。別把這個定義和表之間的關系搞混了,表之間我們通常用鍵來定義這個關系。在本文稍后的部分中,我們討論鍵。

       最終,遵循該模型的數(shù)據(jù)庫被稱為關系型數(shù)據(jù)庫,它使用SQL(結構化查詢語言)來訪問存儲的數(shù)據(jù)。

資料正規(guī)化處理

       正規(guī)化(Normalization)是使數(shù)據(jù)適合于關系數(shù)據(jù)庫的過程。

       有時候,標準化就是刪除數(shù)據(jù)冗余的過程,這很容易理解和實現(xiàn)。正常化可以幫助消除數(shù)據(jù)冗余,提高數(shù)據(jù)完整性,簡化數(shù)據(jù)結構,幫助發(fā)現(xiàn)錯誤。

       正常化一般有兩種方法:

  • 綜合(創(chuàng)建一個以前沒有的新域)
  • 拆分(通過拆分更小的部分改進現(xiàn)有數(shù)據(jù)結構)

主關鍵字

       是表中記錄的唯一標識符。

       如果希望建立另一張表的關系,您必須首先創(chuàng)建主鍵。如果表字段包含對其他表的引用,那么這個字段就是外鍵。

       假定有一個客戶表,其中包含customer_id字段,這是該表的主鍵。與此同時,orders還包含customers_id字段,并引用customers表,這是orders表的外鍵。

指數(shù)

       索引是數(shù)據(jù)庫內(nèi)部的一種特殊對象,它可以幫助在數(shù)據(jù)內(nèi)部進行快速搜索。

       設想一下,你有一個包含數(shù)百萬條記錄的大表,需要尋找滿足特定條件的子集,比如,某個客戶有多少訂單。在一個表中插入記錄是無序的,因此,為了執(zhí)行搜索,數(shù)據(jù)庫需要完全掃描,這意味著從開始到結束都要逐行遍歷,直到找到合格的記錄。

       要加速這個過程,我們可以為字段創(chuàng)建索引,該字段存儲字段中每個值的位置。在用索引列執(zhí)行查詢時,數(shù)據(jù)庫首先會搜索索引來查找數(shù)據(jù)的位置,然后根據(jù)位置提取所需的行。

資料庫交易

       交易(transaction)通常指不可分的工作單位。這是必要的,當我們希望在一個數(shù)據(jù)庫中執(zhí)行多個操作,并且希望確保所有操作都成功或失敗。

       數(shù)據(jù)庫交易可理解為銀行轉帳,當您需要將資金從一個賬戶轉到另一個賬戶時,需要三個步驟:

  • 核對第一個帳戶的余額。
  • 將從帳戶1中扣除所需金額。
  • 向帳戶2添加轉帳金額。
  • 若申請已啟動轉賬流程,則必須確保所有三項操作均成功或均失敗。

重復

       Replication將數(shù)據(jù)庫與其他節(jié)點或服務器同步,換句話說,復制就是將數(shù)據(jù)從一個源復制到另一個源。

       復制可以使我們在主副本數(shù)據(jù)出現(xiàn)問題時避免數(shù)據(jù)丟失。

       資料庫復制優(yōu)點:

  • Replication數(shù)據(jù)庫是主數(shù)據(jù)庫的完整副本。
  • 立即向其他副本傳播主數(shù)據(jù)庫的更改。
  • 所有請求都可以在主數(shù)據(jù)庫關閉時重定向到副本。
  • 主要數(shù)據(jù)庫執(zhí)行添加/更新/刪除操作,副本數(shù)據(jù)庫負責處理查詢操作,該模式支持負載平衡。
  • 復制有兩種工作模式:同步和異步。

分割

       資料庫分片(Shiting)是指以某種方式拆分表格中的資料,并將其傳送給不同節(jié)點。

       切分是一種水平切分技術。把一個表劃分為幾個邏輯分區(qū),每個分區(qū)的模式都相同(因為我們用行而不是用列來劃分數(shù)據(jù)),每個分區(qū)都是原始表的邏輯分區(qū)。

       當節(jié)點之間進行分布時,它們變成物理碎片,一個數(shù)據(jù)庫節(jié)點可以容納多個邏輯碎片。

       怎樣實施分割?常見的三種方法:

  • 客戶程序執(zhí)行。
  • 實現(xiàn)數(shù)據(jù)庫。數(shù)據(jù)庫本身決定在哪個節(jié)點上存儲數(shù)據(jù),當然,這種操作不能自動完成,需要事先進行配置。
  • 利用外部協(xié)調(diào)服務。

       可以使用多種方法來實現(xiàn)切分,但您必須在所有情況下提供分發(fā)密鑰。這個鍵決定了數(shù)據(jù)在集群中的分布方式。分配鍵的兩種常用方法是基于散列的鍵和基于值的鍵。以上就是數(shù)據(jù)庫工程師需要掌握哪些技術的內(nèi)容,感謝您的閱讀。

[免責聲明]

文章標題: 數(shù)據(jù)庫工程師需要掌握哪些技術

文章內(nèi)容為網(wǎng)站編輯整理發(fā)布,僅供學習與參考,不代表本網(wǎng)站贊同其觀點和對其真實性負責。如涉及作品內(nèi)容、版權和其它問題,請及時溝通。發(fā)送郵件至36dianping@36kr.com,我們會在3個工作日內(nèi)處理。

相關文章
最新文章
查看更多
關注 36氪企服點評 公眾號
打開微信掃一掃
為您推送企服點評最新內(nèi)容
消息通知
咨詢?nèi)腭v
商務合作