我从事仓储工作已有一段时间了。
列型数据库及其为数据检索所提供的速度令我着迷。
我有多部分的问题:
列式数据库如何工作? 列式数据库是一个 概念, 而不是特定的 体系结构/实现 。换句话说,对于这些数据库的工作方式没有一个特别的描述。实际上,有几种是基于传统的,面向行的DBMS构建的,它们只是将信息存储在具有一列(或通常是两列)的表中(并添加了必要的层以轻松方式访问列数据)。
它们与关系数据库有何不同? 它们通常与传统(面向行)数据库在…方面有所不同。
…在特定的DBMS用例中 。 特别是,它们在典型用途是在有限数量的列上计算聚合值时在上述领域提供了优势,这与尝试为给定实体检索所有/大多数列相反。
我可以安装一个柱状数据库的试用版吗? (我在Windows 7上) 是的,有商业,免费和开源的列式数据库实现。请参阅 Wikipedia文章 结尾处的列表以了解入门。 请注意,引入了其中的几种实现方式来满足 特定需求 (例如,非常小的占用空间,高度可压缩的数据分发或备用矩阵仿真等),而不是本身就提供了面向通用列的DBMS。
注意:关于多个柱状DBMS的“单一目的方向”的评论不是对这些实现的批评,而是一种额外的迹象,表明这种针对DBMS的方法偏离了更为“自然”的(当然肯定是使用更广泛的)方法。存储记录实体。结果,这种方法在面向行的方法不令人满意时使用,因此倾向于: a)针对特定目的b)获得的资源/兴趣少于在“通用”,“尝试过的和已测试”,表格方法。
暂时, 实体属性值 (EAV)数据模型可能是您可能要考虑的替代存储策略。尽管与“纯”柱状数据库模型不同,EAV具有柱状数据库的一些特征。