大批量数据导入(Bulk Data Loading)

PSQL

.csv文件中,没有引号;

直接写值,不管是啥数据类型;

存在表,直接导入数据;

  1. bin/psql.py -t EXAMPLE localhost data.csv

建表,导数据

  1. ./psql.py localhost:2222 XXX.sql XXX.csv

MapReduce

etc/profile

  1. export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:/CI-zcl/hbase-0.98.6.1-hadoop2/lib/hbase-protocol-0.98.6.1-hadoop2.jar

报错

  1. 17/02/14 16:50:08 WARN zookeeper.ClientCnxn: Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect
  2. java.net.ConnectException: 拒绝连接
  3. at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
  4. at sun.nio.ch.SocketChannelImpl.finishConnect(Unknown Source)
  5. at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:350)
  6. at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1068)
  7. 17/02/14 16:50:08 WARN zookeeper.RecoverableZooKeeper: Possibly transient ZooKeeper, quorum=master:2181, exception=org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /hbase/hbaseid
  8. 17/02/14 16:50:08 INFO util.RetryCounter: Sleeping 1000ms before retry #0...
  9. 17/02/14 16:50:09 INFO zookeeper.ClientCnxn: Opening socket connection to server master/10.2.32.22:2181. Will not attempt to authenticate using SASL (unknown error)
  10. 17/02/14 16:50:09 WARN zookeeper.ClientCnxn: Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect

原因及解决

看日志,很重要

端口改回2181就好使了

在PhoenixHome里面执行:

  1. hadoop jar /CI-zcl/phoenix-4.1.0-bin/phoenix-4.1.0-client-hadoop2.jar org.apache.phoenix.mapreduce.CsvBulkLoadTool -t TEST -i /data/tb1.csv -z master:2181
时间: 2024-12-08 11:10:41

大批量数据导入(Bulk Data Loading)的相关文章

postgresql大批量数据导入方法

一直没有好好关注这个功能,昨天看了一下,数据库插入有瓶颈,今天研究了一下: 主要有以下方案: 1.使用copy从文件导入: copy table_001(a, b, "f", d, c, "e") from 'd:/data1.txt' (delimiter ','); 速度极快: 不带索引: 查询成功: 共计 69971 行受到影响,耗时: 4351 毫秒(ms).        查询成功: 共计 69971 行受到影响,耗时: 4971 毫秒(ms).     

java大批量数据导入(MySQL)

? 版权声明:本文为博主原创文章,转载请注明出处 最近同事碰到大批量数据导入问题,因此也关注了一下.大批量数据导入主要存在两点问题:内存溢出和导入速率慢. 内存溢出:将文件中的数据全部取出放在集合中,当数据过多时就出现Java内存溢出,此时可通过调大JVM的最大可用内存(Xmx)解决, 但终究不是王道.    MySQL支持一条SQL语句插入多条记录的操作,并且效率比单条插入快的不是一点点:但是MySQL一次可接受的数据包大小 也是有限制的,当一次插入过多时也可能造成数据包内存溢出,此时可通过调

大批量数据导入

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Med

大批量数据导入数据库,dbf导入oracle,csv导入oracle

Excel 07-2003一个工作表最多可有65536,行最多可有256列:Excel 2007及以后版本,一个工作表最多可有1048576行,16384列. 一.小批量数据处理: 方法一:用excel可以直接打开dbf或csv文件,数据库表for update,直接把excel表中想要的列值直接复制到pl/sql中 相对应字段. 方法二:若是dbf文件可用dbfplus工具转换成csv文件,打开pl/sql中的 工具>文本导入器,在'到Oracle的数据'中选择到导入哪个用户下的哪个表,点击左

旅游公司用友财务软件接口实现大批量数据导入财务模块实现报表统计

一. 总体概况:.............................................................................................................. 2 二. 需求:....................................................................................................................... 2 三

jdbc批量插入实现大批量数据快速插入

今天在做一个将excel数据导入数据库的程序时,由于数据量大,准备采用jdbc的批量插入.于是用了preparedStatement.addBatch();当加入1w条数据时,再执行插入操作,preparedStatement.executeBatch().我原以为这样会很快,结果插入65536条数据一共花30多分钟,完全出乎我的意料.于是问了一下同事,他们在处理这种大批量数据导入的时候是如何处理的,发现他们也是用的jdbc批量插入处理,但与我不同是:他们使用了con.setAutoCommit

如何使用免费控件将Word表格中的数据导入到Excel中

我通常使用MS Excel来存储和处理大量数据,但有时候经常会碰到一个问题—我需要的数据存储在word表格中,而不是在Excel中,这样处理起来非常麻烦,尤其是在数据比较庞大的时候, 这时我迫切地需要将word表格中的数据导入到Excel中.相信大家也碰到过同样的问题,下面我就给大家分享一下在C#中如何使用免费控件来实现这一功能.这里,我使用了两个免费API, DocX和Spire.Xls. 有需要的朋友可以下载使用.下载地址: DocX:codeplex官网 Spire.Xls: E-iceb

Bulk Load-HBase数据导入最佳实践

一.概述 HBase本身提供了非常多种数据导入的方式,通常有两种经常使用方式: 1.使用HBase提供的TableOutputFormat,原理是通过一个Mapreduce作业将数据导入HBase 2.还有一种方式就是使用HBase原生Client API 这两种方式因为须要频繁的与数据所存储的RegionServer通信.一次性入库大量数据时,特别占用资源,所以都不是最有效的.了解过HBase底层原理的应该都知道,HBase在HDFS中是以HFile文件结构存储的,一个比較高效便捷的方法就是使

Java中使用Oracle的客户端 load data和sqlldr命令执行数据导入到数据库中

Windows环境下测试代码: import java.io.File; import java.io.FileNotFoundException; import java.io.FileWriter; import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; import java.util.Scanner; public class testTimer { /** * @param