deepdive安裝筆記全紀錄

2020-08-08 21:49:07

引言

DeepDive是一種新型的數據管理系統,可讓它在單個系統中解決提取,整合和預測問題,從而使使用者能夠快速構建複雜的端到端數據管道,例如暗數據BI(商業智慧)系統。通過允許使用者端到端構建系統,DeepDive允許使用者將精力集中在系統中最直接改善應用程式品質的部分。相比之下,以前的基於管道的系統要求開發人員構建提取器,整合程式碼和其他元件,而對它們的更改如何提高其數據產品的品質沒有清晰的想法。這種簡單的見解是DeepDive系統如何在更短的時間內生成高品質數據的關鍵。基於DeepDive的系統被沒有機器學習專業知識的使用者使用,涉及從古生物學到基因組學再到人口販運等多個領域。

安裝環境

  • jdk 1.8
  • python 3.7.3
  • postgresql 96

其實yum預裝了python 2.7應該就夠了,只不過我是在這之前用的anaconda,另外jdk是由於內部有elasticsearch以及nodejs等等,所以需要Java環境。postgresql就是數據庫了,下面 下麪會介紹jdk與sql的安裝,因爲python已經預裝就不做過多介紹。

jdk安裝

雖然這個很簡單,但因爲之前筆記裡我沒有提過,所以這裏提一嘴。首先檢查之前是否安裝過jdk,還有資料夾的建立:

// 如果以前安裝過,請清除乾淨後重新安裝1.8
rpm -qa | grep -i jdk

// 建立資料夾
mkdir -p /usr/local/jdk

這裏存在一個技巧,直接去請求Oracle的Java版本是非常慢的,除非是有梯子,不然可能一個安裝包能下一個下午是可能的。所以這裏還是很建議用阿裡的源:
在这里插入图片描述

// Oracle官方源
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie"  http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz

// aliyun的1.8版本的包
wget https://code.aliyun.com/kar/oracle-jdk/raw/3c932f02aa11e79dc39e4a68f5b0483ec1d32abe/jdk-8u251-linux-x64.tar.gz

然後就是安裝:

tar -zxvf jdk-8u251-linux-x64.tar.gz

// 爲了更好加環境變數
mv jdk1.8.0_251/ jdk1.8

再加入環境變數:

// An highlighted block
vim /etc/profile

#java
export JAVA_HOME=/usr/local/src/jdk/jdk1.8
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

然後就能輸入java -version看到當前是否安裝成功。

在这里插入图片描述

postgresql安裝

這個東西bug就比較多了,另外其中很多東西我也還沒弄懂,剛開始用,下面 下麪就是我的過程以及bug筆記。

PostgreSQL Version 64 Bit Platforms 32 Bit Platforms
10 RHEL / CentOS / OEL 7.x & 6.x RHEL / CentOS / OEL 6.x
9.6 RHEL / CentOS / OEL 7.x & 6.x RHEL / CentOS / OEL 6.x
9.5 RHEL / CentOS / OEL 7.x & 6.x RHEL / CentOS / OEL 6.x

postgresql的安裝跟mysql類似,但它的源會出現一些問題,另外,如果去找deepdive的搭建筆記,看到的基本都是用 bash <(curl -fsSL git.io/getdeepdive) postgres 這個命令以Git的方式拉取與之對應的deepdive,但我嘗試後會報錯,具體原因未知,甚至把ca證書弄沒了。。下面 下麪是圖:
在这里插入图片描述
然後嘗試rpm安裝:

# Install the repository RPM:
yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

# Install PostgreSQL:
yum install postgresql96-server

上面rpm鏈接,網上的大部分都有問題,不太清楚是不是雲伺服器的問題還是rpm失效了,在我進入postgresql.org網站找源依然沒有找到,而如果用其它的源導致後面失敗的,這裏有幾個bug記錄一下:

repodata/repomd.xml: [Errno 14] HTTPS Error 404 – Not Found

failure: repodata/repomd.xml from pgdg11: [Errno 256] No more mirrors to try.

https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-$releasever-x86_64/repodata/repomd.xml: [Errno 14] HTTPS Error 404 – Not Found

這個東西就需要去/etc/yum.repos.d找到報錯的repo,將其中的$releaserver改成當前centos版本的數位,比如centos 7 那就是全部改成7.
在这里插入图片描述
data directory 「/var/lib/pgsql/9.6/data」 has group or world access

這個錯就主要是沒有許可權,所以需要賦權:

cd /var/lib/pgsql/9.6
chown -R postgres:postgres data
chmod -R 0700 data

另外還有一些報錯,但我忘記記錄了,所以主要兩個就是如上。另外如果還需要sql的其它服務,還可以看下面 下麪的表然後根據情況安裝:

postgresql-client 用戶端
postgresql-server 伺服器端
postgresql-contrib 第三方擴充套件
postgresql-devel C語言開發Header標頭檔案和庫
pgadmin4 圖形管理實用程式

啓動方式:

/usr/pgsql-9.6/bin/postgresql96-setup initdb
systemctl enable postgresql-9.6
systemctl start postgresql-9.6

sudo -u postgres psql
passwd postgres

在这里插入图片描述

deepdive安裝

這個安裝同樣有命令:bash <(curl -fsSL git.io/getdeepdive),但同樣,我還是沒有安裝成功,和上面的錯誤一樣。所以考慮本地安裝:

https://github.com/HazyResearch/deepdive
https://pan.baidu.com/s/1slLpYVz

去官網找到0.8的安裝包,或者去下面 下麪的百度雲盤下載中文版的deepdive,它裏面帶有0.8的安裝包,不過速度就更慢了。有安裝包後,這裏我開始遇到一個問題,就是tar命令缺少-z的指令,會報錯Error is not recoverable: exiting now,所以需要安裝bzip,爲:

yum -y install zip gzip    # (--安裝壓縮工具)
tar -zxvf deepdive-v0.8-STABLE-Linux.tar.gz

然後將路徑加入profile中:

export PATH="/home/test/bin:$PATH"

然後就可以啓動deepdive了:
在这里插入图片描述
另外它內部還包括了elasticsearch也能啓動了:
在这里插入图片描述