使用ApacheAccumulo,用户可以跨集群存储和管理大型数据集。Accumulo用途Apache Hadoop的HDFS来存储它的数据和阿帕奇动物园管理员为了达成共识。虽然许多用户直接与Accumulo交互,但有几个开源项目使用Accumulo作为其基础存储。
类比hbase。
Apache Accumulo是一个排序的分布式密钥/值存储,它提供健壮的、可伸缩的数据存储和检索。
Apache Accumulo 是一个可靠的、可伸缩的、高性能的排序分布式的 Key-Value 存储解决方案,基于单元访问控制以及可定制的服务器端处理。
服务器端编程:
Accumulo有一个编程机制(称为迭代器),可以在数据管理过程中的各个点修改键/值对。
基于小区的访问控制:
每个accumulo键/值都是对自己的安全标签它限制基于用户授权的查询结果。
设计:
Accumulo在集群上运行一个或多个hdfs实例。节点可以随着accumulo中存储的数据量的变化而添加或删除。
实战:
快速启动:
下载架包
https://accumulo.apache.org/downloads/
之后就是解压
Tar -xzvf accumulo-X.Y.Z-bin.tar.gz
在配置前可以配置一些本机代码。提高其性能和稳定性、使用以下命令构建本机代码。
./bin/build_bative_libraryt.sh
之后是修改秘钥在conf/accumulo-site.xml
配置依赖信息。
Zookeeper的位置,设置instance.zookeeper.host在accumulo中conf/accumulo-site.xml。
存储数据的位置:通过设置instance.Volumes在里面conf/accumulo-site.xml。如果您的NameNode在运行192.168.1.9:9000而您希望将数据存储在/accumulo在hdfs中,然后设置instance.volumes到hdfs://192.168.1.9:9000/accumulo。
动物园管理员和hadoop罐的位置:设置zookeeper_Home和HADOOP_PREFIX在。。。里面conf/accumulo-env.sh将帮助accumulo找到这些位置。
如果accumulo稍后在找到JAR方面的问题,那么运行bin/accumulo classpath打印有关accumulo在哪里发现罐子的信息,如果上述设置正确,则检测general.classpaths在。。
里面conf/accumulo-site.xml。
之后就是初始化。执行命令:
./bin/accumulo init
初始化的时候需要提示输入以下信息:
实例名称:这是accumulo实例的名称,他的accumulo客户端需要知道它才能连接。
根密码:初始化设置初始accumulo根用户并提示输入其密码,此信息将需要稍后连接到accumulo。
Accumulo具有在集群中指定节点上运行的协调、监视和辅助进程。以下文件应填充一个新行分隔的节点名称列表。必须改变本地主机。
conf/mastersAccumulo初级协调进程。必须指定一个节点。可以为容错指定几个。
conf/gcAccumulo垃圾收集器。必须指定一个节点。可以为容错指定几个。
conf/monitor::运行Accumulo监视Web服务器的节点。
conf/slavesAccumulo工人进程。列出在此文件中应该运行Tablet服务器的所有节点。
conf/tracers可选能力。可以指定零或多个节点。
Accumulo、Hadoop和ZooAdministrator软件应该在每个节点的相同位置出现。另外,conf目录中的文件必须复制到每个节点。有许多复制软件和配置的方法,可以帮助复制软件和/或配置的两种可能的工具是Pdcp和Prsync.
启动accumulo
Accumulo脚本使用ssh启动远程节点上的进程。在尝试启动accumulo之前,无密码必须在集群上设置。
配置和初始化accumulo之后,使用以下命令启动它。
./bin/start-all.sh
start-all.sh脚本完成后,使用以下命令运行Accumuloshell。
./bin/accumulo shell -u root
使用Web浏览器连接端口9995上的Accumulo监视器页面。
http://<hostname in conf/monitor>:9995/
完成后,使用以下命令停止Accumulo。
./bin/stop-all.sh
后期实践就在晚上做吧