問題タブ [couchdb-futon]

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 に答える
351 参照

couchdb - futon を使用してリスト機能を管理するには?

布団にリスト関数の結果を表示させ、マップ/リデュース関数と同じように編集する方法はありますか?

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

json - CouchDBでの重複の識別

私は一般的にCouchDBとドキュメント指向データベースに不慣れです。

私はCouchDBで遊んでいて、(perlを使用して)ドキュメントを作成し、FutonのMap/Reduce関数を使用してデータをクエリしてビューを作成することに慣れることができました。

私がまだ理解しようとしていることの1つは、FutonのMap/Reduceを使用してドキュメント間で重複する値を識別する方法です。

たとえば、次のドキュメントがある場合:

そして、重複した「name」値を持つドキュメントIDのリストを取得したかったのですが、これはFuton Map / Reduceで実行できることですか?

達成したいと思っていた結果は次のとおりです。

..また..

..これは値であり、それらの重複する値を含む関連するドキュメントIDです。

Map / Reduceでいくつかの異なることを試しましたが、私が理解している限り、Map関数はドキュメントごとにデータを処理し、Reduce関数では特定のキー/値のみを操作できます。資料。

私はperlで必要なデータを取得し、そこで魔法を使って、必要な結果を得ることができることを知っていますが、CouchDBの利点/制限をよりよく理解するために、今のところCouchDBのみで作業しようとしています。

これを行うことを考えているもう1つの方法は、RDBMSテーブルのような単一のドキュメントを使用することです。

..これにより、Map/Reduce関数を当初考えていた方法で使用できるようになります。しかし、これが理想的かどうかはわかりません。

私の心はまだRDBMSの土地にとどまっていることを理解しているので、上記でやろうとしていることの多くは必要ないかもしれません。これに関する洞察をいただければ幸いです。

ありがとう!

編集:いくつかの例のJSON構文を修正しました。

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

couchdb - couchdb & futon - futon を使用して連続レプリケーションをキャンセルする方法はありますか

futon を使用して連続レプリケーションをキャンセルする方法はありますか?

私の開発者の 1 人が、テンプレート DB を自分の作業環境に複製しようとしたときに、このおかしなエラーを受け取り始めました。

しばらくいじってテストしたところ、なんとか問題を再現できたのですが、布団の「連続」チェックボックスを誤ってチェックした可能性が高いことがわかりました。

今、私たちは窓に取り組んでいます。魔法のカールはありません。もちろん、Linux から彼の問題を解決することもできますが、興味があります。

futon を使用して連続レプリケーションをキャンセルする方法はありますか?

0 投票する
2 に答える
223 参照

couchdb - CouchDB のマルチ ホスティング クォータ

CouchDB の無料ホスティングを提供したいと考えています。承認の部分は非常に簡単です (ユーザーは 1 つのデータベースにアクセスできます) が、そのデータベース/ユーザーにスペース クォータを割り当てる簡単な方法があるかどうか疑問に思っていました。

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

couchdb - CouchDB 承認ロジック?

http://guide.couchdb.org/draft/security.htmlを読みました

および前の質問 データベースごとの CouchDB 認可 および http://wiki.apache.org/couchdb/Security_Features_Overview

私は現在Apache CouchDB 1.2.0を使用しており、布団を介して管理者を追加すると、たとえば_usersにユーザーが追加されます

したがって、最初の質問は、なぜ管理者が管理者ではなくタイプ ユーザーとして追加されるのかということです。このユーザーは、任意のデータベースで何でもできるため管理者であり、ロールは空ですが、_users ドキュメントを保護しました

唯一のメンバーとしてのロールと管理者のみがこれにアクセスできます (_users ドキュメントでのロールが空の場合でも)。

この保護では、新しい「通常の」ユーザーの作成が許可されないため、futon の「signup」コマンドはサインアップ エラーを返します: このデータベースにアクセスする権限がありません。

この設定が唯一の論理的な設定だと思います。誰でもデータベースにユーザーを作成できるようにしたいのはなぜですか??

データベースで読み取りアクセスを 1 人の管理者のみに指定しても、すべての管理者がアクセスできます

上記のケースは、上記の例のように新しく作成された stackoverflow 管理者には影響しません。

したがって、futon 経由で作成された管理者は、関係なくすべてのことを行うことができると思います。唯一の紛らわしい論理部分は、特別なタイプ (ユーザー) も特別なロールも持たない _users ドキュメントです。

具体的な質問に戻ります: - futon を介して管理者を追加する場合、_users ドキュメント内で管理者としてマークされていないのはなぜですか? また、そのドキュメントから CouchDB はどのようにしてそれがシステム全体の管理者であると判断しますか? - サインアップを許可せずに通常のユーザーを作成したい場合 (futon または直接 HTTP リクエストを介して)、_users ドキュメントを保護する必要があります。しかし、自分のデータベースで読み取り/書き込みを行うユーザーを作成するにはどうすればよいでしょうか? - ユーザー (CouchDB Docs による) には DB に対する読み取り/書き込み権限がありますが、設計ドキュメントを作成する可能性はないため、DB を使用して開発する人にはビューが必要になるため、実際に効率的に使用するにはどうすればよいでしょうか?

http://www.iriscouch.com/に提供されている共有 CouchDB があるため、セキュリティを危険にさらすことなく、通常の単純なマルチ ホスティングを使用できるはずです。ユーザーは自分のデータベースを持っており、このデータベースだけで何でもできます。とにかく管理者の役割は「ユーザー」であるため、_users テーブルで非管理者とどのように区別しますか?

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

couchdb - CouchDB Simple SELECT は正しい方法ですか?

Apache CouchDB で非常に単純なユーザー システムを構築しています。メールでユーザーを検索するための簡単なビューを作成しました。

これは戻ります

今、私は非常にばかげた何かを見落としているかもしれません (もしそうなら、私は謝罪します) しかし、なぜこのビューから 2 つのフィールド (ID を数えれば 3 つ) しか取得できないのでしょうか?

通常の状況と同様に、電子メールまたはユーザー ID から開始してユーザー データベースを検索し、完全なドキュメントを取得することができます。

今、私はhttp://guide.couchdb.org/draft/cookbook.html (キーで検索) の例を読みました。特定の年齢のユーザーの名前だけです。

これがどのように適切に使用されるのか理解できません。クライアント、サプライヤーのデータベースにクエリを実行すると、1つまたは2つの値だけでなく、完全なドキュメントが返されます。

だから私の解決策は別の見方でした:

そのため、メールだけでなくドキュメント全体も値として返します。これは機能しますが、ご想像のとおり、大規模なデータベースではかなり遅くなります。

問題は、単純なクエリを実行して、たとえば CouchDB - NoSQL を使用して電子メールで検索しているユーザーに関する完全な詳細を取得するより良い方法はありますか?

「NoSQLでSQLを考えることはできないので、これは間違っている」と答えたくなる誘惑があることは知っていますが、待ってください。実際のアプリケーションでは、テーブル/行などではなくドキュメントの観点からNoSQLとして考えると、完全なドキュメントが必要になる場合があります。ユーザーのために。クライアントの詳細を取得する単純なシステムがあるとします。完全な文書が必要です。最初にキー、電子メールを提供する場合にのみ、ID とキーを知る必要はありません。

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

ubuntu - CouchDB:布団を提供していません

Ubuntu11.10にCouchDBをインストールしました。HTTPDサーバー(正しく機能する)とCouchDBのすべての前提条件が実行されています。

システム上のユーザーのバックグラウンドでCouchDBを起動しました:

sudo -i -u bpetruk couchdb -b

そして、それが始まったこと、そして「リラックスする時が来た」と私に告げます。残念ながら、まだリラックスできません。サーバーがロードされていても、標準のhttp://127.0.0.1:5984/_utilsの場所からFutonにアクセスできないためです。

スタートアップルーチンからのエラー出力は次のとおりです。恐ろしい、私は笑を知っています。JSONをターミナルにダンプしたようです。

Apache CouchDB 1.2.0(LogLevel = info)が起動しています。[エラー][<0.96.0>]{error_report、<0.31.0>、{<0.96.0>、crash_report、[[{initial_call、{couch_auth_cache、init、['Argument__1']}}、{pid、< 0.96.0>}、{registered_name、[]}、{error_info、{exit、{{badmatch、{error、eacces}}、[{couch_auth_cache、ensure_users_db_exists、2}、{couch_auth_cache、open_auth_db、0}、{couch_auth_cache、 reinit_cache、1}、{couch_auth_cache、init、1}、{gen_server、init_it、6}、{proc_lib、init_p_do_apply、3}]}、

同様に苛立たしいのは、couchdb(バックグラウンドプロセスのステータスを出力することになっている)で-sフラグを定義してもまったく何も得られないという事実です!ですから、その点についても情報を提供することはできません。

CouchDBの世界への最初の進出で私が知らないかもしれない一般的な問題はありますか?私は本当にこれに固執しています!

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

json - これらの CouchDB ビューの 1 つしか機能しないのはなぜですか?

"Person"type:およびtype の CouchDB にいくつかのドキュメントがあり"Account"ます。

これらのタイプのすべてのドキュメントのストレート リストについては、次の設計ドキュメントを で作成しました_design/directory_views

この JSON は JSONLint で検証され、ドキュメントを Futon のソース ビューに保存するときに受け入れられます。

ふとんリストdirectory_views/all_personsdirectory_views/all_accountsドロップダウンで期待どおり。all_persons は type のドキュメントの正しいリストを作成しますが"Person"all_accountsトップレベルにリダイレクトし、All Documentsすべてをリストします。

なぜ機能するall_personsのにall_accounts失敗するのですか?

PS。これまでに多くの設計ドキュメントでこの動作を経験しました。この例http://kore-nordmann.de/blog/couchdb_a_use_case.html#a-practical-exampleは、同じデザイン ドキュメント内の 2 つのビューを示しているため、ドキュメントごとに 1 つのビューしか持てないと思います。

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

javascript - CouchDb で並べ替えられたリスト ビューを並べ替えることができますか?

イベントの開始時刻と座標を含むcouchdbがあります。次のように、現在の場所からそれらのイベントまでの距離を計算するリスト ビューを作成しました。

次のようなイベントの単純な byDate ビューがあります。

私の懸念: 最初にリスト内の距離でイベントを並べ替えてから、並べ替えられたリストを開始時間で並べ替える方法はありますか?

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

linux - CouchDB ビューが応答しない

元のドライブの容量が 100% に達したため、.couch ファイルをあるドライブから別のドライブに移動しました。次に、新しいドライブを古い/元のディレクトリに再マウントしました。つまり、何も変わっていません。

ドキュメントを表示できるようになりましたが、ビューを実行できません。

ハングするだけです。

何が問題なのかわかりますか?