




極光數據服務平臺提供將數據表生成API的能力,支持可視化向導模式或腳本模式快速開發(fā)API接口,支持關系型數據庫和NoSQL數據庫,可供內部和外部系統(tǒng)通過調用API接口獲取數據,對開放的API進行統(tǒng)一管理和發(fā)布。
【核心功能】:
【使用對象】:
1.1 使用流程
API發(fā)布者流程:
圖1-1-1
API使用者流程:
圖1-1-2
1.2 數據源管理
數據服務平臺提供數據源管理功能,數據開發(fā)工程將開發(fā)好的數據表登記到此平臺,業(yè)務部門只能管理各自的數據源。
圖1-2-1
一期數據源只支持pika和redis組件,后續(xù)會支持更多存儲組件(hbase/mysql/es等)
1.3 API開發(fā)
有了數據源后,業(yè)務開發(fā)就可以基于該數據源配置API接口入參和出參等信息,快速生成和發(fā)布API,提高業(yè)務交付效率。
圖1-3-1
通過數據服務開發(fā)的API,能規(guī)范API接口定義,統(tǒng)一管理各業(yè)務線的API接口。
1.4 API調試
配置API完成后,就進入到API調式階段,在這里業(yè)務開發(fā)可以輸入請求參數的值進行調用,查看請求詳情和返回內容,驗證API接口入參與出參是否符合預期。
圖1-4-1
1.5 API發(fā)布
API調試通過后,就可以發(fā)布API,這里需要走工單審批,審批通過后,會自動發(fā)布的API網關。
1.6 API網關
作為數據服務API網關,必須具備身份認證、權限驗證、限頻限流等功能。
1.7 API市場
API發(fā)布成功后,會上架到API市場,業(yè)務開發(fā)可以在API市場搜索和查看已經上架的API接口的入參、出參、錯誤碼、發(fā)布者等信息,還能申請某些API的權限,審批通過后就可以直接調用該API接口獲取數據。
圖1-7-1
圖1-7-2
1.8 服務概覽
平臺具備服務概覽功能,包含已發(fā)布的API數量、未發(fā)布API數量、調用API成功次數、調用API失敗次數、錯誤碼分布等統(tǒng)計功能,以及查看編輯且未發(fā)布(草稿狀態(tài))的API列表。
圖1-8-1
2.1 產品架構圖
圖2-1-1
數據服務平臺從產品層面,主要分為四層:
1、應用層:業(yè)務根據需求可以申請調用某些API獲取數據 。
2、功能層:平臺提供從API創(chuàng)建->API調試->API發(fā)布->API監(jiān)控等功能。
3、支撐層:支撐平臺使用的一些基礎功能,包括:用戶管理、角色管理、日志管理、工單審批等功能。
4、數據源層:數據存儲組件,包括:pika、redis、hbase、mysql、es等。
2.2 技術架構圖
圖2-2-1
數據服務平臺主要分為兩部分:
【管理端】:
管理端主要提供給業(yè)務開發(fā)使用,通過管理端,業(yè)務開發(fā)能夠快速完成配置數據源->開發(fā)API -> 發(fā)布API等操作。
【服務端】:
服務端提供對內或對外API接口訪問,這里又分為三層:
2.3 整體交互圖
圖2-3-1
API發(fā)布者通過管理端生成并發(fā)布API后,API接口元數據信息(數據源、入參、出參、QPS、QPD等信息)會被存放到redis,供認證中心、網關、可配置服務使用。
2.4 可配置化接口服務
在數據服務平臺一期建設中,提供基于pika和redis可配置化(NoSQL API)接口能力,其數據源是通過jcache代理層連接pika和redis,業(yè)務數據 以KV方式存儲,可按照簡單的key-value對外提供服務,把key作為入參,value作為出參來抽象對外提供的API接口。
可配置化接口服務對外提供一個抽象接口,在本抽象接口中按照接口id獲取接口的元數據信息(數據源、入參、出參等),再按照接口元數據信息創(chuàng)建數據源連接,生成存儲key,獲取value值,最后封裝出參返回。
圖2-4-1
用戶身份認證、api調用權限認證、限流等前置邏輯都通過后,進行api轉發(fā)。在數據服務平臺創(chuàng)建發(fā)布的任意路徑api(Jcache可配置接口),經過網關都會轉發(fā)到可配置接口服務的抽象api中。
三、后續(xù)規(guī)劃
雖然一期功能已經上線,但只能滿足部分業(yè)務需求,還有很多功能需要完善和開發(fā),以下是二期功能:
數據源支持更多存儲組件,如:hbase、mysql、es、hive等
熱門文章
極光官方微信公眾號
關注我們,即時獲取最新極光資訊
現在注冊,領取新人大禮包