問題タブ [ets]

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 投票する
3 に答える
5595 参照

erlang - ets:matchをErlangのレコードと照合する方法は?

コード内でタプルを使用してレコードを指定するのは悪い習慣だと聞いたことがあります。#record_name{record_field = something}通常のタプルではなく、常にレコード フィールド () を使用する必要があります{record_name, value1, value2, something}

しかし、ETS テーブルに対してレコードを照合するにはどうすればよいでしょうか? レコードを含むテーブルがある場合、次のものとのみ一致できます。

レコード定義にいくつかの新しいフィールドを追加すると、このパターン マッチが機能しなくなることは明らかです。

代わりに、次のようなものを使用したいと思います。

残念ながら、空のリストを返します。

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

erlang - erlang etsテーブルフィールド情報を見つける方法は?

erlangでetsテーブルのフィールド情報(つまりフィールド名)を見つける方法は何ですか?

ets:info(TableName)ets:i(TableName)を試しました。1つ目は、メモリ、所有者、サイズ、named_table、keypos、protectionなどのテーブルに関する詳細を示します。2つ目は、テーブルに存在するエントリに関する詳細を示します。

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

performance - ETSordered_setと効果的なページネーション

日時であるETSに{Key, Value}データを保持します。内部で指定された時間内にすべてのアイテムを選択するのは非常に簡単です。ordered_setKey[From, To]

そんな感じ:

関数内にLimitパラメータがselect()あるので、選択するアイテムの数を制限することができます。しかし、どうすればオフセットを指定できますか?

入力として、私のモジュールは時間間隔とページ番号を受け取ります。私の目標は、指定された時間間隔とページのアイテムを返すことです。ページサイズ(Limit)は定数です。オフセットを次のように計算できます

問題は、特定のページのみのアイテムを効果的に選択するにはどうすればよいですか?

関数がパラメーターselect()を受け取ることができることは知っていますが、前の選択からの状態がありません。Continuationページ番号しかありません。

可能ですが、他のデータ構造を使用する必要があります。より良い解決策をお勧めしてください。

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

erlang - ETS セット保存順序?

ETS セットは、タプルの内部順序が挿入された順序と同じであることを保証しますか? 例: 毎秒タプルを挿入してログを保持します。タイムスタンプがキーです。この例では、セットはタプルがキーでソートされることを保証しますか?

私は、ordered_set が私が望むことを行うことを理解していますが、挿入のオーバーヘッドがあります。したがって、セットが挿入順序を保持する場合、私の例ではセットを使用する方がはるかに効率的です。それで、そうですか?:-)

前もって感謝します、ニコラ

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

erlang - ETS テーブルからのデータの取得

ETS テーブルのルックアップ時間は一定であることはわかっています。しかし、テーブルはプロセス外に保持されており、データを取得するときはプロセス ヒープに移動する必要があるとも聞きました。だから、これは高価です。しかし、それから、これを説明する方法:

1.7 MB のバイナリをテーブルから取得するのに 0 時間かかる!?

編集: Odobenus Rosmarus の回答を見た後、バイナリをリストに変換することにしました。結果は次のとおりです。

現在、テーブルから1986392 long を取得するのに 106000マイクロ秒listかかりますが、これはかなり高速ですよね? リストは要素ごとに 2 語です。したがって、データは 4x1.7MB です。

EDIT 2 : erlang-question ( http://groups.google.com/group/erlang-programming/browse_thread/thread/5581a8b5b27d4fe1 ) でスレッドを開始しましたが、0.1 秒がかなりの時間であることがわかりました。 memcpy() (データをプロセスのヒープに移動します)。一方、Odobenus Rosmarus の回答では、バイナリの取得に時間がかからない理由が説明されています。

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

ets - データのインポートの例

dets:to_ets/2 で問題が発生しました

誰かが私にオンラインの例を教えてもらえますか? マニュアルページを見てきましたが、使用例は見当たりませんでした。グーグルで何も見つかりませんでした..

私の問題は、dets の作成ではなく、実際の dets:to_ets() 関数自体にあるようです。私はそれを自分でテストしましたが、問題ありません。

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

erlang - erlangでetsを分割する

mapReduceアルゴリズムを使用したコースで作業しているので、ビッグデータファイルからErlangでetsテーブルを作成し、同時に作業したいと思います。テーブルが非常に大きいことが判明しました。mapReduceアルゴリズムを使用してテーブルを同時に検索できるように、1つの大きなテーブルをいくつかの小さなテーブルに分割する方法があるかどうかを知りたいです。1つの大きなテーブルを分割する方法はありますか?テーブルをサブテーブルに??? Thnx。

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

python - Enthought Tool SuiteのPythonスクリプトをダウンロードするにはどうすればよいですか?

Pythonはすでにダウンロードしていますが、Enthought Tool Suite(ETS)にコードを提供したいと考えています。このサイト(http://code.enthought.com/source/)によると:

次のPythonスクリプトをダウンロードするように指示されています:https ://raw.github.com/enthought/ets/master/ets.py

ets.pyをpythonスクリプトに入れ、名前を付けて保存します...そしてPython Shellで、「importets」と入力しました

ただし、何も起こりません。

また、サイトは次のコマンドを実行するように言っています。

Python Shellでこれらの行を入力すると、「SyntaxError:invalidsyntax」というメッセージが表示されます。

ご覧のとおり、私はPythonを初めて使用し、何をしているのかわかりません。ETSスクリプトをダウンロードしてコマンドを実行するにはどうすればよいですか?

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

erlang - マッチスペックでmatch_objectを設定します

この関数は、low = <X = <highでこのレコードを選択したいときにのみ、空のリストを取得します。

私を助けてください。ありがとうございました