반응형
파일에 로컬 데이터 로드가 새 행을 추가하는 대신 mariadb 열 저장소의 이전 데이터를 바꿉니다.
mariadb load data local in file을 사용하여 bulk data를 로딩하고 있는데 매번 새로운 데이터를 기존 데이터로 대체하고 있습니다.이전 데이터와 새 데이터를 모두 mariadb 컬럼 스토어 엔진 데이터 웨어하우스에 보관해야 합니다.이에 관한 어떤 도움이라도 대단히 감사하겠습니다.
self.log.info("Bulk inserting rows into MySQL destination...")
with closing(mysql_destination.get_conn()) as conn:
with closing(conn.cursor()) as cursor:
cursor.execute(
"LOAD DATA LOCAL INFILE '%s' INTO "
"TABLE %s LINES TERMINATED BY '\r\n' (%s)" %
(tmpfile.name,
self.mysql_destination_table,
", ".join(selected_columns))
)
conn.commit()
tmpfile.close()
테이블 구조
CREATE TABLE `daily_sales_msr_fact` (
`id` int(11) NULL DEFAULT NULL COMMENT 'autoincrement=1',
`mtime` timestamp(0) NOT NULL DEFAULT current_timestamp ON UPDATE CURRENT_TIMESTAMP,
`dpid` int(11) NOT NULL,
`route_id` int(11) NOT NULL,
`skid` int(11) NOT NULL,
`prid` int(11) NOT NULL,
`group` int(11) NOT NULL,
`family` int(11) NOT NULL,
`date` date NOT NULL DEFAULT '1990-01-01',
`sale` double NOT NULL,
`dprice` double NOT NULL,
`rprice` double NOT NULL,
`dcc_price` double NOT NULL,
`issue` double NOT NULL,
`return` double NULL DEFAULT NULL,
`memos` int(11) NOT NULL,
`vmemos` int(11) NOT NULL,
`tlp` double NOT NULL,
`cnc` double NOT NULL,
`vp` double NOT NULL,
`mvp` double NOT NULL,
`p` double NOT NULL,
`tcc` double NOT NULL,
`dcc` double NOT NULL,
`ecnc` double NOT NULL,
`gt` double NOT NULL,
`struc` double NOT NULL,
`semi_struc` double NOT NULL,
`streetk` double NOT NULL,
`mass_hrc` double NOT NULL,
`pop_hrc` double NOT NULL,
`prem_hrc` double NOT NULL,
`kaccounts` double NOT NULL,
`ogrocery` double NOT NULL,
`snb_cnc` double NULL DEFAULT NULL,
`pay_n_go` double NULL DEFAULT NULL,
`shop_n_browse` double NULL DEFAULT NULL,
`entertainment` double NULL DEFAULT NULL,
`outlets` int(11) NOT NULL,
`apps_version` varchar(20) CHARACTER SET utf8 COLLATE utf8_unicode_ci NULL DEFAULT NULL,
`updated` timestamp(0) NULL DEFAULT NULL,
`visited` int(11) NULL DEFAULT NULL
) ENGINE = Columnstore CHARACTER SET = utf8 COLLATE = utf8_unicode_ci ROW_FORMAT = Dynamic;
SET FOREIGN_KEY_CHECKS = 1;
언급URL : https://stackoverflow.com/questions/69264363/load-data-local-in-file-is-replacing-old-data-in-mariadb-columnstore-instead-of
반응형
'programing' 카테고리의 다른 글
릴리스 버전 iOS Swift에 대해 println()을 제거합니다. (0) | 2023.11.02 |
---|---|
x-www-form-urlencoded를 사용하여 Angular2를 강제 POST하는 방법 (0) | 2023.11.02 |
Spring Controller @RequestBody 파일 업로드 가능합니까? (0) | 2023.10.28 |
유튜브 동영상 URL을 코드 내장으로 변환 (0) | 2023.10.28 |
속성으로 인해 Java 코드가 컴파일되지 않습니다. 상수 식 오류여야 합니다. (0) | 2023.10.28 |