[12屆 鐵人賽] [Day2]
圖形資料庫?? Neo4j??
===
###### tags: `iT鐵人賽` `Neo4j`
## 什麼圖形資料庫?
在聊什麼是圖形資料庫之前,我們需要先認識資料庫
來看圖 ( 如果糊了就把圖丟去新分頁 )

~這圖我用Neo4j畫的,因為找不到適合的圖,只好自己畫~
首先資料庫大致上分成兩大類
* 關聯式資料庫 SQL
* 非關聯式資料庫 NoSQL
### 那 " 非關聯式資料庫 " 是什麼?
非關聯式資料庫,英文:NoSQL,通常視為 Not Only SQL 的縮寫
主要為了解決以下問題
* 包含非關聯結構 Being Non-Relational
* 分散式 Distributed
* 開源 Open-Source
* 可平行擴 Horizontally Scalable
阿 太文學了嗎 ~~絕對不是再下去就要超出我的知識範圍了~~
講簡單點
想像一下,在傳統 SQL 下,你的資料突然需要增加新的欄位
而每一筆資料需要新增的欄位完全不一樣
這樣對於傳統關聯式資料庫而言,就會變得很麻煩
這時候 NoSQL 就強勢登場了
```
{
"Name":"",
"Phone":"",
"Age":20
}
```
```
{
"Phone":"",
"Address":"",
"Id":20,
"Birthday":""
}
```
像上面這兩個沒什麼關聯的結構,在 NoSQL 就可以輕鬆的合併了
```
{
"Man": [
{
"Name": "",
"Phone": "",
"Age": 20
},
{
"Phone": "",
"Address": "",
"Id": 20,
"Birthday": ""
}
]
}
```
> 用 Json 感覺比好呈現這個意思
NoSQL 就是這麼自由 (?)
### 那圖形資料庫呢 ?
讓我們回到剛剛那張圖

~沒錯我就是要再貼一次~
你可以看到非關聯式資料庫下還有四種類型 ( 實際上不只這四種 )
而圖形資料庫就在其中
圖形資料庫不同於關聯式資料庫以"資料表"跟"關聯"組成
圖形資料庫的核心為
* 節點 Node
* 關係 Relationship
都叫做 "圖形" 資料庫了,我們當然可以看看他們長成甚麼德行
他是節點
他是關係
結合起來就是圖形資料庫了

而 Neo4j 就是圖形資料庫的其中一種
>
> Source : [Neo4j-logo](https://en.wikipedia.org/wiki/Neo4j)
[官網](https://neo4j.com/)
Neo4j 是一個[開源](https://github.com/neo4j/neo4j)的圖形資料庫
第一個版本從 2010 年發布至今
現在也有許多企業正在使用中,例:ebay
那接下來就讓我來介紹慢慢介紹 Neo4j 如何使用吧
---
今天結束了_(:3 」∠ )_
查資料查到起笑 ( ˘•ω•˘ )
超怕寫錯東西
那張 PPAP 正常來說 Node 應該要跟 Relationship 左右換邊
單純只是覺得右邊的手看起來像拿著那顆球
所以就這樣放了(゚∀。)
明天 ***讓我們從 Neo4j Desktop 開始吧***
期待明日的降臨吧 Ciao!
## 參考資料
[Wikipedia NoSQL](https://zh.wikipedia.org/wiki/NoSQL)
[NOSQL DEFINITION](https://hostingdata.co.uk/nosql-database/)
[Wikipedia Neo4j](https://en.wikipedia.org/wiki/Neo4j)
[Neo4j Customers](https://neo4j.com/customers/)
---
## 紀錄
* 撰寫日期:2020/09/06
* 耗時:加一加應該是 3 小時左右
## 備註
上方某行
> 而每一筆資料需要新增的欄位完全不一樣
> 原始
> 而每一筆資料需要而每一筆資料需要新增的欄位完全不一樣
感謝 @mikeyangyo 提醒錯誤
>[name=作者] [time=20201014]