問題タブ [orientdb-2.1]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
111 参照

json - OrientDB は、カプセル化されたフィールドで LIKE を使用します

という名前の OrientDB テーブルがCalculationFunctionGroupあり、その中に という名前のフィールドがありますfunctions

このフィールドには、次のような JSON コンテンツがあります。

[{"@type":"d","@version":0,"@class":"CalculationFunction","name":"AR_0015_0280","code":"//AR_0015_0280 OTTIMIZZATA / FORMATTATA\nvar worka01 = anagPay(\"AR_0015_0280\", -1);\nreturn worka01;","language":"Javascript"}]

codeJSONの要素に対してLIKE条件を満たす行を抽出したい。

私はこのクエリを試しました:

しかし、抽出された行の数はゼロです!

0 投票する
1 に答える
155 参照

orientdb - コンソールで SQL スクリプトを実行すると、OrientDB 2.1.9 が OStorageException EOFException でクラッシュする

しばらく SQL データベース初期化スクリプトを使用してきましたが、最近データベースが実行中にクラッシュするようで、理由はわかりませんが、詳細を以下に示します。

  • Ubuntu 14 Trusty x64 (Vagrant 経由) で OrientDB を実行しています。
  • スクリプトが UNIQUE_HASH_INDEX を作成しようとしている間は常にクラッシュしているように見えますが、同じ UNIQUE_HASH_INDEX 命令で常にクラッシュするとは限りません

スクリプトは多くの頂点とエッジを作成しますが、たとえば、ここでクラッシュします (UNIQUE_HASH_INDEX の行を参照)。

次のエラーでデータベースが完全にクラッシュします。

インデックスを作成しています... エラー: com.orientechnologies.orient.core.exception.OStorageException: コマンドの実行中にエラーが発生しました: sql.create INDEX Channel.uq_channelId ON Channel(channelId) UNIQUE_HASH_INDEX

エラー: java.io.EOFException

ログ ファイルを見ると、ヒントは最後の 2 行だけです。

どうすればこの問題を解決できますか、または少なくともデータベースのクラッシュの原因についてより良いヒントを得ることができますか?

最初は古いバージョンを実行していたので、OrientDB 2.1.6 でもテストします。同じ問題。

0 投票する
3 に答える
1141 参照

orientdb - OrientDb で重複するエッジを見つけて削除する

Vertex User と Edge FriendsWith があるとします。FriendsWith は、アウトとインの両方向に存在できます (通常、アウトまたは 2 人のユーザーの間のいずれかです)。

重複とは、あるユーザーから別のユーザーへのアウトまたはインが複数回見つかった場合です (アウトとインの同時は重複とは見なされません)。

重複したエッジを見つけて削除する方法はありますか?

更新問題を示す図を追加

ここに画像の説明を入力

ありがとうございました。

0 投票する
1 に答える
156 参照

neo4j - OrientDB の neo4j クエリを書き直す

Neo4j と OrientDB グラフ DB のパフォーマンスをテストしています。neo4j サイトで入手できる MoiveDatabase データセットを使用しています。私は指示に従いました:

ここにclasses出力があるので、インポートはOKだったと思います。

しかし、このクエリを実行しようとすると、 SELECT in() FROM Movie LIMIT 10またはSELEC out() FROM Person LIMIT 10レコードが取得されません。何故ですか?

co-actors クエリを書き直そうとしています:

および「共同参加者」クエリ:

これに使うべきTRAVERSEですか?

0 投票する
0 に答える
79 参照

orientdb - OSBTreeException: キーのサイズが許容範囲を超えています。操作は取り消されました

OrientDB 2.1.9 を使用して、データをグラフ データベースに一括ロードしようとしています。データベースには、ページ (頂点) とページ間のリンク (エッジ) が含まれています。

ページ頂点の頂点タイプを定義しました。タイトルでページを検索したいので、title プロパティにもインデックスを作成します。

単一の呼び出しを使用して、ページの頂点を追加し、そのタイトル プロパティを設定します。

一括インポートの実行中に、次の例外が発生します。

例外が発生する理由がわかりません。キー値は、たとえば「Drie (スポーツ)」であり、10Kb にはほど遠い値です。

助言がありますか?

ありがとう!

0 投票する
1 に答える
168 参照

orientdb-2.1 - エッジ、頂点の空のコレクションを持つ頂点の OrientDB クエリ結果セット

これは簡単な質問かもしれませんが、私は混乱しています、助けてください.....

OrientDB 2.1.9 を使用しており、VehicleHistoryGraph データベースを試しています。Studio のブラウズ モードから、制限を 9 レコードのみに設定します。今、私はこの簡単なクエリを入力しています

select out() from Person

返された結果セットは 9 件のレコードですが、車両を購入したのは 2 件だけです。残りは空のコレクションで表示されます []。これはダメだ、困った。エッジのコレクションを持つ 2 つの頂点のみが返されることを期待しています。

何かを購入したこの 2 人を取り戻すにはどうすればよいですか? select にこのアンワインド オペレータがあることにも気付きました。その場合、これは役に立ちますか、例を挙げていただけますか?

0 投票する
0 に答える
71 参照

graph - in() out() と both() のパフォーマンスを改善する

Vertex User, Post と Edge FriendsWith, HasPost があるとします。FriendsWith は、アウトとインの両方向に存在できます (通常、アウトまたは 2 人のユーザーの間のいずれかです)。ユーザーは投稿の所有者です。

600000 人のユーザーと 7500 万件の投稿を獲得しました

クエリに従ってユーザーの友達を取得するために使用します。

SELECT both('FriendsWith') FROM #12:1

友達の投稿を取得する

SELECT both('FriendsWith').out('HasPost') FROM #12:1 LIMIT 50

しかし、ユーザーが多くの友達 (~1000) を持っている場合、パフォーマンスは最高ではありません (友達を得るのに ~ 400 ミリ秒、投稿を得るのに 1 ~ 5 秒かかります)。

このクエリを改善する方法はありますか?

ありがとうございました。

アップデート

select from (select expand(both('FriendsWith').out('HasPost')) from #12:1) LIMIT 50 50 個のアイテムが見つかりました。クエリは 7.08 秒で実行されました。

0 投票する
1 に答える
145 参照

orientdb - 「結合」による Orient DB のクエリ

私は最近、リレーショナル バックグラウンド (Oracle RDBMS) から来た OrientDB を見始めました。OrientDB にロードしたデータのクエリに苦労しています。

私は2つのクラスを持っています:

最初に 'stocks' クラスで UPSERT を実行し、次に 1 日に数回価格を追加してデータをロードしています。

私がやりたいのは、すべての stocks.stock_symbol 値を取得し、(平均を使用して) 過去 24 時間以内に price.price_value を集計することです (したがって、prices.price_created_datetime でフィルタリングします)。

私は Web ベースのスタジオを使用しており、いくつかの異なる方法をいじりましたが、ほとんどのクエリが何も返さないときに概念を理解するのに苦労しています。Java アプリケーションに組み込まれた OrientDB 2.1.9 を実行しています。

どんな助けでも大歓迎です。