- neo4jの概要
- グラフデータベース
- 環境変数の構成(Java環境が必要):NEO4J_HOME +ファイルディレクトリ;パス:%NEO4J_HOME%\ bin;コマンドウィンドウで入力:neo4jコンソール、次にneo4j install-serviceと入力してサービスをローカルにインストールします; neo4j startはサービスを開始し
、データブラウザーを開きます:http :// localhost:7474 / browser / - データストレージ:グラフノード、属性(キーと値のペア)、およびエッジを格納できるグラフ構造にデータを格納します。属性とノードは別々に格納され、属性とノード間の関係がエッジを構成します。
- データの読み取りと書き込み:Neo4jでは、ノードを格納するときにインデックスフリー隣接技術が使用されます。つまり、各ノードには隣接ノードへのポインターがあり、時間の複雑さがO(1)のときに隣接ノードを見つけることができます。 。さらに、公式声明によると、エッジはファーストクラスエンティティであるNeo4jで最も重要であるため、個別に保存されます。これは、グラフをトラバースするときの速度を向上させるのに役立ち、あらゆる方向に簡単にトラバースすることもできます。
- その他類似:Flockdb、Orientdb、Arangodb。Neo4jは最高の安定性を持っています
- Neo4jの使用
-
リレーションシップは方向性があります(リレーションシップを作成するときにマージを使用し、作成しない場合は作成を返します。作成を使用すると、常に作成されます)
-
グラフデータベースは、すべてのデータをノードおよび関係に格納し、データをグラフの形式でネイティブ形式で格納します
-
ネイティブGPEエンジンを使用して、ネイティブイメージストレージ形式を使用する
-
関係は、キーと値のペアとして属性を持つことができます。例:ID = 123
-
ラベルは一連の共通ノードまたは関係を関連付け、ノードまたは関係には1つ以上のラベルを含めることができます
-
()を使用してノードを識別し、[]を使用して関係を識別します
-
create 创建节点,关系和属性
match 检索有关节点,关系和属性
return 返回查询结果
where 提供条件检索数据
delete 删除节点和关系
remove 删除节点和关系的属性
order by 排序检索数据
set 添加或更新标签 -
boolean 布尔类型:true, false
byte 8位整数
short 16位整数
int 32位整数
long 64位整数
float 32位浮点数
double 64位浮点数
char 16位字符
String 字符串 -
Neo4j数据库服务器使用 < node-name > 将此节点详细信息存储在Database.As中作为Neo4j DBA或Developer, 不能使用它来访问节点详细信息
Neo4j数据库服务器创建一个< label-name >作为内部节点名称的别名。使用此标签名称来访问节点详细信息 -
match要配合return,set,delete使用
-
neo4j配置文件的修改
-
match (a:author) set a.name="wu" return a #增加属性或者修改属性。这里'a'是给'author'起个"变量名",下面类似 match (n:author) where n.name=~'w*' return n #可以使用正则匹配 match (n:author) where n.name contains 'w' return n #包含查询 DETACH DELETE #子句允许你删除一个节点的同时删除与其相连的所有关系 match(c:Customer) where id(c)=110 delete c return c #根据节点id删除节点 match (c:Creditcard) where id(c)=111 set c.name="工商银行" return c #根据节点id增加属性 match (c:Customer) match (a:Creditcard) create (a)-[r:消费]->(c) return r #创建关系 match (w:weibo),(c:chaping) where w.emot=0 create (w)-[r1:差评]->(c) return r1 #根据属性建立节点关系 MATCH p=()-[r:`消费`]->() where id(r)=0 set r.`额度`=200000 return r #创建关系的属性 match (c:Customer) return c.name as name,c.id as id union match (a:Creditcard) return a.id as id,a.name as name #联合查询,此处id只能返回节点属性里设置的id,默认节点id会返回null.(union查询会过滤掉重复行,union all 返回所有数据) create(drop) index on :author(name) #创建/删除索引 create(drop) constraint on (a:author) assert (a:author) is unique #创建/删除约束
-
APOC(a package of component):
- 两个jar包,放到neo4j的plugins目录下:apoc-3.4.0.3.jar和mysql-connector-java-5.1.21.jar
- Text and Lookup indexes (文本和索引查找)
- utility functions (实用函数):域名提取、时间、日期、数据格式转换等功能
- グラフアルゴリズム:コミュニティ検出、PageRank、中央アルゴリズムなど
- 空間(空間機能):ジオコーディング、位置計算、空間および時間検索など。
- データ統合:JSON、JDBC、CSV、その他のデータ読み込み
- グラフのリファクタリング:ノードのマージ、属性の指定と分類など
- 仮想nades / rels(仮想ノード/関係):仮想グラフの作成を提供します
- 暗号操作:単一および複数の暗号ステートメント操作およびスクリプト操作
- トリガー(トリガー):リレーショナルデータベースと同じようにトリガーを理解する
-
Neo4jインポートトリプルデータグループ
- コンピューターのneo4jサービスをオフにする
- neo4jのデフォルトのデータベースファイル\ data \ databases \ graph.dbを削除します。それ以外の場合は、このパスの下に新しいデータベースファイルを作成します。ファイル名は***。dbで、neo4j \ conf \ neo4j.confの構成ファイルを変更します。 Office:#dbms.active_database = graph.db、新しく作成したデータベースの名前を変更してコメントを外します
- データをインポートする方法はたくさんありますが、私はimportメソッドを使用して、整理されたノードcsvと関係csvをneo4jのインポートファイルに入れました
- 文入文命令:neo4j-admin import --nodes E:\ neo4j-community-3.5.14 \ import \ entity.csv --relationships E:\ neo4j-community-3.5.14 \ import \ relationship.csv --multiline- fields = true --ignore-missing-nodes = true
- neo4jサービスを開き、組み込みの視覚化Webサイトにアクセスしてグラフデータベースを表示します。
-
neo4jグラフデータベースの概要
おすすめ
転載: blog.csdn.net/weixin_46046193/article/details/108632351
おすすめ
ランキング