圖譜分析引擎跨服務器遷移

一、需求

將服務器A的圖庫數據/索引/配置完整遷移到B服務器。

二、腳本實現方式

1、壓縮

在壓縮時注意忽略不必要的數據文件,優化壓縮/傳輸/解壓效率。

#!/usr/bin/env bash
# 圖譜引擎壓縮
nohup zip -r scj-GRAPH-ENGINE.zip neo4j-3.4.9 -x "./neo4j/import/*" -x "./neo4j/backup/*" -x "./neo4j/data_backup/*" >>graph-engine-zip.log 2>&1 &

2、傳輸

可以PING的服務器之間設置無密碼登錄之後可以直接使用SCP直接傳輸。

#!/usr/bin/env bash
# 免密登錄
# 當前機器使用ssh-keygen生成一對rsa公私鑰,生成的密鑰對會存放在~/.ssh目錄下
ssh-keygen -t rsa
# 接下來,使用下面的命令在目標主機hostB上的aliceB用戶目錄下創建~/.ssh目錄。如果在aliceB@hostB上已經存在.ssh目錄,這一步會被略過。
ssh aliceB@hostB mkdir -p .ssh
# 最後,將hostA上用戶“aliceA”的公鑰拷貝到aliceB@hostB上,來實現無密碼ssh。
cat ~/.ssh/id_rsa.pub | ssh aliceB@hostB 'cat >> ~/.ssh/authorized_keys'
#!/usr/bin/env bash
# 傳輸
nohup scp scj-GRAPH-ENGINE.zip [email protected]:/home/neo4j/ >>graph-engine-transfer.log 2>&1 &

3、解壓

解壓之後在當前目錄下生成neo4j-3.4.9文件夾。

#!/usr/bin/env bash
# 解壓
nohup unzip scj-GRAPH-ENGINE.zip >>graph-engine-unzip.log 2>&1 &

三、備註

包含與圖譜引擎交互注意事項。

  • 1. 構建全文索引必須使用腳本完整運行
  • 2. 全文索引之後必須設置事務超時提交,防止內存過度消耗
  • 3. 查詢禁止無向圖遍歷
  • 4. OR條件的使用括號很重要
  • 5. 圖譜引擎壓縮遷移忽略不必要的數據文件
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章