在Postgis中上传大量空间数据的好方法是什么?

| 我有大量的空间数据需要分析并在应用程序中使用。原始数据以WKT格式表示,我将其包装到INSERT SQL语句中以上传数据。
INSERT INTO sp_table ( ID_Info, \"shape\") VALUES (\'California\', , ST_GeomFromText(\'POLYGON((49153 4168, 49154 4168, 49155 4168, 49155 4167, 49153 4168))\'));
但是,这种方法花费了太多时间,并且数据量很大(1000万行)。 那么,还有其他方法可以上传大量空间数据吗? 任何加速技巧和技巧都值得赞赏。     
已邀请:
        使用COPY将文本文件插入表(具有适当的列) 如果该表没有一个,则将SERIAL PRIMARY KEY添加到此表中 真空 每个CPU产生一个进程,这可以执行以下操作:
INSERT INTO sp_table ( ID_Info, \"shape\")
SELECT state_name, ST_GeomFromText( geom_as_text )
FROM temp_table
WHERE id % numbre_of_cpus = x
为每个进程使用不同的\“ x \”值,以便处理整个表。这将允许每个内核在慢速的ST_GeomFromText函数上运行。 插入后创建GIST索引。     
        在这里,您可以找到一些常规的性能提示。可能您已启用fsync属性,并且每个“ѭ2”命令都被强制物理写入硬盘,这就是为什么要花费这么多时间的原因。 不建议关闭fsync(尤其是在生产环境中),因为它使您可以在意外的OS崩溃后安全地恢复数据。根据文档:   因此,仅建议关闭   如果您可以轻松地重新创建您的fsync   来自外部数据的整个数据库。     

要回复问题请先登录注册