タグ付けされた質問 「postgresql」

PostgreSQLは、オープンソースのオブジェクトリレーショナルデータベースシステムです。

2
osm2psqlで大きなデータセットをインポートしますか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 昨年休業。 私の質問は、に似ているのPostgreSQLデータベースへのosm2pgsql経由遅いインポートおよびOSMデータのosm2pgsql輸入の最適化が、我々は現在、私は新しいものを開き、OSMデータの大規模なセットをインポートすることは非常にいくつかの問題を持っているよう。 大規模なデータセット(OSM Export of Europe)をpostgres DBにインポートする最良の方法は何ですか? 私たちのコンピューターには32 GBのRAMが搭載されているので、そのすべてを使用できます。 いくつかのパラメーターを試しましたが、成功しませんでした...最後に試したのは osm2pgsql -c -S /usr/share/osm2pgsql/default.style --slim -d osm-europe -U postgres -C 25000 europe-latest.osm.pbf しかし、サーバーに32 GBのRAMが使用可能であっても、メモリーが不足しました。 pending_ways failed: out of memory for query result (7) Error occurred, cleaning up インポートコマンドをどのように改善しますか? さらに時間がかかる場合でも...しかし、データをpostgres DBにインポートする必要があります。 タスクにEC2を使用することをお勧めしますか、それともセットアップはさまざまなパラメーターで動作しますか?

2
QGISで編集されたPostGISテーブルを更新/更新
PostGISテーブル(ジオメトリ付き)をPostgreSQLデータベースからQGISのレイヤーとしてインポートしました。その後、PostgreSQL UPDATEコマンドを使用してテーブルを編集しました。 すぐにアップデートする方法はあります(のようなリフレッシュ↻コマンド?)データベースとの層と再接続を削除することなく、新しい属性やジオメトリとQGISでの層?

2
Postgres / PostGISの複数の行から1つのgeojsonファイルを生成する方法は?
地理空間オブジェクト、特にポリゴンを含むテーブルがあります。1行からST_AsGeoJSON(http://www.postgis.org/docs/ST_AsGeoJSON.html)を使用してgeoJSON文字列を生成できることを知っています。しかし、私はすべてのテーブルから1つのgeoJSON を生成したいと思います。これは可能ですか?どうすればできますか? 前もって感謝します

1
点に固定された、一定の角度と長さを持つ折れ線を作成する方法
一定の角度(例:160°)と長さ(例:2m)で、別の線ストリングのポイント数に固定された線ストリングを作成したい。そのため、ST_DumpPoints関数を使用してポイントを検索し、作成されたラインストリングをそれらにバインドします。ラインストリングの作成中に角度(α)を宣言する方法はありますか?以下は画像の例です。 青い線を作成したい。 編集 写真の角度(α2)は実際の例ではありません。ただし、方位角は160°(α1のように)です。 更新 Evil Geniusからの回答は、特定のアスペクトのポリゴンの最大幅を計算するのに役立ちました。

2
PostGisを使用したSRID 900913から4326への変換
SRIDが異なる2つのPostgresテーブルがあります。4326と900913です。後者を4326に変換します。最初にSRIDを変更しました。 Select UpdateGeometrySRID('table', 'geomcolumn', 4326). 次に、以下を使用して参照データを変換しました。 update table set geomcolumn = ST_Transform (geomcolumn, 4326). これはうまくいったようです。しかし、TileMillの関連レイヤーのSRS設定をWGS84に変更すると、次のエラーが発生します。 地理的範囲を超えて検出されました。 おそらく変換は機能しませんでしたが、その理由は明らかではありません。

2
非常に遅いArcSDE 10.1データ表示の回避策はありますか
ArcgisエンジンアプリケーションからのデータとArcSDEデータベースの表示が非常に遅いので、SDEデータベースはローカルホストにあるため、ネットワークの問題はありません。しかし、私はまだこの問題を解決する方法も理由もわかりません。 2 CPUのXeon 3.4 GHzと2 GbのRAMを搭載した64ビットマシンで作業しています。 データベースには20のフィーチャクラスが含まれていますが、一部のフィーチャクラスではフィーチャの最大数が100 000を超えていません。データの表示を待つ場合、10分間待つ必要があります。 データベースのインデックスを圧縮して再構築しようとしましたが、改善はまったくありません。 ArcMapからデータを表示しようとしましたが、同じ問題が見つかりました。 パフォーマンスモニターを使用して、CPUとネットワーク側のいくつかのボトルネックを指摘しました。 SDEINTERCEPTの詳細: @travisアドバイスを試したので、Arcmapを使用してsdeでmxd参照データを開き、この部分に7分かかると述べました。 [W 10:34:37.710] Command: QueryWithInfo [R 10:34:37.710] Long: 1 [R 10:34:37.710] Query Info: Num Columns: 1 Columns: "shape" SQL_Construct: [1] Tables: "gebase.sde.point" WhereClause: "type_point_id<3" Query Type: 4 Num Hints: 0 Num Parameter markers: 0 Logfile: <null> [W 10:34:37.718] …

2
PostGISエラーコードはどこにありますか?
ST_Containsin where句を使用すると、次のようなエラーメッセージが表示されることがあります ERROR: GEOSContains: TopologyException: side location conflict at 37.3706 55.7882 現時点では、サードパーティのインポートツールを使用してDBのすべてのジオメトリの有効性を保証することはできないため、すべての例外をキャッチします。 CREATE OR REPLACE FUNCTION safe_st_contains(geom1 geometry, geom2 geometry) RETURNS BOOL AS $$ BEGIN RETURN ST_Contains($1, $2); EXCEPTION WHEN others THEN RAISE NOTICE 'TopologyException'; -- this is a guess RETURN FALSE; END; $$ LANGUAGE plpgsql; TopologyExceptionなどの例外が実際にどこに属していて、代わりにどの例外条件を使用する必要があるのか​​知りたいのOTHERSですが?

6
QGIS 1.8.0からPostgisに接続できません
PostgreSQLとPostGISをラップトップ(Win 7 64ビットOS)にインストールしました。私のマシンでQGIS 1.8.0を実行しています。 Postgisに接続しようとすると、接続失敗エラーが発生し、次のことを試みました: 詳細: ポート:5433ユーザー名:postgresパスワード:postgres pg_hba.confファイルを確認しました(すべてデフォルト設定) PostgreSQLサービスを再起動して試しました PostsreSQLを再インストールしたところ、同じエラーが発生しました。 接続中に空のフィールドを使用しようとしたが、まだエラーが発生する。(何をサービスフィールドに配置するかわからない.. postgresとpostgresqlを使用して試しました) ファイアウォールが無効になっています。 データベースPostgreSQL(バージョン9.2)はローカルマシンにインストールされ、postgis(バージョン2.0.3-2)はマシンにインストールされています。どちらも64ビットセットアップ用です。 7. qGISでPostgresqlの下位バージョンを試してみるべきですか? Googleで調査したところ、接続の問題に関連する同様のバグが見つかりました(不明)

2
PostGIS断続的なINDEXパフォーマンス
約5500万のデータポイント(ポイントはSRID 4326のジオメトリ)を含むテーブルがあり、クエリのために、これを大きなポリゴンからさまざまな範囲のさまざまな( 2000 km四方)からかなり小さい(小さいのは約100 km四方)。 ユーザーが選択した最初のクエリは、最初の5500万ポイントを、ユーザーが選択した日付範囲などに応じて約30万ポイントに絞り込みます。次に、結合が行われ、クエリが完了すると、使用するために選択したエリアセットに応じて、通常は最大150,000に絞り込まれます。 私が抱えている問題は、クエリがときどき停止するだけで、予想される〜25秒ではなく、最大〜18分かかる場合があることです。この時点で、通常、VACUUM ANALYZEを実行し、いくつかのクエリを実行してから、再び動作を開始する必要があります。この時点では、データまたはエリアテーブルのデータは追加、更新、または削除されていません。 私は考えることができるすべてのものをいじってみましたが、これはまだそれも不変で起こっているようです。data.point列とarea.polygon列の両方にGIST INDEXESがあります。 data.point列からINDEXを削除すると、状況が少し安定したように見えましたが、通常は35秒程度遅くなっています。しかし、INDEXを削除することは、妨げにならないようにするのに役立たないので、非常に悪い選択のようです。 PostGIS 1.5でPostgreSQL 9.1.4を使用しています これが私が実行しているクエリです select * FROM data, area WHERE st_intersects (data.point, area.polygon) AND (readingdatetime BETWEEN '1948-01-01' AND '2012-11-19') AND datasetid IN(3) AND "polysetID" = 1 AND area.id IN(28,29,30,31,32,33,25,26,27,18,19,20,21,12,13,14,15,16,17,34,35,1,2,3,4,5,6,22,23,24,7,8,9,10,11) 説明する Nested Loop (cost=312.28..336.59 rows=5 width=2246) (actual time=1445.973..11557.824 rows=12723 loops=1) …

3
PostGISデータベース間でデータを転送するにはどうすればよいですか?
古いPostGISデータベース(バージョン "1.1.6")にかなりのGISデータがあり、それを別のPostGISデータベース( "POSTGIS =" 1.5.3 ")に転送する必要があります。 バックアップを作成して新しいデータベースに復元してみましたが、数百のエラーが発生します。 データを転送する正しい方法は何ですか?

1
PostGIS out-dbラスターの使用に制限はありますか?
大きなラスターをPostGIS 2.0データベースにインポートして、いくつかの障害にぶつかっています。 最初にraster2pgsqlを使用してラスターをインポートしようとすると、次のエラーが表示されます 。rt_band_set_pixel_line:座標が範囲外です 見つけたら、このページを、そしてgdalinfoを使用して、私は、ラスタが65535 X 65535の最大許容サイズを超えたことがわかりました。 gdalinfoの出力: $ gdalinfo ari100.tif ドライバー:GTiff / GeoTIFF ...サイズは42971、77138 座標系は: GEOGCS ["WGS 84"、 ... AUTHORITY ["EPSG"、 "4326"]] Origin =(152.741676637167842、-26.215302802012008 ) ピクセルサイズ=(0.000009239757419、-0.000009239757419) メタデータ: AREA_OR_POINT =エリア イメージ構造メタデータ: INTERLEAVE = BAND コーナー座標: 左上(152.7416766、-26.2153028)(152d44'30.04 "E、26d12'55.09" S) 左下(152.7416766 、-26.9280392)(152d44'30.04 "E、26d55'40.94" S) 右上(153.1387183、-26.2153028)(153d 8'19.39 "E、26d12'55。09 "S) 右下(153.1387183、-26.9280392)(153d 8'19.39 "E、26d55'40.94" S) …


1
PostGIS-GPXパス上のポイント間の累進距離を計算します
PostGIS-PostgreSQLのみを使用して標高プロファイルを作成しようとしています。GPXデータをPostGisデータベースにインポートしました。これで、トラックのGPS座標とトラックのすべてのGPSポイントのタイムスタンプを含むテーブルができました。次に、1行に2つ目のテーブルを作成します。 トラックID 始点からの増分距離を表すフロートの配列 開始点からの増分時間を表す浮動小数点数の配列 単一のSQLストアドプロシージャでそれを行うことは可能ですか? おかげで、 アンドレア

2
プレーンSQLを使用してPostGISでバッファテーブルジオメトリを動的に変更する
PostGISには、pointテーブルとpoint_bufferテーブルの2つのテーブルがあります。ポイントテーブルにはbuffer_distanceフィールドがあり、デフォルト値は200です。ポイントテーブルのbuffer_distance値を変更するたびに、バッファテーブルジオメトリを変更したいと思います。これは、point_bufferテーブルの1つの行に対して次のようにして実行できます。 UPDATE point_buffer SET the_geom = (SELECT ST_Buffer(the_geom,500) FROM point WHERE gid = 1) FROM point WHERE point.gid = point_buffer.gid しかし、point_bufferテーブル全体(サブクエリにWHERE句を削除)を変更しようとすると、エラーメッセージが表示されます。 「エラー:式として使用されているサブクエリから複数の行が返されました。」 私の質問は、point_bufferテーブル全体を一度に変更できますか?1つのオプションがfor loppを使用していることを知っています。上限はポイントテーブルのカウント値であり、point.gid値を増分します。しかし、私はこれをプレーンSQLで実行したいと考えています。

2
PostGISクエリの結果として空間PostGISテーブルを作成する
空間クエリの結果を別のPostGISテーブルとして保存する場合、どうすればよいですか?一連の区画に含まれるすべての住宅の建物を特定することに興味があります。 CREATE TABLE residentialBuildings AS SELECT buildings.the_geom FROM parcels as p JOIN buildings as b ON ST_Contains(p.the_geom, b.the_geom) WHERE p.residentialarea > 0; これは機能しているようですが、空間的な結果は返されません。代わりに、テーブルにはジオメトリのバイナリ表現があります。結果としてテーブルを作成するために何をすべきかわかりません。最初にテーブルを作成してから、結果をジオメトリに変換する必要がありますか? (私はドキュメントを読みましたが、これはかなり明白なことだと思うので、適切な検索用語が欠けているように感じます)。 ジオメトリを作成するためのコマンドがたくさんあることに気づきました ST_GeogFromText ST_GeographyFromText ST_GeogFromWKB ST_GeomCollFromText ST_GeomFromEWKB ST_GeomFromEWKT ST_GeometryFromText ST_GeomFromGML ST_GeomFromKML ST_GMLToSQL ST_GeomFromText ST_GeomFromWKB しかし、どのオプションを選択するか、またはこれが正しいアプローチかどうかはわかりません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.