在一些数据量比较大,而且 *** 作数据库频繁的。此时需要将数据表datatable整块的存入数据库中。
首先得新建一个数据库
DataTable once_rec_date = new DataTable()
这个数据库得跟目标数据库的列的位置和大小都得一样。特别是类型,和位置。就是列的位置和目标数据库的位置,顺序得 一模一样。因为都是块存储,所以地址什么的都得一样,千万不能少一列,自增列可以空在那边。
扩展资料
数据库入门基础知识:
数据库的分类
关系型数据库: 经过数学理论验证 可以保存现实生活中的各种关系数据, 数据库中存储数据以表为单位;非关系型数据库:通常用来解决某些特定的需求如:数据缓存,高并发访问。 存储数据的形式有多种,举例:Redis数据库:通过键值对的形式存储数据。
创建数据库:CREATE DATABASE database_name
删除数据库:DROP DATABASE database_name
选择数据库:USE database_name
创建数据表:CREATE TABLE table_name (column_name column_type)
删除数据表:DROP TABLE table_name
更新数据表信息:
添加表字段:ALTER TABLE table_name ADD new_column DATATYPE
使用FIRST关键字可以将新增列的顺序调整至数据表的第一列:ALTER TABLE table_name ADD new_column DATATYPE FIRST
使用AFTER关键字可以将新增列调整至数据表的指定列之后:ALTER TABLE table_name ADD new_column DATATYPE AFTER old_column
业务数据,包括用户,订单等数据,要求数据严格准确和一致
规模如果是在千万级,或者不超过10亿级,80%选用MySQL来存储
规模如果再10亿-万亿,目前HBASE为主
以上两种是免费数据库,但对于Oracle,DB2,SQL Server付费数据库(巨贵),主要使用在银行和电信,因为对数据一致性,准确性,容灾备份要求更严格。
因为商业数据库的昂贵,互联网公司一般用不起,感兴趣可以了解下10年前阿里发起的去IOE的故事,即去掉IBM,Oracle,EMC,代替以开源软件再次开放的系统,开创新数据新时代。
日志数据,包括用户所有线上行为数据,浏览,搜索,点击等,存储在HDFS上
这类数据,相比订单和支付数据,规模要成10倍-1000倍增长。比如,我浏览10个店铺宝贝才转化一个订单数据。但该类数据,不会要求太多性能和苛刻的准确性,甚至可以容忍丢小部分日志数据。这部分数据,会放到HDFS上来存储。即一种分部式文件存储系统,存储成本很低,如果查询的话,就可以直接使用hive等工具,写SQL查询。
当然,数据库现在发展很迅猛,比如TiDB,非关系数据库MongoDB,缓存Redis等。
数据库应用系统中的数据以二维表的方式直接存储目标数据。
一个表由行和列组成的,行数据代表具体的生活中的实体数据,列经常被称作是域,也就是行的某个特性,从实体对象本身出发就是对象的属性。
表中的第一行通常称为属性名,表中的每一个元组和属性都是不可再分的,且元组的次序是无关紧要的。
扩展资料
行存储和列存储的应用场景
行存储的适用场景:
(1)适合随机的增、删、改、查 *** 作;
(2)需要在行中选取所有属性的查询 *** 作;
(3)需要频繁插入或更新的 *** 作,其 *** 作与索引和行的大小更为相关。
列存储的适用场景:
(1)查询过程中,可针对各列的运算并发执行,在内存中聚合完整记录集,降低查询响应时间;
(2)在数据中高效查找数据,无需维护索引(任何列都能作为索引),查询过程中能够尽量减少无关IO,避免全表扫描;
(3)因为各列独立存储,且数据类型已知,可以针对该列的数据类型、数据量大小等因素动态选择压缩算法,以提高物理存储利用率;如果某一行的某一列没有数据,在列存储时,就可以不存储该列的值,这将比行式存储更节省空间。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)