>提供的信息, 在此次搭建中, 采用Tinkerpop 3.2.7, JanusGraph 0.2.0, 相关地址http://docs.janusgraph.org/latest/version-compat.html.
1. 创建目录
[root@master ~]# mkdir -p /usr/local/program
[root@master ~]# cd /usr/local/program/
[root@master program]# pwd
/usr/local/programe
2. 下载Tinkerpop
[root@master program]# wget http://www-eu.apache.org/dist/tinkerpop/3.2.7/apache-tinkerpop-gremlin-console-3.2.7-bin.zip # console, 相关地址http://tinkerpop.apache.org/.
[root@master program]# wget http://mirror.bit.edu.cn/apache/tinkerpop/3.2.7/apache-tinkerpop-gremlin-server-3.2.7-bin.zip # server,相关地址http://tinkerpop.apache.org/.
3. 解压Tinkerpop
[root@master program]# unzip apache-tinkerpop-gremlin-server-3.2.7-bin.zip
[root@master program]# unzip apache-tinkerpop-gremlin-console-3.2.7-bin.zip
[root@master program]# ls -1
apache-tinkerpop-gremlin-console-3.2.7
apache-tinkerpop-gremlin-server-3.2.7
apache-tinkerpop-gremlin-console-3.2.7-bin.zip
apache-tinkerpop-gremlin-server-3.2.7-bin.zip
三、在Tinkerpop Server上安装JanusGraph依赖
Note: 第四节有讲述如何配置grapeConfig.xml的内容, 如果下载失败, 可参考第四节.
1. 进入
apache-tinkerpop-gremlin-server-3.2.7
下载依赖
安装方式: bin/gremlin-server.sh -i org.janusgraph janusgraph-all $VERSION, 在这里下载JanusGraph的0.2.0版本.
[root@master apache-tinkerpop-gremlin-server-3.2.7]# bin/gremlin-server.sh -i org.janusgraph janusgraph-all 0.2.0
2. 重要提示(Important, 这个地方应该重点显示, 为了好看, 就这样了)
下面引用JanusGraph官方文档中7.4.2. Using TinkerPop Gremlin Server with JanusGraph的一句话:
The above command uses Groovy Grape and if it is not configured properly download errors may ensue. Please refer to this section of the TinkerPop documentation for more information around setting up ~/.groovy/grapeConfig.xml.
相关地址
http://docs.janusgraph.org/latest/server.html.
大意就是:
以上命令使用Groovy Grape,如果没有正确配置,可能会出现下载错误。有关设置的更多信息,请参阅TinkerPop文档的这一部分~/.groovy/grapeConfig.xml。
上文提到的地址
http://tinkerpop.apache.org/docs/3.2.6/reference/#gremlin-applications.
四、为避免下载依赖失败, 修改Groovy Grape
Note: Windows目录: C:\Users\[User_Name]\.groovy; Linux目录: ~/.groovy
修改内容如下:
1. 在上述目录中创建grapeConfig.xml文件, 或目录不存在, 先创建目录.
2. 修改文件内容如下:
3. 重新执行第三节的内容.
五、参数设置(master节点操作)
1. 在${TINKERPOP_HOME}/conf/目录创建janusgraph-hbase-server.properties, 添加内容如下:
gremlin.graph=org.janusgraph.core.JanusGraphFactory
storage.backend=hbase # 存储方式为Hbase.
storage.hostname=localhost # Zookeeper地址, 需要根据实际地址修改, 多台用','间隔.
# 以下信息可参考, 不影响下面步骤.
cache.db-cache = true
cache.db-cache-clean-wait = 20
cache.db-cache-time = 180000
cache.db-cache-size = 0.5
# 以下信息可参考, 用于配置ElasticSearch索引信息, 不影响下面步骤.
index.search.backend=elasticsearch # 索引方式.
index.search.hostname=localhost # ElasticSearch主机地址, 多台用','间隔.
index.search.port=9200 # ElasticSearch通信端口.
index.search.elasticsearch.client-only=false
2. 在${TINKERPOP_HOME}/conf/目录创建janusgraph-gremlin-server.yaml, 添加内容如下:
host: 0.0.0.0
port: 8182
scriptEvaluationTimeout: 300000
channelizer: org.apache.tinkerpop.gremlin.server.channel.WebSocketChannelizer
graphs: {
graph: conf/janusgraph-hbase-server.properties
}
plugins:
- janusgraph.imports
scriptEngines: {
gremlin-groovy: {
imports: [java.lang.Math],
staticImports: [java.lang.Math.PI],
scripts: [scripts/empty-sample.groovy]}}
serializers:
- { className: org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0, config: { ioRegistries: [org.janusgraph.graphdb.tinkerpop.JanusGraphIoRegistry] }}
- { className: org.apache.tinkerpop.gremlin.driver.ser.GryoLiteMessageSerializerV1d0, config: {ioRegistries: [org.janusgraph.graphdb.tinkerpop.JanusGraphIoRegistry] }}
- { className: org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0, config: { serializeResultToString: true }}
- { className: org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV1d0, config: { ioRegistries: [org.janusgraph.graphdb.tinkerpop.JanusGraphIoRegistryV1d0] }}
- { className: org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV2d0, config: { ioRegistries: [org.janusgraph.graphdb.tinkerpop.JanusGraphIoRegistry] }}
- { className: org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV1d0, config: { ioRegistries: [org.janusgraph.graphdb.tinkerpop.JanusGraphIoRegistryV1d0] }}
processors:
- { className: org.apache.tinkerpop.gremlin.server.op.session.SessionOpProcessor, config: { sessionTimeout: 28800000 }}
- { className: org.apache.tinkerpop.gremlin.server.op.traversal.TraversalOpProcessor, config: { cacheExpirationTime: 600000, cacheMaxSize: 1000 }}
metrics: {
consoleReporter: {enabled: true, interval: 180000},
csvReporter: {enabled: true, interval: 180000, fileName: /tmp/gremlin-server-metrics.csv},
jmxReporter: {enabled: true},
slf4jReporter: {enabled: true, interval: 180000},
gangliaReporter: {enabled: false, interval: 180000, addressingMode: MULTICAST},
graphiteReporter: {enabled: false, interval: 180000}}
maxInitialLineLength: 4096
maxHeaderSize: 8192
maxChunkSize: 8192
maxContentLength: 65536
maxAccumulationBufferComponents: 1024
resultIterationBatchSize: 64
writeBufferLowWaterMark: 32768
writeBufferHighWaterMark: 65536
3. 在${TINKERPOP_HOME}/scripts/目录创建empty-sample.groovy,(此文件默认存在, 可直接使用.) 添加内容如下:
def globals = [:]
globals << [g : graph.traversal()]
六、运行Tinkerpop Server
[root@master apache-tinkerpop-gremlin-server-3.2.7]# bin/gremlin-server.sh conf/janusgraph-gremlin-server.yaml
1. 当显示如下内容时, 说明启动成功:
......
INFO] GremlinServer - Executing start up LifeCycleHook
[INFO] Logger$info - Executed once at startup of Gremlin Server.
[INFO] AbstractChannelizer - Configured application/vnd.gremlin-v1.0+gryo with org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0
[WARN] AbstractChannelizer - The org.apache.tinkerpop.gremlin.driver.ser.GryoLiteMessageSerializerV1d0 serialization class is deprecated.
[INFO] AbstractChannelizer - Configured application/vnd.gremlin-v1.0+gryo-lite with org.apache.tinkerpop.gremlin.driver.ser.GryoLiteMessageSerializerV1d0
[INFO] AbstractChannelizer - Configured application/vnd.gremlin-v1.0+gryo-stringd with org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0
[INFO] AbstractChannelizer - Configured application/vnd.gremlin-v1.0+json with org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV1d0
[INFO] AbstractChannelizer - Configured application/vnd.gremlin-v2.0+json with org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV2d0
[INFO] AbstractChannelizer - Configured application/json with org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV1d0
[INFO] GremlinServer$1 - Gremlin Server configured with worker thread pool of 1, gremlin pool of 32 and boss thread pool of 1.
[INFO] GremlinServer$1 - Channel started at port 8182.
2. 当提示以下内容时, 修改文件, 去除\t
[ERROR] GremlinServer - Configuration file at conf/janusgraph-gremlin-server.yaml could not be found or parsed properly. [while scanning for the next token
found character '\t(TAB)' that cannot start any token. (Do not use \t(TAB) for indentation)
in 'reader', line 6, column 1:
graph: conf/janusgraph-hbase-se ...
^
]
七、通过Tinkerpop Console测试
1. 进入
apache-tinkerpop-gremlin-console-3.2.7
目录, 运行:
[root@master apache-tinkerpop-gremlin-console-3.2.7]# ./bin/gremlin.sh
Feb 08, 2018 4:57:21 PM java.util.prefs.FileSystemPreferences$1 run
INFO: Created user preferences directory.
\,,,/
(o o)
-----oOOo-(3)-oOOo-----
plugin activated: tinkerpop.server
plugin activated: tinkerpop.utilities
plugin activated: tinkerpop.tinkergraph
gremlin> :remote connect tinkerpop.server conf/remote.yaml
==>Configured localhost/127.0.0.1:8182
gremlin> :> g.V().count()
==> 0
运行无阻时, 说明部署完成. 可以继续往下进行.
你可能感兴趣的:(Tinkerpop,JanusGraph,图数据库,Gremlin,Hbase)
使用Couchbase实现高效的AI应用缓存与数据存储
scaFHIO
人工智能 缓存 python
在当今AI应用的开发中,除了模型本身的性能,数据存储和缓存的效率也至关重要。Couchbase作为一款分布式NoSQL云数据库,其性能、可扩展性以及对AI、边缘计算应用的支持能力,使其成为优秀的选择。在本文中,我们将探讨如何通过Couchbase来实现高效的数据存储与缓存,尤其是在AI应用中。技术背景介绍随着AI应用规模的扩大和复杂度的增加,我们需要可靠的数据存储解决方案来满足实时性要求,同时减少
深入了解 ArangoDB 的图数据库应用与 Python 实践
eahba
数据库 python 开发语言
在当前数据驱动的时代,对连接数据的高效处理和分析需求日益增长。ArangoDB作为一个可扩展的图数据库系统,能够加速从连接数据中获取价值。本文将介绍如何使用Python连接和操作ArangoDB,并展示如何结合图问答链来获取数据洞察。技术背景介绍ArangoDB是一个多模型数据库,支持文档、图和键值类型的数据存储。其强大的图形存储和查询能力使其成为处理复杂数据关系的理想选择。通过JSON支持和单一
Apache大数据旭哥优选大数据选题
Apache大数据旭
大数据定制选题 java hadoop spark 开发语言 idea hive 数据库架构
定制旭哥服务,一对一,无中介包安装+答疑+售后态度和技术都很重要定制按需求做要求不高就实惠一点定制需提前沟通好怎么做,这样才能避免不必要的麻烦python、flask、Django、mapreduce、mysqljava、springboot、vue、echarts、hadoop、spark、hive、hbase、flink、SparkStreaming、kafka、flume、sqoop分析+推
nebula graph传统使用Docker进行项目发版
boy快快长大
解决问题合集 Nebula Graph数据库 docker java 容器
nebulagraph传统使用Docker进行项目发版1.nebulagraph服务2.搭建ES集群3.注意事项3.1图数据库的启动顺序3.2模糊查询失效1.nebulagraph服务1.在测试服务器中执行如下命令dockercommit85b6e2b8xxxxxx_nebula_es:1.0.0.2执行dockerimages之后能看到新的镜像xxx_nebula_es:1.0.0.2这里将测试
HBase安装
lianhedaxue
Hadoop hbase
HBase安装本章将介绍如何安装HBase和初始配置。需要用Java和Hadoop来处理HBase,所以必须下载java和Hadoop并安装系统中。安装前设置安装Hadoop在Linux环境下之前,需要建立和使用LinuxSSH(安全Shell)。按照下面设立Linux环境提供的步骤。创建一个用户首先,建议从Unix创建一个单独的Hadoop用户,文件系统隔离Hadoop文件系统。按照下面给出创建
HBase的架构介绍,安装及简单操作
pk_xz123456
大数据 hbase 架构 数据库
一、HBase安装1.环境准备Java环境:确保系统中已经安装了Java8或更高版本。可以通过在命令行中输入java-version来检查Java版本。Hadoop环境:HBase依赖于Hadoop,需要先安装并配置好Hadoop集群。确保Hadoop的相关服务(如HDFS、YARN等)已经正常启动。2.下载HBase从HBase官方网站(https://hbase.apache.org/)下载适
Neo4j GDS-02-graph-data-science 插件库安装实战笔记
老马啸西风
neo4j neo4j 笔记 数据库 图 数据结构 算法
neo4japoc系列Neo4jAPOC-01-图数据库apoc插件介绍Neo4jAPOC-01-图数据库apoc插件安装neo4jonwindows10Neo4jAPOC-03-图数据库apoc实战使用使用Neo4jAPOC-04-图数据库apoc实战使用使用apoc.path.spanningTree最小生成树Neo4jAPOC-05-图数据库apoc实战使用使用labelFilterNeo4
Neo4j GDS-02-graph-data-science 简单聊一聊图数据科学插件库
老马啸西风
neo4j neo4j 数据库 算法 图数据库 开源
neo4japoc系列Neo4jAPOC-01-图数据库apoc插件介绍Neo4jAPOC-01-图数据库apoc插件安装neo4jonwindows10Neo4jAPOC-03-图数据库apoc实战使用使用Neo4jAPOC-04-图数据库apoc实战使用使用apoc.path.spanningTree最小生成树Neo4jAPOC-05-图数据库apoc实战使用使用labelFilter详细介绍
Spring Boot 与 Couchbase 整合教程
嘵奇
提升自己 spring boot 后端 java
精心整理了最新的面试资料和简历模板,有需要的可以自行获取点击前往百度网盘获取点击前往夸克网盘获取SpringBoot与Couchbase整合教程环境要求JDK8+SpringBoot2.7.xCouchbaseServer7.xMaven/Gradle步骤1:创建SpringBoot项目使用start.spring.io创建项目,添加以下依赖:SpringWeb(可选,用于RESTAPI)Spri
Sqoop安装部署
愿与狸花过一生
大数据 sqoop hadoop hive
ApacheSqoop简介Sqoop(SQL-to-Hadoop)是Apache开源项目,主要用于:将关系型数据库中的数据导入Hadoop分布式文件系统(HDFS)或相关组件(如Hive、HBase)。将Hadoop处理后的数据导出回关系型数据库。核心特性批量数据传输支持从数据库表到HDFS/Hive的全量或增量数据迁移。并行化处理基于MapReduce实现并行导入导出,提升大数据量场景的效率。自
mysql总结
tianyunlinger
大数据 mysql 数据库
MySQL基础1.数据库基本介绍数据库定义:用于存储数据的仓库,通过SQL语句操作。数据库作用:存储应用程序中的数据,便于管理和查询。数据库分类:关系型数据库(如MySQL、Oracle、DB2)和非关系型数据库(如Redis、HBase)。关系型数据库:通过E-R图描述数据之间的关系,支持复杂查询。2.MySQL在Linux中的安装安装前准备:配置防火墙、创建统一的管理目录(如/export/s
Neo4j GDS-02-graph-data-science 插件库安装实战笔记
后端java
neo4japoc系列Neo4jAPOC-01-图数据库apoc插件介绍Neo4jAPOC-01-图数据库apoc插件安装neo4jonwindows10Neo4jAPOC-03-图数据库apoc实战使用使用Neo4jAPOC-04-图数据库apoc实战使用使用apoc.path.spanningTree最小生成树Neo4jAPOC-05-图数据库apoc实战使用使用labelFilterNeo4
Neo4j GDS-04-图的中心性分析介绍
后端java
neo4japoc系列Neo4jAPOC-01-图数据库apoc插件介绍Neo4jAPOC-01-图数据库apoc插件安装neo4jonwindows10Neo4jAPOC-03-图数据库apoc实战使用使用Neo4jAPOC-04-图数据库apoc实战使用使用apoc.path.spanningTree最小生成树Neo4jAPOC-05-图数据库apoc实战使用使用labelFilterNeo4
如果企业数据仓库全部使用 Couchbase Analytics 服务,可能会面临哪些问题?
PersistDZ
数据存储 数据仓库
如果企业数据仓库全部使用CouchbaseAnalytics服务,可能会面临哪些问题?一、概述CouchbaseAnalytics服务是一项强大的工具,旨在为NoSQL数据提供近实时的分析能力。然而,如果企业的数据仓库全部依赖于CouchbaseAnalytics服务,可能会遇到一些问题和挑战。以下将从多个角度详细分析这些可能的问题。二、可能的问题和挑战资源消耗和成本高资源需求:Couchbase
Flume与Couchbase集成原理与实例
AI大模型应用之禅
DeepSeek R1 & AI大模型与大数据 计算科学 神经计算 深度学习 神经网络 大数据 人工智能 大型语言模型 AI AGI LLM Java Python 架构设计 Agent RPA
Flume与Couchbase集成原理与实例作者:禅与计算机程序设计艺术/ZenandtheArtofComputerProgramming1.背景介绍1.1问题的由来随着大数据时代的到来,企业对数据存储和处理的效率要求越来越高。在数据采集、存储、处理和分析的各个环节,都需要高效、可靠的技术支持。Flume和Couchbase正是这样两种优秀的工具,前者擅长于数据采集和传输,后者擅长于键值存储和文
Couchbase Analytics 的结构
PersistDZ
数据存储 couchbase
CouchbaseAnalytics的结构CouchbaseAnalytics服务专为大规模、并发、复杂的分析查询而设计,同时不会影响事务性工作负载的性能。下面将详细介绍其结构和架构,以帮助您深入理解CouchbaseAnalytics的运作方式。1.Couchbase集群架构CouchbaseServer是一个多维度可扩展的分布式数据库,其核心架构由多个服务组成:数据服务(DataService
数据中台(二)数据中台相关技术栈
Yuan_CSDF
# 数据中台
1.平台搭建1.1.Amabari+HDP1.2.CM+CDH2.相关的技术栈数据存储:HDFS,HBase,Kudu等数据计算:MapReduce,Spark,Flink交互式查询:Impala,Presto在线实时分析:ClickHouse,Kylin,Doris,Druid,Kudu等资源调度:YARN,Mesos,Kubernetes任务调度:Oozie,Azakaban,AirFlow,
Hadoop相关面试题
努力的搬砖人.
java 面试 hadoop
以下是150道Hadoop面试题及其详细回答,涵盖了Hadoop的基础知识、HDFS、MapReduce、YARN、HBase、Hive、Sqoop、Flume、ZooKeeper等多个方面,每道题目都尽量详细且简单易懂:Hadoop基础概念类1.什么是Hadoop?Hadoop是一个由Apache基金会开发的开源分布式计算框架,主要用于处理和存储大规模数据集。它提供了高容错性和高扩展性的分布式存
Flink读取kafka数据并写入HDFS
王知无(import_bigdata)
Flink系统性学习专栏 hdfs kafka flink
硬刚大数据系列文章链接:2021年从零到大数据专家的学习指南(全面升级版)2021年从零到大数据专家面试篇之Hadoop/HDFS/Yarn篇2021年从零到大数据专家面试篇之SparkSQL篇2021年从零到大数据专家面试篇之消息队列篇2021年从零到大数据专家面试篇之Spark篇2021年从零到大数据专家面试篇之Hbase篇
Neo4j GDS-02-graph-data-science 简单聊一聊图数据科学插件库
后端java
neo4japoc系列Neo4jAPOC-01-图数据库apoc插件介绍Neo4jAPOC-01-图数据库apoc插件安装neo4jonwindows10Neo4jAPOC-03-图数据库apoc实战使用使用Neo4jAPOC-04-图数据库apoc实战使用使用apoc.path.spanningTree最小生成树Neo4jAPOC-05-图数据库apoc实战使用使用labelFilter是什么?
java+redis+pipleline_详解Java使用Pipeline对Redis批量读写(hmset&hgetall)
666齐乐家园
一般情况下,RedisClient端发出一个请求后,通常会阻塞并等待Redis服务端处理,Redis服务端处理完后请求命令后会将结果通过响应报文返回给Client。感觉这有点类似于HBase的Scan,通常是Client端获取每一条记录都是一次RPC调用服务端。在Redis中,有没有类似HBaseScannerCaching的东西呢,一次请求,返回多条记录呢?有,这就是Pipline。官方介绍ht
Flume详解——介绍、部署与使用
克里斯蒂亚诺罗纳尔多阿维罗
flume 大数据 分布式
1.Flume简介ApacheFlume是一个专门用于高效地收集、聚合、传输大量日志数据的分布式、可靠的系统。它特别擅长将数据从各种数据源(如日志文件、消息队列等)传输到HDFS、HBase、Kafka等大数据存储系统。特点:可扩展:支持大规模数据传输,灵活扩展容错性:支持数据恢复和失败重试,确保数据不丢失多种数据源:支持日志文件、网络数据、HTTP请求、消息队列等多种来源流式处理:数据边收集边传
大数据学习(67)- Flume、Sqoop、Kafka、DataX对比
viperrrrrrr
大数据 学习 flume kafka sqoop datax
大数据学习系列专栏:哲学语录:用力所能及,改变世界。如果觉得博主的文章还不错的话,请点赞+收藏⭐️+留言支持一下博主哦工具主要作用数据流向实时性数据源/目标应用场景Flume实时日志采集与传输从数据源到存储系统实时日志文件、网络流量等→HDFS、HBase、Kafka等日志收集、实时监控、实时分析Sqoop关系型数据库与Hadoop间数据同步关系型数据库→Hadoop生态系统(HDFS、Hive、
Django Neomodel:将Django与Neo4j图数据库无缝集成
纪嫣梦
DjangoNeomodel:将Django与Neo4j图数据库无缝集成项目地址:https://gitcode.com/gh_mirrors/dj/django-neomodel项目介绍DjangoNeomodel是一个开源模块,旨在通过neomodel库,将Django框架与Neo4j图数据库结合使用。这个模块为开发者提供了一个强大的工具,使得在Django项目中使用Neo4j图数据库变得简单
Neo4j之CQL基础
风云诀4
图数据库 知识图谱 大数据 人工智能
Neo4j之CQL基础文章目录Neo4j之CQL基础一、CQL概念二、CQL简介三、CQL命令使用creatematch+returnwheredeleteremovesetorderbymerge四、CQL函数使用StringAggregationRelationship一、CQL概念关系型数据库的查询语言是SQL,Neo4j图数据库也有自己的查询语言,那就是CQL。CQL全称CypherQue
HBase学习二:HBase的表结构
hucs420109
HBase HBase
HBase的表结构初次接触HBase,可能看到以下描述会懵:“基于列存储”,“稀疏MAP”,“RowKey”,“ColumnFamily”。其实没那么高深,我们需要分两步来理解HBase,就能够理解为什么HBase能够“快速地”“分布式地”处理“大量数据”了。内存结构文件存储结构先介绍几个名称概念行键RowKey:行键,类似mysql中的主键,Table中的记录按照RowKey排序,行键是表结构的
分布式存储—— HBase数据模型 详解
Future_yzx
分布式 hbase 数据库
目录1.3HBase数据模型1.3.1两类数据模型1.3.2数据模型的重要概念1.3.3数据模型的操作1.3.4数据模型的特殊属性1.3.5CAP原理与最终一致性1.3.6小结本文章参考、总结于学校教材课本《HBase开发与应用》1.3HBase数据模型在开始学习HBase之前非常有必要先学习HBase的特性,因此本节将介绍HBase的逻辑模型、物理模型和访问HBase的方法等。和传统的关系型数据
neo4j图数据库
坐吃山猪
数据库 neo4j 数据库
neo4j图数据库学习neo4j图数据库的使用文章目录neo4j图数据库@[toc]1-核心知识点2-思路整理3-参考网址4-上手实操1-安装neo4j-docker2-要学习CQL语句3-解决cmake问题1-可能的原因及解决办法1.`cmake`未正确安装或者版本不兼容2.依赖库缺失3.环境变量配置问题4.网络问题2-具体操作步骤1.安装`cmake`2.安装VisualStudioC++构建
分布式存储学习——HBase表结构设计
Future_yzx
oracle 数据库
目录1.4.1模式创建1.4.2Rowkey设计1.4.3列族定义1.4.3.1可配置的数据块大小1.4.3.2数据块缓存1.4.3.3布隆过滤器1.4.3.4数据压缩1.4.3.5单元时间版本1.4.3.6生存时间1.4.4模式设计实例1.4.4.1实例1:动物分类1.4.4.2实例2:店铺与商品1.4.4.3实例3:网上商城用户消费记录1.4.4.4实例4:微博用户与粉丝1.4.4.5小结本文
Neo4j的安装和使用(mac)
悦崽在线搬砖
数据库 neo4j
目录1.什么是Neo4j2.Neo4j的安装2.1neo4j的下载2.2neo4j的启动2.3neo4j环境配置3.Neo4j的使用3.1打开网页3.2连接neo4j3.3开始使用4.总结1.什么是Neo4j我理解的它是一种图数据库,就是可以用图来展示数据关系的数据库。适用于需要处理复杂关系的数据。具体专业的描述可见Neo4j技能树2.Neo4j的安装2.1neo4j的下载官网【注意:这里选择4.
PHP如何实现二维数组排序?
IT独行者
二维数组 PHP 排序
二维数组在PHP开发中经常遇到,但是他的排序就不如一维数组那样用内置函数来的方便了,(一维数组排序可以参考本站另一篇文章【PHP中数组排序函数详解汇总】)。二维数组的排序需要我们自己写函数处理了,这里UncleToo给大家分享一个PHP二维数组排序的函数:
代码:
functionarray_sort($arr,$keys,$type='asc'){
$keysvalue= $new_arr
【Hadoop十七】HDFS HA配置
bit1129
hadoop
基于Zookeeper的HDFS HA配置主要涉及两个文件,core-site和hdfs-site.xml。
测试环境有三台
hadoop.master
hadoop.slave1
hadoop.slave2
hadoop.master包含的组件NameNode, JournalNode, Zookeeper,DFSZKFailoverController
由wsdl生成的java vo类不适合做普通java vo
darrenzhu
VO wsdl webservice rpc
开发java webservice项目时,如果我们通过SOAP协议来输入输出,我们会利用工具从wsdl文件生成webservice的client端类,但是这里面生成的java data model类却不适合做为项目中的普通java vo类来使用,当然有一中情况例外,如果这个自动生成的类里面的properties都是基本数据类型,就没问题,但是如果有集合类,就不行。原因如下:
1)使用了集合如Li
JAVA海量数据处理之二(BitMap)
周凡杨
java 算法 bitmap bitset 数据
路漫漫其修远兮,吾将上下而求索。想要更快,就要深入挖掘 JAVA 基础的数据结构,从来分析出所编写的 JAVA 代码为什么把内存耗尽,思考有什么办法可以节省内存呢? 啊哈!算法。这里采用了 BitMap 思想。
首先来看一个实验:
指定 VM 参数大小: -Xms256m -Xmx540m
java类型与数据库类型
g21121
java
很多时候我们用hibernate的时候往往并不是十分关心数据库类型和java类型的对应关心,因为大多数hbm文件是自动生成的,但有些时候诸如:数据库设计、没有生成工具、使用原始JDBC、使用mybatis(ibatIS)等等情况,就会手动的去对应数据库与java的数据类型关心,当然比较简单的数据类型即使配置错了也会很快发现问题,但有些数据类型却并不是十分常见,这就给程序员带来了很多麻烦。
&nb
Linux命令
510888780
linux命令
系统信息
arch 显示机器的处理器架构(1)
uname -m 显示机器的处理器架构(2)
uname -r 显示正在使用的内核版本
dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)
hdparm -i /dev/hda 罗列一个磁盘的架构特性
hdparm -tT /dev/sda 在磁盘上执行测试性读取操作
cat /proc/cpuinfo 显示C
java常用JVM参数
墙头上一根草
java jvm参数
-Xms:初始堆大小,默认为物理内存的1/64(<1GB);默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制
-Xmx:最大堆大小,默认(MaxHeapFreeRatio参数可以调整)空余堆内存大于70%时,JVM会减少堆直到 -Xms的最小限制
-Xmn:新生代的内存空间大小,注意:此处的大小是(eden+ 2
我的spring学习笔记9-Spring使用工厂方法实例化Bean的注意点
aijuans
Spring 3
方法一:
<bean id="musicBox" class="onlyfun.caterpillar.factory.MusicBoxFactory"
factory-method="createMusicBoxStatic"></bean>
方法二:
mysql查询性能优化之二
annan211
UNION mysql 查询优化 索引优化
1 union的限制
有时mysql无法将限制条件从外层下推到内层,这使得原本能够限制部分返回结果的条件无法应用到内层
查询的优化上。
如果希望union的各个子句能够根据limit只取部分结果集,或者希望能够先排好序在
合并结果集的话,就需要在union的各个子句中分别使用这些子句。
例如 想将两个子查询结果联合起来,然后再取前20条记录,那么mys
数据的备份与恢复
百合不是茶
oracle sql 数据恢复 数据备份
数据的备份与恢复的方式有: 表,方案 ,数据库;
数据的备份:
导出到的常见命令;
参数 说明
USERID 确定执行导出实用程序的用户名和口令
BUFFER 确定导出数据时所使用的缓冲区大小,其大小用字节表示
FILE 指定导出的二进制文
线程组
bijian1013
java 多线程 thread java多线程 线程组
有些程序包含了相当数量的线程。这时,如果按照线程的功能将他们分成不同的类别将很有用。
线程组可以用来同时对一组线程进行操作。
创建线程组:ThreadGroup g = new ThreadGroup(groupName);
&nbs
top命令找到占用CPU最高的java线程
bijian1013
java linux top
上次分析系统中占用CPU高的问题,得到一些使用Java自身调试工具的经验,与大家分享。 (1)使用top命令找出占用cpu最高的JAVA进程PID:28174 (2)如下命令找出占用cpu最高的线程
top -Hp 28174 -d 1 -n 1
32694 root 20 0 3249m 2.0g 11m S 2 6.4 3:31.12 java
【持久化框架MyBatis3四】MyBatis3一对一关联查询
bit1129
Mybatis3
当两个实体具有1对1的对应关系时,可以使用One-To-One的进行映射关联查询
One-To-One示例数据
以学生表Student和地址信息表为例,每个学生都有都有1个唯一的地址(现实中,这种对应关系是不合适的,因为人和地址是多对一的关系),这里只是演示目的
学生表
CREATE TABLE STUDENTS
(
C/C++图片或文件的读写
bitcarter
写图片
先看代码:
/*strTmpResult是文件或图片字符串
* filePath文件需要写入的地址或路径
*/
int writeFile(std::string &strTmpResult,std::string &filePath)
{
int i,len = strTmpResult.length();
unsigned cha
nginx自定义指定加载配置
ronin47
进入 /usr/local/nginx/conf/include 目录,创建 nginx.node.conf 文件,在里面输入如下代码:
upstream nodejs {
server 127.0.0.1:3000;
#server 127.0.0.1:3001;
keepalive 64;
}
server {
liste
java-71-数值的整数次方.实现函数double Power(double base, int exponent),求base的exponent次方
bylijinnan
double
public class Power {
/**
*Q71-数值的整数次方
*实现函数double Power(double base, int exponent),求base的exponent次方。不需要考虑溢出。
*/
private static boolean InvalidInput=false;
public static void main(
Android四大组件的理解
Cb123456
android 四大组件的理解
分享一下,今天在Android开发文档-开发者指南中看到的:
App components are the essential building blocks of an Android
[宇宙与计算]涡旋场计算与拓扑分析
comsci
计算
怎么阐述我这个理论呢? 。。。。。。。。。
首先: 宇宙是一个非线性的拓扑结构与涡旋轨道时空的统一体。。。。
我们要在宇宙中寻找到一个适合人类居住的行星,时间非常重要,早一个刻度和晚一个刻度,这颗行星的
同一个Tomcat不同Web应用之间共享会话Session
cwqcwqmax9
session
实现两个WEB之间通过session 共享数据
查看tomcat 关于 HTTP Connector 中有个emptySessionPath 其解释如下:
If set to true, all paths for session cookies will be set to /. This can be useful for portlet specification impleme
springmvc Spring3 MVC,ajax,乱码
dashuaifu
spring jquery mvc Ajax
springmvc Spring3 MVC @ResponseBody返回,jquery ajax调用中文乱码问题解决
Spring3.0 MVC @ResponseBody 的作用是把返回值直接写到HTTP response body里。具体实现AnnotationMethodHandlerAdapter类handleResponseBody方法,具体实
搭建WAMP环境
dcj3sjt126com
wamp
这里先解释一下WAMP是什么意思。W:windows,A:Apache,M:MYSQL,P:PHP。也就是说本文说明的是在windows系统下搭建以apache做服务器、MYSQL为数据库的PHP开发环境。
工欲善其事,必须先利其器。因为笔者的系统是WinXP,所以下文指的系统均为此系统。笔者所使用的Apache版本为apache_2.2.11-
yii2 使用raw http request
dcj3sjt126com
http
Parses a raw HTTP request using yii\helpers\Json::decode()
To enable parsing for JSON requests you can configure yii\web\Request::$parsers using this class:
'request' =&g
Quartz-1.8.6 理论部分
eksliang
quartz
转载请出自出处:http://eksliang.iteye.com/blog/2207691 一.概述
基于Quartz-1.8.6进行学习,因为Quartz2.0以后的API发生的非常大的变化,统一采用了build模式进行构建;
什么是quartz?
答:简单的说他是一个开源的java作业调度框架,为在 Java 应用程序中进行作业调度提供了简单却强大的机制。并且还能和Sp
什么是POJO?
gupeng_ie
java POJO 框架 Hibernate
POJO--Plain Old Java Objects(简单的java对象)
POJO是一个简单的、正规Java对象,它不包含业务逻辑处理或持久化逻辑等,也不是JavaBean、EntityBean等,不具有任何特殊角色和不继承或不实现任何其它Java框架的类或接口。
POJO对象有时也被称为Data对象,大量应用于表现现实中的对象。如果项目中使用了Hiber
jQuery网站顶部定时折叠广告
ini
JavaScript html jquery Web css
效果体验:http://hovertree.com/texiao/jquery/4.htmHTML文件代码:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>网页顶部定时收起广告jQuery特效 - HoverTree<
Spring boot内嵌的tomcat启动失败
kane_xie
spring boot
根据这篇guide创建了一个简单的spring boot应用,能运行且成功的访问。但移植到现有项目(基于hbase)中的时候,却报出以下错误:
SEVERE: A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.Lif
leetcode: sort list
michelle_0916
Algorithm linked list sort
Sort a linked list in O(n log n) time using constant space complexity.
====analysis=======
mergeSort for singly-linked list
====code======= /**
* Definition for sin
nginx的安装与配置,中途遇到问题的解决
qifeifei
nginx
我使用的是ubuntu13.04系统,在安装nginx的时候遇到如下几个问题,然后找思路解决的,nginx 的下载与安装
wget http://nginx.org/download/nginx-1.0.11.tar.gz
tar zxvf nginx-1.0.11.tar.gz
./configure
make
make install
安装的时候出现
用枚举来处理java自定义异常
tcrct
java enum exception
在系统开发过程中,总少不免要自己处理一些异常信息,然后将异常信息变成友好的提示返回到客户端的这样一个过程,之前都是new一个自定义的异常,当然这个所谓的自定义异常也是继承RuntimeException的,但这样往往会造成异常信息说明不一致的情况,所以就想到了用枚举来解决的办法。
1,先创建一个接口,里面有两个方法,一个是getCode, 一个是getMessage
public
erlang supervisor分析
wudixiaotie
erlang
当我们给supervisor指定需要创建的子进程的时候,会指定M,F,A,如果是simple_one_for_one的策略的话,启动子进程的方式是supervisor:start_child(SupName, OtherArgs),这种方式可以根据调用者的需求传不同的参数给需要启动的子进程的方法。和最初的参数合并成一个数组,A ++ OtherArgs。那么这个时候就有个问题了,既然参数不一致,那