想知道我是否可以自己制造es的底层数据文件(也就是node),可以让es的来直接识别读取我的数据文件,我也可以直接读取es的数据文件,和这个问题相关的有这几个疑问。
1es是通过什么样的规则算法将数据写为数据文件的。
2是否可以自己解析es的数据文件。
3es底层使用的是luncence,他在luncence的基础之上多了哪些操作?和luncence的底层差别大吗?
4这个想法是否有可行性,想要一些依据。
1es是通过什么样的规则算法将数据写为数据文件的。
2是否可以自己解析es的数据文件。
3es底层使用的是luncence,他在luncence的基础之上多了哪些操作?和luncence的底层差别大吗?
4这个想法是否有可行性,想要一些依据。
1 个回复
Charele - Cisco4321
赞同来自:
如果把ES关了,你可以用Lucene的IndexWriter/IndexReader来操作这个目录。
如果不关,会报错
Exception in thread "main" org.apache.lucene.store.LockObtainFailedException: Lock held by another program: C:\apps\es0\data\nodes\0\indices\-IjvVZNHS2a8C_ts1JCMgQ\0\index\write.lock
at org.apache.lucene.store.NativeFSLockFactory.obtainFSLock(NativeFSLockFactory.java:130)
at org.apache.lucene.store.FSLockFactory.obtainLock(FSLockFactory.java:41)
at org.apache.lucene.store.BaseDirectory.obtainLock(BaseDirectory.java:45)
你说的“自己制造es的底层数据”,不可能实现。