ORM
"對象-關系映射"(Object/Relational Mapping) 的縮寫
面向對象編程和關系型數據庫,都是目前最流行的技術,但是它們的模型是不一樣的。
面向對象編程把所有實體看成對象(object),關系型數據庫則是采用實體之間的關系(relation)連接數據。很早就有人提出,關系也可以用對象表達,這樣的話,就能使用面向對象編程,來操作關系型數據庫。
ORM 使用對象,封裝了數據庫操作,因此可以不碰 SQL 語言。開發者只使用面向對象編程,與數據對象直接交互,不用關心底層數據庫。
其中,Node常用的ORM庫是Sequelize,Sequelize 是一個基於Promise 的Node.js ORM,目前支持Postgres、MySQL、SQLite 和Microsoft SQL Server。 它具有強大的事務支持,關聯關系、讀取和復制等功能。
參考:ORM 實例教程
DAL
數據訪問層(Data Access Layer),其功能主要是負責數據庫的訪問。簡單地說就是實現對數據表的Select(查詢)、Insert(插入)、Update(更新)、Delete(刪除)等操作
IDL
接口描述語言(Interface description language),縮寫IDL,是一種聲明性語言。
在Thrift RPC中,是客戶端和服務端共用的接口描述文件。