SteemWorld ~ Weekly Support ~ #13

in #steemworld6 years ago (edited)

[EN]


This post is intended to cover the server costs for SteemWorld.org and to enable me to continue my development in the future.

In case you missed the first part:
SteemWorld ~ Weekly Support ~ #1

[DE]


Dieser Post ist dafür gedacht die Serverkosten für SteemWorld.org zu decken und mir in Zukunft weitere Entwicklungen zu ermöglichen.

Falls du den ersten Teil verpasst haben solltest:
SteemWorld ~ Weekly Support ~ #1

We are back


Wow, the blockchain must have grown more than I expected. In my last post I mentioned that re-indexing all blocks would take a few hours, in fact it took my server more than 24 hours to go through all the mess and rebuild the databases. For me as a developer it is clear that we needed something like the resource credits to keep the chain running smoothly.

Since I would have been running out of space in the coming months, I needed to optimize a few more things regarding some heavy database indices. My indexed DBs are now half the size they have been before and there seem to be no measureable performance differences on SteemWorld. Multi-column indices are super fast and I would not go without them, but SSD space has it's limits.

With the additional available disk space I may be able to re-index in a backup path from now on (as originally planned), so that SteemWorld will no longer be affected in times of a full chain replay.

Updates


Key Generator

There is a new tool for generating account keys to be found in Tools:

When typing in an account name and master password, the resulting private and public keys are being calculated and displayed in the table below the form:

Of course, the displayed keys are not the real ones for my account ;)

As I anyway need a random master key generator for the coming Account Creator, I added a button 'Generate Random' in here as well. The keys are being generated in the same way as in the registration process on Steemit.

Claiming Accounts

It is now possible to claim accounts in the Account Creator tool. The amount of pending claimed accounts is being shown at the top:

Creating the claimed accounts will be available soon. Of course, if you have enough SP (currently ~ 5000), you can already claim accounts for later use. Keep in mind that this may take a huge part of your available RCs away.

In the making


  • Account Creator
  • Web service for loading the data in a more efficient way
  • Different views in the Posts Overview
  • Improved Coming Curation Rewards overview
  • RC costs calculation

Links


EN  |  What is SteemWorld?
-> Welcome to SteemWorld.org!

DE  |  Was ist SteemWorld?
-> Willkommen auf SteemWorld.org!

Thank you for supporting my work!


Positive thoughts create a positive world. It all begins with connecting our thoughts with emotions. What we focus on is what becomes powerful. We are the creators of our world.

Much love,

Sort:  

Great work 👍

Supported,

Are you really use sql-lite for such a heavy load?

I have worked with many different database systems in my life and as long as only one process needs to write at the same time I will always prefer to use SQLite. Read operations are super fast on SSD, because of the all-in-one-file architecture. No database service is required, therefore there is no interface in between through which the data needs to go.

SQLite is an amazing library that gets embedded inside the application that makes use of. As a self-contained, file-based database, SQLite offers an amazing set of tools to handle all sorts of data with much less constraint and ease compared to hosted, process based (server) relational databases.

When an application uses SQLite, the integration works with functional and direct calls made to a file holding the data (i.e. SQLite database) instead of communicating through an interface of sorts (i.e. ports, sockets). This makes SQLite extremely fast and efficient, and also powerful thanks to the library's underlying technology.

More details can be found in the original article:
SQLite vs MySQL vs PostgreSQL: A Comparison Of Relational Database Management Systems

Well, maybe I used to work with more complex data and data-flows but it seems to me that sooner or later to run into database limitations.

For example 1 simultaneous write is quite a severe catch. Also highload app (imagine you need to scale 10 times with the growth of steemit users) demands data separation into hot and cold sets. Indexes and recent partitions on SSD and old data HDD plus you can decompose most of tables into cold-hot rows. So you really need to write new sets into db and manage/process another chunks simultaneously.

And lets not forget completely about replication/failover... It would be sad if you had lost your data and now end up with 3 days downtime in order to re-process all blockchain data in single thread.

I know full-sale DB engine is an investment of resources but calculated and with strong roi prospects.

Just my 2 satoshis.
Cheers!

Well, maybe I used to work with more complex data ...

Yes, that's exactly the point. I worked for 8 years for large companies in the logistics sector. We mainly used enterprise servers by Oracle, Sybase and Informix, which of course work on a higher level than SQLite, because they are highly configurable and come with huge performance and stability benefits for simultaneous write operations. For such case I would not work with SQLite and I think it would not even be possible.

But as long as I can run SteemWorld with my current setup, I will stick to SQLite. There is only one process that needs to write to the databases and I don't think that this will change in the near future. Re-indexing the data can be executed in a separate backup path without having any server downtime. Maybe at some point in future I will tell you that I needed to upgrade to a more complex engine, who knows :) For now it's working great.

Love steemworld. Are there any plans to intergrate it with steem keychain rather than use the keys directly?

I'm still searching for a secure cross-platform solution that I can implement. Private Keys (if stored) must be encrypted and only readable by the clients, maybe with one or more master passwords for different 'key groups'.

SteemConnect doesn't store the keys but it uses delegated key privileges, which leads to a few Apps having active key privileges for thousands of accounts.

Keychain might really be a better solution but I haven't looked into it in detail yet. Will do soon ;)

Thanks for responding .

Thank you, @SteemChiller, for your service to the Steemit community.

Your tool has completely offset all the other available sites. 😂

Thanks for such a good work! 😊

I'm so happy to (automatically) place my (little) 100% upvote for this so well growing STEEM tool: thank you so much for your continuous effort, dear @steemchiller!

A huge hug from @amico! ^!^/

Not using the Discord like many, this has been my equivalent of the Ginabot. I use this every day. it is an invaluable tool.

@PracticalThought ...Wholeheartedly AGREE... @SteemCHILLER has not only created something highly functional with Incredible Utility, that is used by so many, everyday,,,

...AND HE continuously improves/refines/enhances the SCOPE of SteemWORLD that others here on Steemit, imho, should take notes... This is how to DO It !!....constant, ongoing improvements.

Cheers to @SteemCHILLER, everyone here commenting AND everyone that uses SteemWORLD !!

Resteemed and upvoted. Hope it helps.

Thanks for the updates. Resteemed :-)

Thank you ever so much for all your tremendous effort!
I still have not make the must of the information you have provided us! I think you are spoiling us with such detailed information.

Your world is really in another dimension of virtual reality! I am a mere novice trying to catch up with the blockchain vocabularies.

Cheers.

I haven't really grasped how much info is here either!

Friend, I can tell you again that you will always have my vote, because your program is very, very complete for the needs of many and how friendly it is to show the information, that my 10-year-old daughter @victorialanz understands and uses it.

Greetings from Venezuela, a country where we are fighting to be free, is not easy, but I have to believe that one day we will be free of these communists.

This is really a great update you have really added i must say. I have been using steemworld for a long time and all i can say is that it is wonderful and helpful. Steemworld.org is great and helpful for many steemit user and i must say thank you for creating steemworld.org