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

熱門文章> 數據庫工程師需要掌握哪些技術 >

數據庫工程師需要掌握哪些技術

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

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

數據庫工程師需要掌握哪些技術數據庫工程師需要掌握哪些技術

1.數據庫工程師需要掌握哪些技術

其主要概念有:

  • 關聯模型
  • 資料正規化處理
  • 主關鍵字
  • 指數
  • 資料庫交易
  • 重復
  • 分割

關聯模型

       Relationalmodel是對數據進行結構化和管理的一種方法。

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

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

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

資料正規化處理

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

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

       正常化一般有兩種方法:

  • 綜合(創建一個以前沒有的新域)
  • 拆分(通過拆分更小的部分改進現有數據結構)

主關鍵字

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

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

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

指數

       索引是數據庫內部的一種特殊對象,它可以幫助在數據內部進行快速搜索。

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

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

資料庫交易

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

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

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

重復

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

       復制可以使我們在主副本數據出現問題時避免數據丟失。

       資料庫復制優點:

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

分割

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

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

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

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

  • 客戶程序執行。
  • 實現數據庫。數據庫本身決定在哪個節點上存儲數據,當然,這種操作不能自動完成,需要事先進行配置。
  • 利用外部協調服務。

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

[免責聲明]

文章標題: 數據庫工程師需要掌握哪些技術

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

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