oracle数据库内存在高端与低端,是分段释放内存的,应该使用手动释放机制,但手动释放机制一般都要手动编程的。等执行到分段或分库的操作时才考虑释放。
请问答主最后使用哪种语言实现的?我现在正在了解大数据(hadoop等分布式计算),就像你提到的spark和hbase。
hbase是分段释放,计算时手动调整初始内存.sparkhdfs是高内存分布式计算.
关于mysql和hbase你有了解过这些数据库都有什么不同之处吗?mysql更像是一种优秀的存储计算中间件,数据导入导出,计算等操作都是由存储引擎来完成的。hbase相对更像hadoop的分布式存储系统,数据存储等都交给hadoop。对于hbase一般可以设置block大小,xxmx等来模拟informationgraph以支持分布式。理解了这两个数据库的主要区别之后,或许你会更理解你需要的是什么了。
hbase一般是手动调整内存大小的。调整的方法也有一些,比如手动保持增量一致性,高层调整低层等,也有些nosql性质的内存调整很微妙,在较小内存上没有问题。mysql因为比较成熟,这方面的论文和技术实现,cookbook都很完备了,可以参考。
用户层,不同数据可以有多个hbase,但本质还是hbase,各台还是分段存储的!存储完成后释放内存!外部存储,手动释放
高低段释放要看架构,不同数据形态不一样,如果是分批释放要注意,如果长期存储,那就首选文件大小一致化!