日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

CSV數(shù)據(jù)文件格式

本文介紹需要導(dǎo)入至圖數(shù)據(jù)庫GDB實例的CSV數(shù)據(jù)文件格式。

背景信息

CSV數(shù)據(jù)文件遵循RFC 4180 CSV規(guī)范。更多信息,請參見CSV文件的一般格式和MIME類型

重要

所有文件必須采用UTF-8格式編碼。

注意事項

  • 必須將點和邊分別放到單獨的文件。

    說明

    加載程序可以在單個加載任務(wù)中加載多個點文件和多個邊文件。

  • 每一個加載任務(wù)的加載文件集必須位于Bucket的同一文件夾中,不能使用文件名和文件擴展名來區(qū)分點文件和邊文件。

  • 每個文件都包含一個逗號分隔的標題行,此標題行由系統(tǒng)列標題和屬性列標題組成。

    標題行是數(shù)據(jù)文件的第一行,由\n\r\n結(jié)束,行內(nèi)不支持使用雙引號、換行符等特殊字符,除分隔符逗號(,)外的其余字符均被解析為標題內(nèi)容。

系統(tǒng)列標題

標題類型

參數(shù)/語法

是否必需

說明

點標題

~id

點的ID。

~label

點的標簽,只支持單個標簽。

邊標題

~id

邊的ID。

~from

源點的點ID。

~to

目標點的點ID。

~label

邊的標簽,只支持單個標簽。

屬性列標題

  • 屬性列為普通屬性時,您可以通過以下語法指定屬性列,類型名稱不區(qū)分大小寫。

    propertyname:type
    重要
    • 列標題中不允許使用空格,因此,屬性名稱也不能包含空格。

    • 屬性不支持List數(shù)據(jù)類型,只能有一個值。

    示例:指定名為age、類型為Int的屬性的列標題。

    文件中的每行都需要在該位置具有整數(shù)或保留為空。

    age:Int
  • 屬性列為SET類型數(shù)據(jù)時,您可以使用以下幾種語法指定屬性列。

    重要

    圖數(shù)據(jù)庫GDB中僅點支持SET屬性,邊不支持SET屬性,邊中設(shè)置了SET屬性均會導(dǎo)致錯誤。

    #兼容默認格式,普通單值屬性。
    propertyname:type
    
    #普通單值屬性
    propertyname:type(single)
    
    #SET屬性,數(shù)據(jù)行中包含單值。
    propertyname:type(set)
    
    #SET屬性,數(shù)據(jù)行中包含多值。
    propertyname:type[]
    
    #SET屬性,數(shù)據(jù)行中包含多值。
    propertyname:type(set)[]

行格式

項目

說明

分隔符

行中字段是用逗號分隔的,行間是用換行符(\n)或回車換行符(\r\n)分隔的。

空白字段

非必需列(如用戶定義的屬性) 允許使用空白字段??瞻鬃侄稳孕枰禾柗指舴?。

頂點ID

每個頂點文件中所有頂點的~id 值都必須是唯一的。~id 值相同的多個頂點行適用于圖形中的單個頂點。

邊ID

每個邊文件中所有邊的~id 值都必須是唯一的。~id 值相同的多個邊行適用于圖形中的單個邊。

標簽

標簽是字符串類型,區(qū)分大小寫。

字符串值

引號是可選的,當包含逗號等特殊字符時需要使用雙引號("")括起來。

propertyname:type(set)

SET屬性字段,表示數(shù)據(jù)字段是屬性propertyname的一個屬性值,類型是type

重要

覆蓋寫入一個SET屬性時,相當于追加一個屬性值。如果原來是一個普通屬性,更新后是一個SET屬性。

propertyname:type(set)[]

SET屬性字段,表示數(shù)據(jù)字段是屬性propertyname的屬性值數(shù)組,數(shù)組元素類型是type。數(shù)組元素之間使用分號(;)分隔。

屬性覆蓋邏輯

原屬性邏輯

新屬性邏輯

結(jié)果

普通屬性

普通屬性

原屬性值被覆蓋,保留最后一次的寫入。

普通屬性

SET屬性

更新后是SET屬性,原屬性值會合并成SET中的一個屬性值。

SET屬性

SET屬性

SET屬性追加,屬性值是并集。

SET屬性

普通屬性

更新后是一個普通屬性,屬性值是最后一次的寫入。

CSV文件格式規(guī)范

與SET屬性相關(guān)的格式規(guī)范具體如下:

  • SET屬性單值字段:保持與原解析格式一致,解析后的值是SET屬性的一個屬性值。

  • SET屬性數(shù)組字段:使用分號(;)分隔數(shù)組元素,例如整型數(shù)組字段 32;45;12。

  • SET屬性數(shù)組字段:可以使用雙引號("")將整個字段括起來,解析時會去掉字段前后的雙引號,例如整型數(shù)組字段"32;45;12"。

  • SET屬性數(shù)組字段類型是字符串:單個數(shù)組元素不能包含有分號(;)字符,會被解析成元素分隔符。

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

屬性值類型

字段類型

取值范圍

Bool或Boolean

Boolean

  • FALSE或false

  • TRUE或true

整數(shù)

char

-128 ~ 127

short

-32768 ~ 32767

int

-2^31 ~ 2^31 -1

long

-2^63 ~ 2^63 -1

小數(shù)

說明

支持十進制計數(shù)法或科學(xué)計數(shù)法。不支持(+/-)INFINITY或NaN。

float

32位IEEE 754浮點

double

64位IEEE 754浮點

字符串

string

  • 雙引號是可選的。

  • 字符串中如果包含逗號(,)、換行(\r\n\n),雙引號("")等特殊字符,需要使用雙引號("")括起來。示例:"Hello,World"

  • 如果用雙引號括起來的字符串中包含有雙引號,可根據(jù)CSV規(guī)則使用兩個雙引號轉(zhuǎn)義。示例:"Hello""World"""

  • 字符串中不包含特殊字符,可以不使用雙引號括起來。

  • 支持長度為零的空字符串,表示為:””,不使用雙引號的空白域表示不存在,為nullptr

普通示例

  • 圖數(shù)據(jù)庫GDB數(shù)據(jù)文件(以TinkerPop modern圖為例)

    示意圖

  • CSV數(shù)據(jù)文件如下所示:

    點文件

    ~id

    ~label

    name:string

    lang:string

    age:int

    1

    person

    marko

    29

    2

    person

    vadas

    27

    3

    software

    lop

    java

    4

    person

    josh

    32

    5

    software

    ripple

    java

    6

    person

    peter

    35

    邊文件

    ~id

    ~from

    ~to

    ~label

    weight:double

    7

    1

    2

    knows

    0.5

    8

    1

    4

    knows

    1.0

    9

    1

    3

    created

    0.4

    10

    4

    5

    created

    1.0

    11

    4

    3

    created

    0.4

    12

    6

    3

    created

    0.2

SET屬性示例

CSV數(shù)據(jù)文件

~id

~label

fruits:string(set)[]

codes:long(set)[]

1

person

apple;pear

22

2

person

banana;bitterorange

25;81

3

person

"cherry;blackberry;grape"

3;12

4

person

"54;11"