RocksDB and SMTs Announcement

in #steemit5 years ago (edited)

Dear Steemians,

We have estimated and prepared the detailed versions of our short- and long-term roadmap for RocksDB and SMTs with their target completion dates. To make everything come in shorter bursts and as the community has requested, we’ve broken out SMTs into SMT-lite, which is paired down to include the core functions of issuance and transfer of tokens. Additional roadmapped SMTs features are also listed.

Below is the spreadsheet outlining the different tasks for RocksDB and SMT-lite, as well as their ETA, points and status.

Screenshot 2018-12-05 at 4.38.04 PM.png

For RocksDB, our plan is to write an adapter that uses the BMIC (Boost Multi-Index Container) interface and replaces the behavior with a RocksDB backend. This will allow steemd to support both the existing BMIC/Chainbase implementation and RocksDB as a compile option without needing to change the consensus logic of steemd. Additionally, by creating the adapter to use the same interface as BMIC, we can leverage the existing BMIC unit tests to ensure that we replicate the expected behavior of BMIC, but backed by RocksDB. This will result in a 95%+ memory consumption reduction by moving our storage from memory to disk. Ultimately our target is to have Economic nodes (Full Nodes by a Bitcoin standard) running on commodity hardware with 4GB of RAM and a standard SSD.

The scaled-down SMTs scope includes these features: claiming names, tokens, issuance of tokens to one account, transfers between accounts, immutability (meaning that once a token is launched none of its original parameters can be altered) and a testnet.

Next iterations of SMTs will add back in these original functions:

Screenshot 2018-12-05 at 4.25.20 PM.png

Again, I will discuss these topics and your questions tomorrow during a livestream at 11am CST. See my post from Monday regarding submitting questions.

Best regards,


man....why don't you get along with Dan again and you guys could merge EOS with Steem......otherwise he creates steem 2.0 and we all get fucked up......doesn't matter who is the boss, better to be number 2 with Dan in charge and become a billionaire than be the number 1 and go room for small coins....EOS and Steem must merge......he already proved he was right when he created a new coin from scratch and it got much higher market capital than steem....sell the control of Steemit Inc to assure yourself finantially and assure the success of Steem. Telling this not to put you down in any way but to genuinely help you.....All the best

You got a 89.48% upvote from @brupvoter courtesy of @christianchannel!

I agree with you my friend!!

Sorry who is this Dan everyone is talking about? And what platform is he creating?

He was the architect of steem, he created steem.

Dan Larimer. He is now (or maybe he's already left it, too?) behind the project EOS. Steemit pretty much fell apart after he left last year. Though, as many of us hopefully know, correlation isn't nec. causation... but in this case, there seems to be a strong relationship nonetheless.., imo.

Upvoted for the commitment to getting a simple token delivered; thank you. The greater concern here is probably the period of time proposed for the RocksDB work, since technical people seem to doubt it can be done that quickly. So I wonder at the actual price difference between what you are doing and what Blocktrades proposed to handle. But again, we need tokens and thank you for that commitment.

Commitment? The only thing delivered is a little beer mat with some writings on it.

30 days, what are the deliverables? Are you serious? We should be happy in 30 days he finished his powerdown, how many mind-fucks can you undergo?

"Ultimately our target is to have Economic nodes (Full Nodes by a Bitcoin standard) running on commodity hardware with 4GB of RAM and a standard SSD."
This is fantastic news and will benefit the Steem ecosystem enormously.
If Crypto prices had stayed high this would never have been a priority.
This is a perfect example of how going through tough times creates a much stronger & better result than being on easy street.
Well done and good luck in getting these initiatives completeted.

As the saying goes


Hopefully the 3rd & 4th panel won't apply to us.

100% correct and nice graphic.

Posted using Partiko iOS

lol, you wished him good luck... you're evil.... :)

"Ultimately our target is to have Economic nodes (Full Nodes by a Bitcoin standard) running on commodity hardware with 4GB of RAM and a standard SSD"

You just got trolled, or better, scammed... how does that feel... fantastic news, or ? fake news?

This is absurd... that doesn't help the "ecosystem"...

It's far closer to repainting a house that's partially collapsed from termite damage and calling it a repair.

yes, agree more

Thanks for the update. If you make it possible to run a full node on a 4gb server I promise to throw in some ;)

This right here is why optimizing steem's core technology is so important

Server? Servers are in centralized datacenters. Shouldn't the end goal be the actual end users running nodes on their android phones? And on their gaming PC's. Bitcoin isn't mined only in datacenters. Steem nodes shouldn't witness blocks in only those locations either. That is a recipe for disaster.

Well I totally agree. The thing why I did say server is because I got a internet connection that is unreliable at the best and simply disfunctional at the worst of times.
If I would have something decent I would throw in additional pcs at my home.

A gaming PC can be a server and indeed a good one for blockchain applications with excellent single core speed. Servers don’t have to be I data centers. Once upon a time every business had them in their office.

Posted using Partiko iOS one runs any nodes on android phones bro sorry...
Just no.. LOL

"SERVERS?? SERVERS?? WHY arent we running steem on Potatoes and calculators?!?!

Why, I propose we Hand calculate the hash's and mail them my carrier pidgeon!

You have just described Holochain. You can thank me later ;PP

Thanks for the update!

It would be great if you and the dev team would consider adding native support for NFTs based on the SIP001 spec here, right after the work on basic tokens is complete:

Edit: please see my reply to smooth deeper in this thread for short overview

Hi @upheaver - I just wanted to say thank you for contributing to STEEM ecosystem, I think it's very impressive that you just voluntarily devote probably tons of your time to open this platform to new possibilities. !tip 100 hide

Thank you, highly appreciated

NFTs are accomplished in SMTs by issuing SMT-lite of 1(one) token and 0(zero) divisibility. What are the differences in the approaches? Thanks.

My proposal allows for storing of custom json metadata inside each individual token by 3 different parties: the token issuer, the current owner and the dapp interacting with the token.

The specification document contains a walk-through example

Thanks. I'm fairly sure we'll achieve the goals (e.g. Support Steem Monsters Card Issuance) supported by those reqs with SMT-lite. If I'm incorrect, let us know where.

Using SMTs for NFT functionality would be a hack - while it might cover the very basics, the native enhancements I proposed would provide new capabilities and in turn enable new kinds of businesses/ecosystems to emerge.

What is functionally different besides the name? If there are missing features, particularly small ones like json fields, now is the time to hash that out with the developers and get them incorporated.

It's explained better when reading the spec, in short there are a few things:

  • native apis for nfts (querying, issuing, burning)
  • separate storage inside each token for issuer's, owner's and dapp's data - they can write only to their own section.
  • a new mechanism for users to send NFT tokens to third party dapps (similar to a smart contract)
  • for those apps to consume/process token interactions asynchronously using queueing

This enables powerful new ways to build apps.

For example you could send your steemmonster cards to a real time strategy game dapp built by a 3rd party, play with them,earn custom points, and then convert those points to native experience points by steemmonsters - all data logged nativelly inside the token

Yes I understand your spec does things in a different way. Since you worked on your own to design something, and there are always different ways to get to the same goal line, it will clearly be different in terms of details such as the names of the APIs.

What I'm trying to drill down to are the core functional differences that can bridge the gap because I think there is near zero probability that the Steemit devs are going to implement your spec, but actually decent probability they might be convinced to make some small functional changes to enable the same or similar use cases.

For example, having data storage areas seems like something might be possible to go into even simple SMTs. If it goes in, many of the uses cases you have in mind will be enabled, if not using the same APIs that you specified, etc. If not then those use cases won't be able to use SMTs (or certainly not as easily)

Thank you for your explanation here. I didn't quite get the benefit when I read your post and glanced over the documentation.

Good job @ned . I really like it, how fast you react and how you start communicate with the community!

Ned I love the work you are doing and especially that you are listening to the community. That allows everyone to advance.

Ultimately our target is to have Economic nodes (Full Nodes by a Bitcoin standard) running on commodity hardware with 4GB of RAM and a standard SSD.

I am SO excited by this. Increased decentralisation!

Rise of the many nodes! Can't wait. Any word on CPU requirements / core count targets? I'm not about to run out and buy hardware today, but it would stop me from selling some other hardware I have lying around. :)

You can run the smoke blockchain on 4gb Ram.. :) Perhaps steemit inc takes note and removes the cancer that is SBD.

This is huge news for our #OneLoveDTube community, a few of our RPC node dependant projects are having a hard time currently and with those resource requirements we could run our own node off the servers we have already 💪

Posted using Partiko iOS

Good job @ned . I really appreciate how hard the changes must have been this close to Christmas, but I understand critical situations call for serious solutions. I am very happy to see how fast things are moving the and increased focus on deliverables, communication and the discourse in the comments.

When you hang around people all day that talk like this you start to think all this jargon is normal. There were so many acronyms in this post I thought you were speaking another language. You need like a glossary for your posts perhaps. haha

But that said i'm happy to hear SMT is coming along we'll see to it that we can support SMT projects on @steempeak

lol - I just read many things I do not understand once again. My accounting degree, MBA and CPA are useless here.

This place never fails to amuse and I hope it survives. I just pray all the big guys get it together. I will keep posting weight loss work and helping tiny fish as long as I can.

Someone walks in and wonders why the heck you're helping "tiny fish" hahaha

Lol .. you are funny.

Posted using Partiko iOS

Why thank you! I amuse myself :)

The amused survivor :)

The way I look at it this that SteemInc may well speak their own language, but at least now they are attempting to use it to communicate to others outside of SteemInc!

Is someone outside of steem gonna understand all those very very steem acronyms?

Exactly my thoughts @jarvie - wouldn't a glossary under the main dropdown menu on everyone's account page a be a good idea? Or is there perhaps already one somewhere amongst the FAQs items?

At least we have @upheaver to explain it to us!

He's much easier to understand. haha

I have never been more excited about Steemit then I am right now. Thank you Ned for your decision making in the past few weeks.

Coin Marketplace

STEEM 0.31
TRX 0.14
JST 0.041
BTC 67169.51
ETH 3558.75
USDT 1.00
SBD 4.92