圖數據庫認證考試 NGCP 錯題解析 vol.02:這 10 道題竟無一人全部答對

如果你讀過「NebulaGraph 錯題解析第一期」,大概知道在錯題解析未出來之前,NebulaGraph 專業技能認證 NGCP(全稱 NebulaGraph Certified Professional)的通過率僅有 16.7%。但是,經過上一輪 NebulaGraph 認證考試出題人錯題解析的努力下,這次 NGCP 的通過率上升 0.1%,現在變成了 16.8%。出題人痛定思痛,決定再開一期錯題解析,如果你兩期都看了,運氣足夠好,現在去考 NGCP 閉眼就是 19 分起步了,你導再也不擔心你從零考起了。

下面,來看一眼這期錯題解析有哪些難題呢?

題 1:「判斷題」目前 NebulaGraph Studio、Explorer、Dashboard 社區版、Dashboard 企業版登錄時的身份驗證是基於 NebulaGraph 本身的身份認證邏輯。

正確答案:錯誤

解析:

NebulaGraph Studio、Explorer 和 Dashboard 社區版登錄時需要輸入 NebulaGraph 本身的賬密,但是 Dashboard 企業版因爲需要管理所有 NebulaGraph 集羣,所以有自己的單獨一套權限管理系統,登錄時可以使用多種賬戶類型。參考文檔:https://docs.nebula-graph.com.cn/3.3.0/nebula-dashboard-ent/5.account-management/

題 2:「單選題」NebulaGraph 的第一個開源版本是

A. v0.1.0

B. v0.0.1

C. v1.0.0

D. v0.0.1

正確答案:A

解析:

2019.5 發佈了 v0.1.0 alpha 版本並開源。參考文檔:https://docs.nebula-graph.com.cn/3.3.0/20.appendix/history/

題 3:「單選題」下列關於大小寫的說法,錯誤的是

A. 標識符區分大小寫

B. 保留關鍵字不區分大小寫

C. 函數不區分大小寫

D. 非保留關鍵字區分大小寫

正確答案:D

解析:

標識符會區分大小寫,例如 my_space 和 MY_SPACE 是兩個不同的圖空間。關鍵字,包括保留關鍵字和非保留關鍵字,都是不區分大小寫的,例如我們平常寫 nGQL 命令 show spaces 或者 SHOW SPACES,都是可以正常執行的。函數也是不區分大小寫的,例如count() 和 COUNT()。參考文檔:https://docs.nebula-graph.com.cn/3.3.0/3.ngql-guide/1.nGQL-overview/identifier-case-sensitivity/

題 4:「單選題」以下關於 Storage 服務中數據分片說法錯誤的是

A. NebulaGraph 的分片策略採用動態 Hash 的方式

B. 創建圖空間時需指定分片數量,分片數量設置後無法修改

C. 同一個點的所有標籤、出邊和入邊信息都會存儲到同一個分片

D. Meta 服務負責存儲和管理分片的位置信息

正確答案:A

解析:

NebulaGraph 的分片策略是靜態 Hash。創建圖空間時需要設置分片和副本數量,然後均衡分配到所有 Storage 節點上以保證數據安全,修改分片數量涉及到數據遷移,因此暫時不支持直接修改分片數量。NebulaGraph 採用切邊方式將圖切割,例如一個點存儲在分片 x 中,kv 中會包含 VID 和 Tag 信息,然後挨着這條 kv,繼續按順序存儲它的出邊和入邊,所以都在同一個分片。也因此,邊會重複存儲,因爲點 a 的出邊可能是點 b 的入邊。Meta 服務負責存儲和管理分片的位置信息,並且保證分片的負載均衡。參考文檔:https://docs.nebula-graph.com.cn/3.3.0/1.introduction/3.nebula-graph-architecture/4.storage-service/#_5

題 5:「多選題」下列語句正確的是

A. RETURN timestamp("2021-07-05T06:18:43.984000");

B. MATCH (v:date1) RETURN v.date1.month;

C. WITH date({year: 1984, month: 10, day: 11}) AS x RETURN day + 1;

D. WITH time({hour: 12, minute: 31, second: 14}) AS d RETURN d;

正確答案:BD

解析:

選項 A 錯誤是因爲不支持微秒,可以改成 RETURN timestamp("2021-07-05T06:18:43");RETURN timestamp("2021-07-05T06:18:43.000000");。選項 C 錯誤是因爲語法錯誤,RETURN 的應該是 x+1,而不是 day+1。參考文檔:https://docs.nebula-graph.com.cn/3.3.0/3.ngql-guide/3.data-types/4.date-and-time/#timestamp

題 6:「多選題」以下關於用戶角色與權限的說法錯誤的是

A. 如需創建自定義角色,要同時在配置文件中修改 custom_role 和 role_privilege 參數

B. 一個用戶在一個圖空間內只能擁有一個角色權限

C. SHOW SPACES 只會返回當前用戶有權限的空間

D. 只有 God 角色可以執行 SHOW USERS 和 SHOW SNAPSHOTS 語句

正確答案:A

解析:

NebulaGraph 暫時還不支持創建自定義角色,這兩個參數也是完全的欺騙內容。一個用戶在一個圖空間內只能擁有一個角色權限,可以用 SHOW ROLES IN <space_name>; 查看具體權限。爲了數據安全,SHOW SPACES 只會返回當前用戶有權限的空間,也就是至少要對圖空間有 GUEST 權限,才能看到該圖空間。同樣也是爲了數據安全,只有最高權限的 God 角色賬號才能執行 SHOW USERS 查看所有用戶,以及 SHOW SNAPSHOTS 查看快照情況。參考文檔:https://docs.nebula-graph.com.cn/3.3.0/7.data-security/1.authentication/3.role-list/

題 7:「單選題」以下哪項關於 BR 限制說法錯誤的是

A. Nebula Graph 版本需要爲 v3.3.0

B. Nebula Listener 暫時不支持備份,且全文索引也不支持備份

C. 數據備份過程中,指定圖空間中的 DDL、DML、DCL 和 TCL 語句都會阻塞

D. 數據恢復僅支持在相同拓撲的集羣上進行

正確答案:C

解析:

數據備份過程中,指定圖空間中的 DDL 和 DML 語句將會阻塞,其他語句不會阻塞。另外 D 選項所說的相同拓撲集羣,是指集羣的 Storage 主機數量及 IP 需一致。參考文檔:https://docs.nebula-graph.com.cn/3.3.0/backup-and-restore/nebula-br/1.what-is-br/

題 8:「單選題」以下關於 NebulaGraph Exchange 說法錯誤的是

A. Writer 會將待導入的數據一次性寫入到 NebulaGraph 中

B. Reader 讀取不同來源的數據返回 DataFrame

C. Exchange 由 Reader、Processor 和 Writer 三部分組成

D. Processor 遍歷 DataFrame 獲取對應的值

正確答案:A

解析:

Writer 在遍歷指定批處理的行數(batch 參數)後,會將獲取的數據一次性寫入到 NebulaGraph 中,而不是將待導入的數據一次性寫入,那樣做數據量太大會導致 OOM。參考文檔:https://docs.nebula-graph.com.cn/3.3.0/nebula-exchange/about-exchange/ex-ug-what-is-exchange/

題 9:「單選題」以下關於運行日誌錯誤的是

A. Meta 服務、Graph 服務和 Storage 服務的日誌級別可以在各自的配置文件中查看,默認路徑爲 /usr/local/nebula/etc/

B. 日誌詳細級別值越大,日誌記錄越詳細

C. 不能在 NebulaGraph 運行過程中刪除日誌目錄,如果刪除目錄則日誌不再打印且影響業務

D. 可以手動修改日誌的級別

正確答案:C

解析:

在 NebulaGraph 運行過程中刪除運行日誌目錄,日誌不會繼續打印,但是不會影響業務。重啓服務可以恢復正常。參考文檔:https://docs.nebula-graph.com.cn/3.3.0/5.configurations-and-logs/2.log-management/logs/#_2

題 10:「單選題」運行日誌文件佔用空間過大如何處理?以下選項中最合理的是

A. 運行用於刪除日誌的 nGQL 命令

B. 使用 crontab 設置定期任務回收日誌文件

C. 使用 logrotate 回收日誌

D. 肉眼識別刪除日誌

正確答案:C

解析:

nGQL 命令暫無刪除日誌的命令,因此 A 選項錯誤。選項 D 可以直接排除。對於 B 和 C 選項,crontab 雖然可以,但是 logrotate 可以更好地轉儲壓縮日誌文件,還可以結合 crontab 做更完善的自動任務,所以綜合來看還是 logrotate 更合理。參考文檔:https://docs.nebula-graph.com.cn/3.3.0/20.appendix/0.FAQ/#_11

--

謝謝你讀完本文 (///▽///)

看完錯題解析的小夥伴,可以來 NebulaGraph Academy 考一把 NGCP 或者 NGCI 認證考試喲~點擊這裏,開啓你的鴻圖之旅吧:NebulaGraph 認證考試,考試說明:https://discuss.nebula-graph.com.cn/t/topic/8728

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章