自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一種支持海量復(fù)雜數(shù)據(jù)關(guān)系運(yùn)算的數(shù)據(jù)庫—圖數(shù)據(jù)庫部署簡(jiǎn)介

數(shù)據(jù)庫 其他數(shù)據(jù)庫
大數(shù)據(jù)行業(yè)需要處理的數(shù)據(jù)之間的關(guān)系隨數(shù)據(jù)量呈幾何級(jí)數(shù)增長(zhǎng),亟需一種支持海量復(fù)雜數(shù)據(jù)關(guān)系運(yùn)算的數(shù)據(jù)庫,圖數(shù)據(jù)庫應(yīng)運(yùn)而生。

1、背景

隨著社交、電商、金融、零售、物聯(lián)網(wǎng)等行業(yè)的快速發(fā)展,現(xiàn)實(shí)社會(huì)織起了了一張龐大而復(fù)雜的關(guān)系網(wǎng),傳統(tǒng)數(shù)據(jù)庫在處理關(guān)系運(yùn)算上顯得越來越力不從心。大數(shù)據(jù)行業(yè)需要處理的數(shù)據(jù)之間的關(guān)系隨數(shù)據(jù)量呈幾何級(jí)數(shù)增長(zhǎng),亟需一種支持海量復(fù)雜數(shù)據(jù)關(guān)系運(yùn)算的數(shù)據(jù)庫,圖數(shù)據(jù)庫應(yīng)運(yùn)而生。

當(dāng)前圖數(shù)據(jù)庫的種類也已經(jīng)有很多,本文介紹的是原生類的代表之一的orientdb(另一個(gè)代表是neo4j)的部署,以便為后續(xù)的使用做好準(zhǔn)備。

2、環(huán)境準(zhǔn)備

  • 操作系統(tǒng):Centos6.8
  • 內(nèi)存:  8G(分布式部署時(shí)建議4G及以上,否則需要手動(dòng)修改JVM配置)
  • JDK:  建議jdk8版本(3.0版本要求jdk8)
  • 環(huán)境變量:需配置JAVA_HOME、ORIENTDB_HOME (配置文件中有用到)
export JAVA_HOME=/usr/local/java
export PATH=$PATH:$JAVA_HOME/bin
export ORIENTDB_HOME=/usr/local/orientdb
export PATH=$PATH:$ORIENTDB_HOME/bin

創(chuàng)建orientdb用戶。

# groupadd orientdb
# useradd -r -g orientdb orientdb

OrientDB安裝包下載:官網(wǎng)地址https://orientdb.com/。

3、單實(shí)例部署

(1)解壓數(shù)據(jù)庫安裝包,并授權(quán)

企業(yè)版處理步驟:

tar -zxvf orientdb-enterprise-2.2.37.tar.gz
ln -s orientdb-enterprise-2.2.37 orientdb
chown -R orientdb:orientdb orientdb/
tar -zxvf orientdb-3.0.10.tar.gz

社區(qū)版處理步驟:

與企業(yè)版不同的是如果下載的為社區(qū)版需將agent jar下載下來并拷貝至plugins目錄下:

# 創(chuàng)建軟連接 以便后續(xù)升級(jí)使用
ln -s orientdb-3.0.10 orientdb
# 授權(quán)
chown -R orientdb:orientdb orientdb/
# 如果是下載的為社區(qū)版需將企業(yè)版agent jar包拷貝至plugins目錄下
cp agent-3.0.10.jar orientdb/ plugins

(2)修改bin目錄下orientdb.sh

ORIENTDB_DIR="/usr/local/orientdb"
ORIENTDB_USER="orientdb"

(3)修改bin目錄下orientdb.service

User=orientdb
Group=orientdb
ExecStart=$ORIENTDB_HOME/bin/server.sh

(4)初始化啟動(dòng)

首次啟動(dòng)數(shù)據(jù)庫使用server.sh,并在啟動(dòng)過程中提示配置root賬號(hào)密碼,如首次不采用此方式啟動(dòng),則會(huì)隨機(jī)生成root賬號(hào)的密碼。因此單實(shí)例啟動(dòng)時(shí)建議用該方式啟動(dòng)。

./server.sh

(5)文件屬主確認(rèn)

首次啟動(dòng)后會(huì)在databases目錄下生成OSystem,如果該目錄屬主不是orientdb則需要手動(dòng)修改為orientdb,否則下次啟動(dòng)時(shí)異常(報(bào)沒有權(quán)限操作OSystem目錄的錯(cuò)誤)

(6)啟動(dòng)、關(guān)閉服務(wù)(也可以復(fù)制到/etc/init.d目錄下,做成服務(wù))

#  啟動(dòng)
./orientdb.sh start
# 狀態(tài)
./orientdb.sh status
# 關(guān)閉
./orientdb.sh stop

(7)進(jìn)入控制臺(tái),進(jìn)行數(shù)據(jù)庫交互

./console.sh

4、分布式部署

分布式部署前幾步操作同單實(shí)例情況(3.1-3.3),但后續(xù)操作不同。

(1)解壓數(shù)據(jù)庫安裝包

tar -zxvf orientdb-enterprise-2.2.37.tar.gz

如果是下載的為社區(qū)版需將企業(yè)版agent jar包拷貝至plugins目錄下。

tar -zxvf orientdb-3.0.10.tar.gz
ln -s orientdb-3.0.10 orientdb
cp agent-3.0.10.jar orientdb/ plugins

(2)修改bin目錄下orientdb.sh

ORIENTDB_DIR="/usr/local/orientdb"
ORIENTDB_USER="orientdb"

(3)修改bin目錄下orientdb.service

User=orientdb
Group=orientdb
ExecStart=$ORIENTDB_HOME/bin/server.sh

(4)初始化啟動(dòng)

分布式部署的首次初始化啟動(dòng)數(shù)據(jù)庫使用dserver.sh,并在啟動(dòng)過程中提示配置root賬號(hào)密碼,以及節(jié)點(diǎn)名稱,節(jié)點(diǎn)名稱在后續(xù)操作中需要用到。
./dserver.sh

(5)修改hazelcast.xml文件

配置TCP / IP模式機(jī)制,并添加對(duì)應(yīng)節(jié)點(diǎn)信息,修改后主要配置信息如下:

<group>
<name>clusterName</name>
<password>clusterPassword</password>
</group>
<properties>
. . .
</properties>
<network>
<port auto-increment="false">2434</port>
<join>
<multicast enabled="false">
<multicast-group>235.1.1.1</multicast-group>
<multicast-port>2434</multicast-port>
</multicast>
<tcp-ip enabled="true">
<member>your_master_server_ip_1</member>
<member>your_master_server_ip_2</member>
<member>your_replica_server_ip</member>
</tcp-ip>
</join>
</network>

其中部分標(biāo)簽的含義如下:

<group> name :此元素定義集群的名稱。你可以選擇任何你喜歡的東西

<group> password :定義用于加密每個(gè)成員發(fā)送的廣播消息加入群集的密碼。在這里選擇一個(gè)強(qiáng)大的密碼。

<network> port :標(biāo)識(shí)用于自動(dòng)發(fā)現(xiàn)節(jié)點(diǎn)的端口。auto-increment屬性指示機(jī)制從定義的端口開始,如果該端口正在使用,則繼續(xù)嘗試其他端口。通過將其設(shè)置為false,定義的端口將用于通信,如果端口已在使用中,則節(jié)點(diǎn)發(fā)現(xiàn)將失敗。對(duì)于本文,該屬性將被禁用。

<join>multicast enabled :組播元素用于定義IP組播參數(shù)。將不會(huì)使用IP多播,因此我們將忽略它們,可以將enabled屬性設(shè)置為false。

<join> tcp-ip :用于定義與TCP / IP集群相關(guān)的參數(shù)。enabled屬性用于啟用它。

<join> <tcp-ip> member :定義集群的每個(gè)成員。還有其他方法來指定每個(gè)成員,但是我們將堅(jiān)持指定每個(gè)成員的IP地址(每行一個(gè))。

(6)修改orientdb-server-config.xml文件

其中NodeName參數(shù)的值是在第3.4步中配置的節(jié)點(diǎn)名。

. . .
<handler class="com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin">
<parameters>
<parameter value="true" name="enabled"/>
<parameter value="${ORIENTDB_HOME}/config/default-distributed-db-config.json" na$
<parameter value="${ORIENTDB_HOME}/config/hazelcast.xml" name="configuration.haz$
<parameter value="orientdb_server_name_1" name="nodeName"/>
</parameters>
</handler>
. . .

(7)修改default-distributed-db-config.json文件

默認(rèn)配置全部節(jié)點(diǎn)均為主節(jié)點(diǎn),如配置其中部分節(jié)點(diǎn)為副本,則修改為如下情況。

其中新增replication ,hotAlignment。

{
"replication": true,
"hotAlignment" : true,
"autoDeploy": true,
"readQuorum": 1,
"writeQuorum": "majority",
"executionMode": "undefined",
"readYourWrites": true,
"newNodeStrategy": "static",
"servers": {
"orientdb_server_name_1": "master",
"orientdb_server_name_2": "master",
"orientdb_server_name_3": "replica"
},
...
}

autoDeploy :指定是否將數(shù)據(jù)庫部署到集群中尚未擁有的新節(jié)點(diǎn)。

readQuorum :在讀取操作上回復(fù)客戶端之前需要一致的集群節(jié)點(diǎn)的響應(yīng)次數(shù)。將其設(shè)置為“1”將禁用讀取一致性。

writeQuorum :在寫入操作時(shí),在向客戶端發(fā)送回復(fù)之前需要響應(yīng)多少個(gè)節(jié)點(diǎn)。默認(rèn)值為多數(shù) ,它使用(N / 2)+ 1計(jì)算 ,其中N是集群中可用主節(jié)點(diǎn)的數(shù)量。在計(jì)算大多數(shù)時(shí),不考慮復(fù)制節(jié)點(diǎn)。如果在僅具有兩個(gè)主節(jié)點(diǎn)的群集中保留默認(rèn)值,則如果其中一個(gè)節(jié)點(diǎn)關(guān)閉,則法定人數(shù)將永遠(yuǎn)不會(huì)形成。

executionMode :定義客戶端的執(zhí)行模式 - 同步或異步。默認(rèn)值允許客戶端決定。

readYourWrites :指定節(jié)點(diǎn)的響應(yīng)是否計(jì)數(shù)達(dá)到寫入定額。

newNodeStrategy :當(dāng)新節(jié)點(diǎn)加入集群時(shí)會(huì)發(fā)生什么。使用默認(rèn)值,節(jié)點(diǎn)將自動(dòng)注冊(cè)在服務(wù)器列表下。

hotAlignment :指定如果節(jié)點(diǎn)關(guān)閉然后重新聯(lián)機(jī),會(huì)發(fā)生什么。如果啟用,則當(dāng)節(jié)點(diǎn)脫機(jī)時(shí),同步消息將保留在分布式隊(duì)列中。當(dāng)它回到在線時(shí),通過輪詢隊(duì)列中的所有同步消息來啟動(dòng)同步階段。

servers :用于指定集群中節(jié)點(diǎn)的角色(主節(jié)點(diǎn)或副本節(jié)點(diǎn))。默認(rèn)情況下,使用星號(hào)*表示服務(wù)器中的所有節(jié)點(diǎn)都是主節(jié)點(diǎn)。因?yàn)槲覀兇蛩銟?gòu)建一個(gè)包含兩個(gè)主器件和一個(gè)副本的集群,所以我們將通過指定每個(gè)節(jié)點(diǎn)的名稱和集群中的角色來修改此參數(shù)進(jìn)行匹配。

(8)啟動(dòng)各節(jié)點(diǎn)服務(wù)

啟動(dòng)時(shí),注意啟動(dòng)順序。啟動(dòng)的第一個(gè)服務(wù)器(即第一個(gè)加入集群)成為協(xié)調(diào)服務(wù)器 ,這是分布式操作啟動(dòng)的地方。如果希望特定服務(wù)器具有此角色,先啟動(dòng)該角色

./orientdb.sh  start

所有節(jié)點(diǎn)啟動(dòng)完畢后,日志中將有如下信息,其中含有主節(jié)點(diǎn)、副本集信息

結(jié)束語:

至此,OrientDB的單節(jié)點(diǎn)及分部署部署均已完成 。

責(zé)任編輯:姜華 來源: 今日頭條
相關(guān)推薦

2018-07-30 10:16:19

存儲(chǔ)關(guān)聯(lián)數(shù)據(jù)

2024-06-06 16:50:15

2013-04-26 16:18:29

大數(shù)據(jù)全球技術(shù)峰會(huì)

2018-09-27 16:15:10

區(qū)塊鏈數(shù)據(jù)庫

2011-03-28 08:47:46

海量數(shù)據(jù)庫管理中韓數(shù)據(jù)庫專家

2015-08-21 12:59:38

Oracle數(shù)據(jù)庫

2011-05-12 09:19:36

海量數(shù)據(jù)庫管理

2023-08-01 14:35:00

關(guān)系數(shù)據(jù)庫排列

2023-10-16 13:26:00

RDBMS關(guān)系數(shù)據(jù)庫

2021-09-06 10:24:12

鴻蒙HarmonyOS應(yīng)用

2012-03-14 11:46:30

ibmdw

2012-03-19 10:45:44

ibmdw

2011-04-06 10:09:56

MySQL數(shù)據(jù)庫安裝

2011-05-13 13:38:49

數(shù)據(jù)庫對(duì)象

2011-10-11 17:07:12

數(shù)據(jù)庫Internet文件數(shù)據(jù)庫

2021-09-03 15:41:00

鴻蒙HarmonyOS應(yīng)用

2023-07-12 10:01:00

doris數(shù)據(jù)單節(jié)點(diǎn)

2020-03-14 16:37:09

數(shù)據(jù)庫IT技術(shù)

2010-05-26 17:05:48

MySQL數(shù)據(jù)類型

2011-03-28 17:07:14

海量數(shù)據(jù)庫
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)