問題タブ [vectorwise]
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.
sql - vectorwise での効率のための挿入構文の繰り返し - 例はありますか?
Ingress VectorWise データベースへの挿入を高速化する必要があり、ドキュメントには次のように示されています。
http://docs.actian.com/ingres-vectorwise/2.5/sql-language-guide/5315-insert
そして言います:
REPEATED: 挿入の実行計画を保存します。これにより、後続の実行が高速化されます。
私は一生、「REPEATED」を使用してクエリを正常に実行することはできません。また、SQLを直接使用してオンラインで例を見つけることもできません。これを構文的に機能させる方法について何か提案はありますか?
java - nullを含む配列からのJavaでのSQLの動的な入力
私の問題の簡単な例をあげると:
これで、Javaには、データベースのコンテンツに一致するオブジェクトの配列があります。配列値を使用して、このデータベーステーブルの挿入/更新/削除ステートメントを作成する必要があります。
ただし、事前に挿入からnullフィールドを除外する必要があるため、これは困難になります。たとえば、上記の2つがnullでない場合:
すべてが簡単です。しかし、それがnullの場合、次のステートメントが必要です。
私が扱っているテーブルは50列以上なので、手動でこれを実行したくありません。管理できなくなります。では、一般的にこの問題にどのように対処するのでしょうか。それは一般的な状況に違いありません。
PS:私は完全なORMライブラリを使いたくありません。それはやり過ぎのようです。
database - 列指向データベースでの単一ワイド テーブルのパフォーマンス (Vectorwise)
スタースキーマと単一の非正規化テーブルを使用して、ベクターごとにいくつかのテストを実行しています。非正規化されたテーブルには、varchar (100) を超える 5 つの余分な列があります。私は列指向の世界に慣れていないので、事実を正しく理解するために理解したいと思っています。
いくつかの事実 :
クエリメモリ = 20G、キャッシュメモリは 7G に設定
名前の列だけのサイズは、約 6G、6.5G、2.6G、および 650M です。明らかに、これらは私のキャッシュメモリに収まらないため、システムは I/O バウンドです。
スタースキーマアプローチを使用すると、メインメモリキャッシュに簡単に収まる事実から整数列をキャッシュする必要があるため、高速に動作します。
これに関していくつか質問があります:
単一のテーブルを使用する必要がある場合、これらすべての列がメモリに収まるように RAM を増やす必要がありますか? 他の誰かが Vertica または他の列指向データベースを使用してこの種の構造を作成したかどうかを知りたいです。はいの場合、すべての varchar 列が RAM に収まる必要がある同じアプローチを使用していますか?
単純なスター スキーマ クエリ
select col1,col2, col3, sum(col4), sum(col5) from fact_table join tabl1 on condition join tab2 on condition where tab1.col1 = 1234 and tab2.col2 = 6789
以下より遅く動作します:
select col1,col2,col3,sumcol4, sumcol5 from (select col1,col2, col3, sum(col4) as sumcol4, sum(col5) as sumcol5 from fact_table where fact_table.col1 = 1234 and fact_table.col2 = 6789) as facts join tabl1 on condition join tab2 on condition
なんで?
注: マスター テーブル tab1 および tab2 は、メイン メモリ常駐です。
Vectorwiseを使用していますが、これらの観察結果が Vertica にも当てはまるかどうかを知りたいだけですか?
vectorwise - VectorWiseデータベースでテーブルサイズを確認する方法
VectorWiseでテーブルのサイズを確認したいのですが、誰か助けてくれませんか。
sql - 3 つのテーブルの同じ列の結合から選択
A、B、およびCの3 つのテーブルがあります。それらはすべて異なるデータを保持しますが、共通の列がいくつかあります。
A、B、およびCにすべて列C1およびC2がある場合、3 つのテーブルのいずれかにある可能性のあるC1値を使用して、特定のC2値を検索するにはどうすればよいですか?
基本的に、単純なルックアップを行いたいのですが、3 つのテーブルの結合に基づいて動作させたいのですが、これを実現するためにビューを使用したくありません。
これはIngres Vectorwiseデータベースであることに注意してください。
sql - NULL を返すルックアップに失敗した IN クエリの行を返す
このクエリを考えると:
テーブルc
に v1 と v2 の値があり、v3 の値がない場合、2 行の結果セットが得られます。すべてのターゲットの行を取得しながら、同じクエリ (または同じ結果が得られるクエリ) を実行する方法はありますか?
この場合、「v1」と「v2」の値を持つ 2 行と NULL を持つ 1 行の 3 つの行を受け取りたいと思います。
sql - プロファイリング/テスト目的で同じ SQL クエリを作成する別の方法
テキスト検索に関連して速度が低下しているため、クエリをより高速に実行する方法を見つけるために、Ingres Vectorwise データベースをテストしています。
char() 列に基づいて約 5000 項目を検索する場合、以下の実装 #1 は非常に高速です。残念ながら、50 項目を検索するのに、5000 項目を検索するのとほぼ同じ時間がかかります。
一方、実装 #2 は 50 アイテムに対しては非常に高速ですが、5000 アイテムに対してはまったくスケーリングしません。
実装 #3 は明らかに #1 よりも悪くなりますが、私が試したことの例を提供しただけです。
私の質問は次のとおりです。私のテーブルには q = bigint、r = char() フィールドの 2 つの列しかないと仮定すると、基本的な SQL を使用してこのクエリを記述し、より多くの選択肢を選択できるようにする他の方法を考えてもらえますか? 50 と 5000 (データベースで期待されるようにスケーリングするもの) で合理的に機能するオプションがあることを願っています。
同じ機能を実行する代替クエリを使用して、すべての回答を受け入れることに注意してください。多ければ多いほど良いです。私が望んでいる方法でスケールすることは期待していませんが、もっと試してみるまでわかりません.
実装 #1:
実装 #2:
実装 #3:
ingres - E_VW1035 Vectorwise サーバーに接続できません
私はベクトルワイズから始めました。データベースを作成しようとしましたが、これを行うことができます。
エラーがあります:
では、どうすればこのエラーを解決できますか? どうすればデータベースを削除できますか? なぜなら、私が再試行するとき
エッサイはすでに存在するようです
sql - ANSI-SQL で文字列を分割する方法
ANSI SQL で列の値を分割するにはどうすればよいですか? 私は VectorWise DB を使用していますが、 VW は分割方法をサポートしていません。
どうすれば解決できますか?
変更後のスクリーンショットを追加しました。しかし、私は変更後に欲しいものについて十分な評判を得ていません:(
ANSI は、T-SQL が持ついくつかの特定のメソッドをサポートしていません。
sql-server - SQLServer に関するクエリの移植
Vectorwise DB に次のようなクエリがあります。
SQLSERVER に移行する必要があります。これを試してみましたが、
それでもエラーが発生します。助けてください。