2014-01-15 7 views
1

Я хочу, чтобы загрузить CSV в cassandra 2.0.3. Прямо сейчас я успешно преобразовал CSV в sstables.Навальный импорт CSV в Cassandra 2.0.3

Однако, когда я запускаю sstableloader, появляется сообщение об ошибке, как показано ниже. Является ли эта ошибка влияющей на мою загрузку, поскольку я не нашел импортированные данные в cassandra 2.0.3?

VirtualBox:~/apache-cassandra-2.0.3$ ./bin/sstableloader -d localhost airlines/flight/ 
ERROR 16:08:04,832 Unable to initialize MemoryMeter (jamm not specified as javaagent). This means Cassandra will be unable to measure object sizes accurately and may consequently OOM. 
Established connection to initial hosts 
Opening sstables and calculating sections to stream 
Streaming relevant part of airlines/flight/airlines-flight-jb-1-Data.db to [/127.0.0.1, /127.0.0.2] 
progress: [/127.0.0.2 1/1 (100%)] [/127.0.0.1 1/1 (100%)] [total: 100% - 0MB/s (avg: 0MB/s)] 
+0

У меня была эта ошибка, но данные были правильно переданы. Сколько строк (aprrox) вы загружаете? (похоже, вы делаете это с несколькими строками, так как скорость говорит 0 МБ/с) –

ответ

1

Я завернул свою работу sstableloader в скрипт bash и изначально имел ту же ошибку. Я немного искал и обнаружил, что переменная среды JAVA_TOOL_OPTIONS исправила мою проблему.

Вот мой сценарий:

#!/bin/bash 

# ------------------------ 
# paths to the cassandra source tree, cassandra jar and java 
CASSANDRA_HOME="/usr/share/cassandra" 
JAVA_AGENT="-javaagent:$CASSANDRA_HOME/lib/jamm-0.2.5.jar" 
export JAVA_TOOL_OPTIONS=$JAVA_AGENT 
# ------------------------ 

# ------------------------ 
# Initialize Parameters 
SSTLOADER=`which sstableloader` 
SSDATADIR=/usr/share/cassandra/scripts/sstable_load/data/<schema_name>/<column family> 

CASSNODE="192.168.2.1" 

# ------------------------ 
log_dir=/usr/share/cassandra/scripts/sstable_load/logs 
dt=`date +'%Y%m%d_%H%M%S'` 
logdest=$log_dir/sstabloader_"$dt".log 
# ------------------------ 

exec 1>$logdest 
echo "Job Started: " `date` 
echo "Job Logged To: " $logdest 
echo 

# ------------------------ 
# Run the SSTableLoader Command 
$SSTLOADER -v -d $CASSNODE -u <user> -pw <password> $SSDATADIR 


echo 
echo "Job Completed: " `date` 

exit 0 

Заменить записи сценария в <> с вы соответствующую информацию.

Надеюсь, это сработает для вас.

Пожалуйста, голосуйте.

Смежные вопросы