c++图的创建_使用 Amazon Neptune 构建基于图数据库的应用
在社交網絡、推薦引擎和欺詐檢測等應用場景中,您需要在數據之間創(chuàng)建關系并快速查詢這些關系,此時,圖數據庫將比關系數據庫更具優(yōu)勢。因為使用關系數據庫構建這些類型的應用程序面臨著許多挑戰(zhàn)。您將需要創(chuàng)建多個具有多個外鍵的表,SQL 查詢需要嵌套查詢和復雜的聯接,它們很快就會變得不靈活,而且隨著數據量逐漸增加,查詢的性能也會降低。
Amazon Neptune 是一個高性能圖數據庫,并對圖的存儲和查詢進行了優(yōu)化,可以存儲數十億個關系并將圖形查詢延遲降低到毫秒級。它也是一個托管的圖數據庫,能快速創(chuàng)建圖數據庫集群,減少了運維和管理圖數據庫的工作,讓我們把工作重心放在業(yè)務開發(fā)和創(chuàng)新上。
Amazon Neptune 支持常見的圖形模型 Property Graph 和 W3C 的 RDF 及其關聯的查詢語言 Apache TinkerPop Gremlin 和 SPARQL ,從而使您能夠輕松構建查詢以有效地分析高度互連數據集。它支持社交網絡分析、建議引擎、欺詐檢測、知識圖譜、藥物開發(fā)和網絡安全等應用案例。
下面我們將一步步告訴大家
如何創(chuàng)建和使用 Amazon Neptune
01
創(chuàng)建 Amazon Netpune
我們可以登錄 AWS Console
找到 Neptune 的界面,如下圖:
選擇點擊
?“ Launch Amazon Neptune ”的圖標
會看到下面詳細信息界面:
在此界面上可以指定是否在不同區(qū)域創(chuàng)建只讀副本。
只讀副本不僅可以支持只讀類型的工作負載,還可以提高集群的高可用性。
當主實例出現故障,會自動故障轉移到您在三個可用區(qū)之一中創(chuàng)建的多達 15 個 Neptune 副本中的一個。
輸入完后點擊 “ Next ”,進入網絡和安全配置頁面。
對于生產數據庫,我們推薦用戶將 Amazon Neptune 放在自己創(chuàng)建的 VPC 中,并且將數據庫放在私有子網組中,訪問數據庫時可以通過 VPN 或堡壘機的方式在私有子網中維護您的數據庫。
另外通過安全組來設置訪問客戶端的端口及 IP 等。安全組是白名單的機制,意味著只有您設置的 IP 源及端口可以訪問您的數據庫,從而保障數據庫的安全。
通過上面幾個界面的操作
等待幾分鐘左右
?Amazon Neptune 數據庫集群成功
02
設置訪問 Amazon Neptune
數據庫的安全組
數據庫創(chuàng)建完后,需要設置安全組,讓需要的客戶端能夠訪問數據庫。
您可以在 Amazon Neptune 的界面上找當前安全組,并進行修改。如下圖:
這里我內網的IP地址域是 172.31.0.0/16 ,因此設置的是所有內網的機器都能夠訪問我的數據庫。要設置其它規(guī)則,和這個類似。
03
連接 Amazon Neptune
數據庫集群建立好后,我們需要創(chuàng)建一個 EC2 實例作為客戶端訪問數據庫。
登錄 AWS Console 并訪問 EC2 服務,選擇 Amazon Linux 作為客戶端。
Amazon Linux 是列表中第二項。
04
在EC2客戶端上安裝連接工具
下面我們會使用跟 Amazon Neptune 在同一個子網中的 EC2 實例(前面第三步創(chuàng)建)來連接 Amazon Neptune 的實例。
1)
控制臺二進制文件需要 Java 8 。
輸入以下命令以在 EC2 實例上安裝 Java 8 。
2)
輸入以下命令以在 EC2 實例上將 Java 8 設置為默認運行時。
系統(tǒng)會顯示系統(tǒng)安裝過的所有 java 的版本
輸入 java 8 對應的數字
3)
從 Apache Tinkerpop3 網站
下載訪問 Amazon Neptune 的 Gremlin 客戶端
4)
解壓下載的壓縮文件
5)
進入解壓后的文件夾
并下載 Gremlin?遠程證書
6)
在 conf 目錄中
創(chuàng)建名為 neptune-remote.yaml 的文件
并加入下面信息:
其中紅色部分的 Endpint?
是您要連接的數據庫的端點
請在 AWS Neptune Console 上查詢
如下圖:
在圖中你可以看到連接的 Endpoint
7)
運行 bin 目錄下的命令進入 Gremlin 控制臺
看到如下界面:
此時我們可以看到
gremlin 的命令行提示符
8)
在 gremlin> 命令行提示符下,輸入前面配置 endpoint 的文件,讓 gremlin 連接我們創(chuàng)建的 neptune 數據庫。
可以看到 gremlin 連接了
我們配置的 Neptune 數據庫
9)
輸入下面命令,控制 gremlin 發(fā)送所有的命令到遠程 Neptune 服務器:
10)
為圖增加一個頂點,輸入下面命令:
11)
輸入下面命令退出:
05
加載數據
除了在上一步中所見的通過命令行插入數據到圖數據庫中,我們也可以將一定格式的數據存儲到 S3 中,然后加載到圖數據庫中,詳情,請參考下面鏈接加載和查詢數據:
https://docs.aws.amazon.com/zh_cn/neptune/latest/userguide/load-api-reference-load.html
內容作者
AWS 高級解決方案架構師 -?藍勇
更多內容請查看:
http://dwz.date/g2a
END
馬上點擊“閱讀原文”
探索 19 種產品,利用免費套餐
在 AWS 中國(寧夏)區(qū)域開始構建
總結
以上是生活随笔為你收集整理的c++图的创建_使用 Amazon Neptune 构建基于图数据库的应用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2个字节能存多少个16进制_LabVIE
- 下一篇: 结构损伤检测与智能诊断 陈长征_阜康危房