[英]Cassandra copy command inserting only partial data
我是cassandra db的新手,我試圖將csv文件中的數據導入到cassandra中,我執行了以下命令,以導入表,首先我使用創建表
創建表cdma_mkt_bte(date_value時間戳主鍵,區域varchar,供應商varchar);
然后使用復制
從HEADER = TRUE從'/ usr / share / dse / bin / cdma_mkt_bte'復制cdma_mkt_bte(日期值,區域,供應商);
問題是csv文件中的表大約有43,000行,而只有211行正被導入到cassandra中,我查看了211行和第212行,看是否發生了奇怪的情況,這似乎還可以。 你能幫我么? 以及將csv導入cassandra數據庫的其他選項是什么。
謝謝! 非常感謝您的幫助!
您的主鍵似乎是date_value。 cassandra中的所有插入和更新實質上都是主鍵上的upserts。 如果兩個記錄具有相同的主鍵,則第二個將覆蓋第一個。 如果唯一標識記錄的方式是date_value + region + vendor,則您的架構應為:
create table cdma_mkt_bte (date_value timestamp, region varchar, vendor varchar,
primary key (date_value, region, vendor));
這可能是您未獲得預期記錄數的原因嗎?
此文檔中介紹了可用於COPY命令的選項:
繼續在CSV文件中查找問題。 檢查行尾是否有隱藏字符。 我想我記得引起問題的尾隨空白。 該問題可能未完全位於COPY命令報告的位置。 我在Excel中打開了CSV,發現了問題所在。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.